diff options
Diffstat (limited to 'packages/ncurses/6.5/ncurses-6.5-20250201.patch')
-rw-r--r-- | packages/ncurses/6.5/ncurses-6.5-20250201.patch | 9780 |
1 files changed, 9780 insertions, 0 deletions
diff --git a/packages/ncurses/6.5/ncurses-6.5-20250201.patch b/packages/ncurses/6.5/ncurses-6.5-20250201.patch new file mode 100644 index 00000000..fae66507 --- /dev/null +++ b/packages/ncurses/6.5/ncurses-6.5-20250201.patch @@ -0,0 +1,9780 @@ +# ncurses 6.5 - patch 20250201 - Thomas E. Dickey +# +# ------------------------------------------------------------------------------ +# +# Ncurses 6.5 is at +# https://invisible-island.net/archives/ncurses/ +# https://invisible-mirror.net/archives/ncurses/ +# https://ftp.gnu.org/gnu/ncurses/ +# +# Patches for ncurses 6.5 can be found at +# https://invisible-island.net/archives/ncurses/6.5 +# https://invisible-mirror.net/archives/ncurses/6.5 +# +# ------------------------------------------------------------------------------ +# https://invisible-island.net/archives/ncurses/6.5/ncurses-6.5-20250201.patch.gz +# patch by Thomas E. Dickey <dickey@invisible-island.net> +# created Sun Feb 2 01:33:22 UTC 2025 +# ------------------------------------------------------------------------------ +# NEWS | 11 +# VERSION | 2 +# aclocal.m4 | 14 +# c++/edit_cfg.sh | 6 +# c++/etip.h.in | 14 +# configure | 702 ++++------ +# configure.in | 6 +# dist.mk | 4 +# doc/html/ada/funcs/T.htm | 2 +# doc/html/ada/terminal_interface-curses-forms__adb.htm | 8 +# doc/html/ada/terminal_interface-curses-menus__adb.htm | 8 +# doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm | 4 +# doc/html/man/curs_add_wch.3x.html | 314 ++-- +# doc/html/man/curs_add_wchstr.3x.html | 20 +# doc/html/man/curs_addch.3x.html | 122 + +# doc/html/man/curs_addchstr.3x.html | 10 +# doc/html/man/curs_addstr.3x.html | 12 +# doc/html/man/curs_addwstr.3x.html | 19 +# doc/html/man/curs_attr.3x.html | 46 +# doc/html/man/curs_beep.3x.html | 12 +# doc/html/man/curs_bkgrnd.3x.html | 10 +# doc/html/man/curs_border.3x.html | 84 - +# doc/html/man/curs_border_set.3x.html | 81 - +# doc/html/man/curs_deleteln.3x.html | 12 +# doc/html/man/curs_get_wch.3x.html | 44 +# doc/html/man/curs_get_wstr.3x.html | 21 +# doc/html/man/curs_getcchar.3x.html | 13 +# doc/html/man/curs_getch.3x.html | 103 - +# doc/html/man/curs_getstr.3x.html | 22 +# doc/html/man/curs_getyx.3x.html | 10 +# doc/html/man/curs_in_wch.3x.html | 16 +# doc/html/man/curs_in_wchstr.3x.html | 20 +# doc/html/man/curs_initscr.3x.html | 186 +- +# doc/html/man/curs_inopts.3x.html | 138 + +# doc/html/man/curs_ins_wch.3x.html | 25 +# doc/html/man/curs_ins_wstr.3x.html | 10 +# doc/html/man/curs_insch.3x.html | 19 +# doc/html/man/curs_insstr.3x.html | 14 +# doc/html/man/curs_instr.3x.html | 13 +# doc/html/man/curs_move.3x.html | 10 +# doc/html/man/curs_outopts.3x.html | 10 +# doc/html/man/curs_scroll.3x.html | 50 +# doc/html/man/curs_sp_funcs.3x.html | 292 ++-- +# doc/html/man/curs_termattrs.3x.html | 10 +# doc/html/man/curs_termcap.3x.html | 8 +# doc/html/man/curs_util.3x.html | 18 +# doc/html/man/curs_window.3x.html | 8 +# doc/html/man/ncurses.3x.html | 2 +# doc/html/man/terminfo.5.html | 2 +# man/curs_add_wch.3x | 358 +++-- +# man/curs_add_wchstr.3x | 9 +# man/curs_addch.3x | 180 +- +# man/curs_addchstr.3x | 9 +# man/curs_addstr.3x | 5 +# man/curs_addwstr.3x | 7 +# man/curs_attr.3x | 23 +# man/curs_beep.3x | 11 +# man/curs_bkgrnd.3x | 6 +# man/curs_border.3x | 212 ++- +# man/curs_border_set.3x | 76 - +# man/curs_deleteln.3x | 11 +# man/curs_get_wch.3x | 17 +# man/curs_get_wstr.3x | 28 +# man/curs_getcchar.3x | 9 +# man/curs_getch.3x | 33 +# man/curs_getstr.3x | 15 +# man/curs_getyx.3x | 5 +# man/curs_in_wch.3x | 7 +# man/curs_in_wchstr.3x | 7 +# man/curs_initscr.3x | 312 +++- +# man/curs_inopts.3x | 51 +# man/curs_ins_wch.3x | 12 +# man/curs_ins_wstr.3x | 6 +# man/curs_insch.3x | 9 +# man/curs_insstr.3x | 11 +# man/curs_instr.3x | 7 +# man/curs_move.3x | 8 +# man/curs_outopts.3x | 11 +# man/curs_scroll.3x | 76 - +# man/curs_sp_funcs.3x | 288 ++-- +# man/curs_termattrs.3x | 16 +# man/curs_termcap.3x | 7 +# man/curs_util.3x | 17 +# man/curs_window.3x | 18 +# man/man_db.renames.in | 3 +# man/manhtml.aliases | 3 +# ncurses/base/MKlib_gen.sh | 24 +# ncurses/tty/lib_mvcur.c | 8 +# package/debian-mingw/changelog | 4 +# package/debian-mingw64/changelog | 4 +# package/debian/changelog | 4 +# package/mingw-ncurses.nsi | 4 +# package/mingw-ncurses.spec | 2 +# package/ncurses.spec | 2 +# package/ncursest.spec | 2 +# 95 files changed, 2593 insertions(+), 1931 deletions(-) +# ------------------------------------------------------------------------------ +Index: NEWS +Prereq: 1.4236 +--- ncurses-6.5-20250125+/NEWS 2025-01-25 21:30:09.000000000 +0000 ++++ ncurses-6.5-20250201/NEWS 2025-02-02 00:30:12.000000000 +0000 +@@ -26,7 +26,7 @@ + -- sale, use or other dealings in this Software without prior written -- + -- authorization. -- + ------------------------------------------------------------------------------- +--- $Id: NEWS,v 1.4236 2025/01/25 21:30:09 tom Exp $ ++-- $Id: NEWS,v 1.4239 2025/02/02 00:30:12 tom Exp $ + ------------------------------------------------------------------------------- + + This is a log of changes that ncurses has gone through since Zeyd started +@@ -46,6 +46,15 @@ + Changes through 1.9.9e did not credit all contributions; + it is not possible to add this information. + ++20250201 ++ + add <new> to the possible headers declaring the C++ std::bad_alloc ++ (report by Carl Hansen). ++ + modify check for stdbool.h to be more conservative in case the ++ headers are used with a compiler other than that which was used to ++ configure (Redhat #2342514). ++ + improve MKlib_gen.sh handling of "bool" type, for building link_test ++ + improve formatting/style of manpages (patches by Branden Robinson). ++ + 20250125 + + improve error-handling in c++ binding (report by Mingjie Shen). + + strict compiler-warning fixes for upcoming gcc15 +Index: VERSION +--- ncurses-6.5-20250125+/VERSION 2025-01-25 10:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/VERSION 2025-02-01 10:35:49.000000000 +0000 +@@ -1 +1 @@ +-5:0:10 6.5 20250125 ++5:0:10 6.5 20250201 +Index: aclocal.m4 +Prereq: 1.1100 +--- ncurses-6.5-20250125+/aclocal.m4 2025-01-15 22:07:11.000000000 +0000 ++++ ncurses-6.5-20250201/aclocal.m4 2025-02-02 00:10:44.000000000 +0000 +@@ -29,7 +29,7 @@ + dnl + dnl Author: Thomas E. Dickey 1995-on + dnl +-dnl $Id: aclocal.m4,v 1.1100 2025/01/15 22:07:11 tom Exp $ ++dnl $Id: aclocal.m4,v 1.1101 2025/02/02 00:10:44 tom Exp $ + dnl Macros used in NCURSES auto-configuration script. + dnl + dnl These macros are maintained separately from NCURSES. The copyright on +@@ -600,7 +600,7 @@ + dnl --------------------------------------------------------------------------- + dnl CF_BOOL_DECL version: 9 updated: 2023/12/03 09:21:34 + dnl ------------ +-dnl Test if 'bool' is a builtin type in the configured C++ compiler. Some ++dnl Test if 'bool' is a builtin type in the configured C/C++ compiler. Some + dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc + dnl 2.6.3 does, in anticipation of the ANSI C++ standard. + dnl +@@ -613,14 +613,13 @@ + AC_MSG_CHECKING(if we should include stdbool.h) + + AC_CACHE_VAL(cf_cv_header_stdbool_h,[ +- AC_TRY_COMPILE([],[bool foo = false; (void)foo], +- [cf_cv_header_stdbool_h=0], +- [AC_TRY_COMPILE([ ++ AC_TRY_COMPILE([ + #ifndef __BEOS__ + #include <stdbool.h> + #endif + ],[bool foo = false; (void)foo], +- [cf_cv_header_stdbool_h=1], ++ [cf_cv_header_stdbool_h=1], ++ [AC_TRY_COMPILE([],[bool foo = false; (void)foo], + [cf_cv_header_stdbool_h=0])])]) + + if test "$cf_cv_header_stdbool_h" = 1 +@@ -636,8 +635,7 @@ + #include <sys/types.h> + ],[bool x = false; (void)x], + [ifelse($1,,cf_cv_builtin_bool,[$1])=1], +- [ifelse($1,,cf_cv_builtin_bool,[$1])=0]) +- ]) ++ [ifelse($1,,cf_cv_builtin_bool,[$1])=0])]) + + if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1 + then AC_MSG_RESULT(yes) +Index: c++/edit_cfg.sh +Prereq: 1.19 +--- ncurses-6.5-20250125+/c++/edit_cfg.sh 2022-07-16 18:00:59.000000000 +0000 ++++ ncurses-6.5-20250201/c++/edit_cfg.sh 2025-02-02 00:38:39.000000000 +0000 +@@ -1,7 +1,7 @@ + #!/bin/sh +-# $Id: edit_cfg.sh,v 1.19 2022/07/16 18:00:59 tom Exp $ ++# $Id: edit_cfg.sh,v 1.20 2025/02/02 00:38:39 tom Exp $ + ############################################################################## +-# Copyright 2020,2022 Thomas E. Dickey # ++# Copyright 2020-2022,2025 Thomas E. Dickey # + # Copyright 1998-2007,2008 Free Software Foundation, Inc. # + # # + # Permission is hereby granted, free of charge, to any person obtaining a # +@@ -46,7 +46,9 @@ + HAVE_BUILTIN_H \ + HAVE_GPP_BUILTIN_H \ + HAVE_GXX_BUILTIN_H \ ++ HAVE_EXCEPTION \ + HAVE_IOSTREAM \ ++ HAVE_NEW \ + HAVE_TYPEINFO \ + HAVE_VALUES_H \ + IOSTREAM_NAMESPACE +Index: c++/etip.h.in +Prereq: 1.53 +--- ncurses-6.5-20250125+/c++/etip.h.in 2025-01-25 22:19:42.000000000 +0000 ++++ ncurses-6.5-20250201/c++/etip.h.in 2025-02-02 00:20:44.000000000 +0000 +@@ -32,7 +32,7 @@ + * Author: Juergen Pfeifer, 1997 * + ****************************************************************************/ + +-// $Id: etip.h.in,v 1.53 2025/01/25 22:19:42 tom Exp $ ++// $Id: etip.h.in,v 1.54 2025/02/02 00:20:44 tom Exp $ + + #ifndef NCURSES_ETIP_H_incl + #define NCURSES_ETIP_H_incl 1 +@@ -42,6 +42,10 @@ + #define HAVE_BUILTIN_H 0 + #endif + ++#ifndef HAVE_EXCEPTION ++#define HAVE_EXCEPTION 0 ++#endif ++ + #ifndef HAVE_GXX_BUILTIN_H + #define HAVE_GXX_BUILTIN_H 0 + #endif +@@ -54,6 +58,10 @@ + #define HAVE_IOSTREAM 0 + #endif + ++#ifndef HAVE_NEW ++#define HAVE_NEW 0 ++#endif ++ + #ifndef HAVE_TYPEINFO + #define HAVE_TYPEINFO 0 + #endif +@@ -116,8 +124,10 @@ + # endif + # undef exception + # endif +-#elif defined __CLANG ++#elif HAVE_EXCEPTION + # include <exception> ++#elif HAVE_NEW ++# include <new> + #elif defined (__SUNPRO_CC) + # include <generic.h> + #endif +Index: configure +--- ncurses-6.5-20250125+/configure 2025-01-18 11:26:09.000000000 +0000 ++++ ncurses-6.5-20250201/configure 2025-02-02 00:38:02.000000000 +0000 +@@ -1,5 +1,5 @@ + #! /bin/sh +-# From configure.in Revision: 1.790 . ++# From configure.in Revision: 1.791 . + # Guess values for system-dependent variables and create Makefiles. + # Generated by Autoconf 2.52.20240618. + # +@@ -25830,6 +25830,10 @@ + #line 25830 "configure" + #include "confdefs.h" + ++#ifndef __BEOS__ ++#include <stdbool.h> ++#endif ++ + int + main (void) + { +@@ -25839,29 +25843,25 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:25842: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:25846: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:25845: \$? = $ac_status" >&5 ++ echo "$as_me:25849: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:25848: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:25852: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:25851: \$? = $ac_status" >&5 ++ echo "$as_me:25855: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then +- cf_cv_header_stdbool_h=0 ++ cf_cv_header_stdbool_h=1 + else + echo "$as_me: failed program was:" >&5 + cat "conftest.$ac_ext" >&5 + cat >"conftest.$ac_ext" <<_ACEOF +-#line 25858 "configure" ++#line 25862 "configure" + #include "confdefs.h" + +-#ifndef __BEOS__ +-#include <stdbool.h> +-#endif +- + int + main (void) + { +@@ -25882,11 +25882,10 @@ + ac_status=$? + echo "$as_me:25883: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then +- cf_cv_header_stdbool_h=1 ++ cf_cv_header_stdbool_h=0 + else + echo "$as_me: failed program was:" >&5 + cat "conftest.$ac_ext" >&5 +-cf_cv_header_stdbool_h=0 + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + fi +@@ -25894,13 +25893,13 @@ + fi + + if test "$cf_cv_header_stdbool_h" = 1 +-then echo "$as_me:25897: result: yes" >&5 ++then echo "$as_me:25896: result: yes" >&5 + echo "${ECHO_T}yes" >&6 +-else echo "$as_me:25899: result: no" >&5 ++else echo "$as_me:25898: result: no" >&5 + echo "${ECHO_T}no" >&6 + fi + +-echo "$as_me:25903: checking for builtin bool type" >&5 ++echo "$as_me:25902: 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 +@@ -25908,7 +25907,7 @@ + else + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 25911 "configure" ++#line 25910 "configure" + #include "confdefs.h" + + #include <stdio.h> +@@ -25923,16 +25922,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:25926: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:25925: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:25929: \$? = $ac_status" >&5 ++ echo "$as_me:25928: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:25932: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:25931: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:25935: \$? = $ac_status" >&5 ++ echo "$as_me:25934: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_cc_bool_type=1 + else +@@ -25941,13 +25940,12 @@ + cf_cv_cc_bool_type=0 + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" +- + fi + + if test "$cf_cv_cc_bool_type" = 1 +-then echo "$as_me:25948: result: yes" >&5 ++then echo "$as_me:25946: result: yes" >&5 + echo "${ECHO_T}yes" >&6 +-else echo "$as_me:25950: result: no" >&5 ++else echo "$as_me:25948: result: no" >&5 + echo "${ECHO_T}no" >&6 + fi + +@@ -25964,10 +25962,10 @@ + + cf_save="$LIBS" + LIBS="$LIBS $CXXLIBS" +- echo "$as_me:25967: checking if we already have C++ library" >&5 ++ echo "$as_me:25965: checking if we already have C++ library" >&5 + echo $ECHO_N "checking if we already have C++ library... $ECHO_C" >&6 + cat >"conftest.$ac_ext" <<_ACEOF +-#line 25970 "configure" ++#line 25968 "configure" + #include "confdefs.h" + + #include <iostream> +@@ -25981,16 +25979,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" "conftest$ac_exeext" +-if { (eval echo "$as_me:25984: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:25982: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:25987: \$? = $ac_status" >&5 ++ echo "$as_me:25985: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest$ac_exeext"' +- { (eval echo "$as_me:25990: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:25988: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:25993: \$? = $ac_status" >&5 ++ echo "$as_me:25991: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_have_libstdcpp=yes + else +@@ -25999,7 +25997,7 @@ + cf_have_libstdcpp=no + fi + rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext" +- echo "$as_me:26002: result: $cf_have_libstdcpp" >&5 ++ echo "$as_me:26000: result: $cf_have_libstdcpp" >&5 + echo "${ECHO_T}$cf_have_libstdcpp" >&6 + LIBS="$cf_save" + +@@ -26018,7 +26016,7 @@ + ;; + esac + +- echo "$as_me:26021: checking for library $cf_stdcpp_libname" >&5 ++ echo "$as_me:26019: 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 +@@ -26044,7 +26042,7 @@ + LIBS="$cf_add_libs" + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26047 "configure" ++#line 26045 "configure" + #include "confdefs.h" + + #include <iostream> +@@ -26058,16 +26056,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" "conftest$ac_exeext" +-if { (eval echo "$as_me:26061: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:26059: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:26064: \$? = $ac_status" >&5 ++ echo "$as_me:26062: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest$ac_exeext"' +- { (eval echo "$as_me:26067: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26065: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26070: \$? = $ac_status" >&5 ++ echo "$as_me:26068: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_libstdcpp=yes + else +@@ -26079,7 +26077,7 @@ + LIBS="$cf_save" + + fi +-echo "$as_me:26082: result: $cf_cv_libstdcpp" >&5 ++echo "$as_me:26080: result: $cf_cv_libstdcpp" >&5 + echo "${ECHO_T}$cf_cv_libstdcpp" >&6 + test "$cf_cv_libstdcpp" = yes && { + cf_add_libs="$CXXLIBS" +@@ -26101,7 +26099,7 @@ + fi + fi + +- echo "$as_me:26104: checking whether $CXX understands -c and -o together" >&5 ++ echo "$as_me:26102: 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 +@@ -26116,15 +26114,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 $CXXFLAGS $CPPFLAGS -c conftest.$ac_ext -o conftest2.$ac_objext >&5' +-if { (eval echo "$as_me:26119: \"$ac_try\"") >&5 ++if { (eval echo "$as_me:26117: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26122: \$? = $ac_status" >&5 ++ echo "$as_me:26120: \$? = $ac_status" >&5 + (exit "$ac_status"); } && +- test -f conftest2.$ac_objext && { (eval echo "$as_me:26124: \"$ac_try\"") >&5 ++ test -f conftest2.$ac_objext && { (eval echo "$as_me:26122: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26127: \$? = $ac_status" >&5 ++ echo "$as_me:26125: \$? = $ac_status" >&5 + (exit "$ac_status"); }; + then + eval cf_cv_prog_CXX_c_o=yes +@@ -26135,10 +26133,10 @@ + + fi + if test "$cf_cv_prog_CXX_c_o" = yes; then +- echo "$as_me:26138: result: yes" >&5 ++ echo "$as_me:26136: result: yes" >&5 + echo "${ECHO_T}yes" >&6 + else +- echo "$as_me:26141: result: no" >&5 ++ echo "$as_me:26139: result: no" >&5 + echo "${ECHO_T}no" >&6 + fi + +@@ -26158,7 +26156,7 @@ + ;; + esac + if test "$GXX" = yes; then +- echo "$as_me:26161: checking for lib$cf_gpp_libname" >&5 ++ echo "$as_me:26159: checking for lib$cf_gpp_libname" >&5 + echo $ECHO_N "checking for lib$cf_gpp_libname... $ECHO_C" >&6 + cf_save="$LIBS" + +@@ -26179,7 +26177,7 @@ + LIBS="$cf_add_libs" + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26182 "configure" ++#line 26180 "configure" + #include "confdefs.h" + + #include <$cf_gpp_libname/builtin.h> +@@ -26193,16 +26191,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" "conftest$ac_exeext" +-if { (eval echo "$as_me:26196: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:26194: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:26199: \$? = $ac_status" >&5 ++ echo "$as_me:26197: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest$ac_exeext"' +- { (eval echo "$as_me:26202: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26200: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26205: \$? = $ac_status" >&5 ++ echo "$as_me:26203: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cxx_library=yes + +@@ -26239,7 +26237,7 @@ + echo "$as_me: failed program was:" >&5 + cat "conftest.$ac_ext" >&5 + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26242 "configure" ++#line 26240 "configure" + #include "confdefs.h" + + #include <builtin.h> +@@ -26253,16 +26251,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" "conftest$ac_exeext" +-if { (eval echo "$as_me:26256: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:26254: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:26259: \$? = $ac_status" >&5 ++ echo "$as_me:26257: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest$ac_exeext"' +- { (eval echo "$as_me:26262: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26260: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26265: \$? = $ac_status" >&5 ++ echo "$as_me:26263: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cxx_library=yes + +@@ -26295,7 +26293,7 @@ + fi + rm -f "conftest.$ac_objext" "conftest$ac_exeext" "conftest.$ac_ext" + LIBS="$cf_save" +- echo "$as_me:26298: result: $cf_cxx_library" >&5 ++ echo "$as_me:26296: result: $cf_cxx_library" >&5 + echo "${ECHO_T}$cf_cxx_library" >&6 + fi + +@@ -26311,7 +26309,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:26314: checking how to run the C++ preprocessor" >&5 ++echo "$as_me:26312: 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 +@@ -26328,18 +26326,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 26331 "configure" ++#line 26329 "configure" + #include "confdefs.h" + #include <assert.h> + Syntax error + _ACEOF +-if { (eval echo "$as_me:26336: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26334: \"$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:26342: \$? = $ac_status" >&5 ++ echo "$as_me:26340: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26362,17 +26360,17 @@ + # OK, works on sane cases. Now check whether non-existent headers + # can be detected and how. + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26365 "configure" ++#line 26363 "configure" + #include "confdefs.h" + #include <ac_nonexistent.h> + _ACEOF +-if { (eval echo "$as_me:26369: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26367: \"$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:26375: \$? = $ac_status" >&5 ++ echo "$as_me:26373: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26409,7 +26407,7 @@ + else + ac_cv_prog_CXXCPP=$CXXCPP + fi +-echo "$as_me:26412: result: $CXXCPP" >&5 ++echo "$as_me:26410: result: $CXXCPP" >&5 + echo "${ECHO_T}$CXXCPP" >&6 + ac_preproc_ok=false + for ac_cxx_preproc_warn_flag in '' yes +@@ -26419,18 +26417,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 26422 "configure" ++#line 26420 "configure" + #include "confdefs.h" + #include <assert.h> + Syntax error + _ACEOF +-if { (eval echo "$as_me:26427: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26425: \"$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:26433: \$? = $ac_status" >&5 ++ echo "$as_me:26431: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26453,17 +26451,17 @@ + # OK, works on sane cases. Now check whether non-existent headers + # can be detected and how. + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26456 "configure" ++#line 26454 "configure" + #include "confdefs.h" + #include <ac_nonexistent.h> + _ACEOF +-if { (eval echo "$as_me:26460: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26458: \"$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:26466: \$? = $ac_status" >&5 ++ echo "$as_me:26464: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26491,7 +26489,7 @@ + if $ac_preproc_ok; then + : + else +- { { echo "$as_me:26494: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5 ++ { { echo "$as_me:26492: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&5 + echo "$as_me: error: C++ preprocessor \"$CXXCPP\" fails sanity check" >&2;} + { (exit 1); exit 1; }; } + fi +@@ -26503,26 +26501,26 @@ + ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + ac_main_return="return" + +-for ac_header in typeinfo ++for ac_header in new exception typeinfo + do + as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +-echo "$as_me:26509: checking for $ac_header" >&5 ++echo "$as_me:26507: 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 26515 "configure" ++#line 26513 "configure" + #include "confdefs.h" + #include <$ac_header> + _ACEOF +-if { (eval echo "$as_me:26519: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26517: \"$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:26525: \$? = $ac_status" >&5 ++ echo "$as_me:26523: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26541,7 +26539,7 @@ + fi + rm -f conftest.err "conftest.$ac_ext" + fi +-echo "$as_me:26544: result: `eval echo '${'"$as_ac_Header"'}'`" >&5 ++echo "$as_me:26542: 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 +@@ -26554,23 +26552,23 @@ + for ac_header in iostream + do + as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` +-echo "$as_me:26557: checking for $ac_header" >&5 ++echo "$as_me:26555: 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 26563 "configure" ++#line 26561 "configure" + #include "confdefs.h" + #include <$ac_header> + _ACEOF +-if { (eval echo "$as_me:26567: \"$ac_cpp "conftest.$ac_ext"\"") >&5 ++if { (eval echo "$as_me:26565: \"$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:26573: \$? = $ac_status" >&5 ++ echo "$as_me:26571: \$? = $ac_status" >&5 + (exit "$ac_status"); } >/dev/null; then + if test -s conftest.err; then + ac_cpp_err=$ac_cxx_preproc_warn_flag +@@ -26589,7 +26587,7 @@ + fi + rm -f conftest.err "conftest.$ac_ext" + fi +-echo "$as_me:26592: result: `eval echo '${'"$as_ac_Header"'}'`" >&5 ++echo "$as_me:26590: 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 +@@ -26600,10 +26598,10 @@ + done + + if test x"$ac_cv_header_iostream" = xyes ; then +- echo "$as_me:26603: checking if iostream uses std-namespace" >&5 ++ echo "$as_me:26601: 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 26606 "configure" ++#line 26604 "configure" + #include "confdefs.h" + + #include <iostream> +@@ -26620,16 +26618,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26623: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26621: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26626: \$? = $ac_status" >&5 ++ echo "$as_me:26624: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26629: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26627: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26632: \$? = $ac_status" >&5 ++ echo "$as_me:26630: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_iostream_namespace=yes + else +@@ -26638,7 +26636,7 @@ + cf_iostream_namespace=no + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" +- echo "$as_me:26641: result: $cf_iostream_namespace" >&5 ++ echo "$as_me:26639: result: $cf_iostream_namespace" >&5 + echo "${ECHO_T}$cf_iostream_namespace" >&6 + if test "$cf_iostream_namespace" = yes ; then + +@@ -26649,7 +26647,7 @@ + fi + fi + +-echo "$as_me:26652: checking if we should include stdbool.h" >&5 ++echo "$as_me:26650: 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 +@@ -26657,9 +26655,13 @@ + else + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26660 "configure" ++#line 26658 "configure" + #include "confdefs.h" + ++#ifndef __BEOS__ ++#include <stdbool.h> ++#endif ++ + int + main (void) + { +@@ -26669,29 +26671,25 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26672: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26674: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26675: \$? = $ac_status" >&5 ++ echo "$as_me:26677: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26678: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26680: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26681: \$? = $ac_status" >&5 ++ echo "$as_me:26683: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then +- cf_cv_header_stdbool_h=0 ++ cf_cv_header_stdbool_h=1 + else + echo "$as_me: failed program was:" >&5 + cat "conftest.$ac_ext" >&5 + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26688 "configure" ++#line 26690 "configure" + #include "confdefs.h" + +-#ifndef __BEOS__ +-#include <stdbool.h> +-#endif +- + int + main (void) + { +@@ -26701,22 +26699,21 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26704: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26702: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26707: \$? = $ac_status" >&5 ++ echo "$as_me:26705: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26710: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26708: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26713: \$? = $ac_status" >&5 ++ echo "$as_me:26711: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then +- cf_cv_header_stdbool_h=1 ++ cf_cv_header_stdbool_h=0 + else + echo "$as_me: failed program was:" >&5 + cat "conftest.$ac_ext" >&5 +-cf_cv_header_stdbool_h=0 + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + fi +@@ -26724,13 +26721,13 @@ + fi + + if test "$cf_cv_header_stdbool_h" = 1 +-then echo "$as_me:26727: result: yes" >&5 ++then echo "$as_me:26724: result: yes" >&5 + echo "${ECHO_T}yes" >&6 +-else echo "$as_me:26729: result: no" >&5 ++else echo "$as_me:26726: result: no" >&5 + echo "${ECHO_T}no" >&6 + fi + +-echo "$as_me:26733: checking for builtin bool type" >&5 ++echo "$as_me:26730: 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 +@@ -26738,7 +26735,7 @@ + else + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26741 "configure" ++#line 26738 "configure" + #include "confdefs.h" + + #include <stdio.h> +@@ -26753,16 +26750,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26756: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26753: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26759: \$? = $ac_status" >&5 ++ echo "$as_me:26756: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26762: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26759: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26765: \$? = $ac_status" >&5 ++ echo "$as_me:26762: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_builtin_bool=1 + else +@@ -26771,23 +26768,22 @@ + cf_cv_builtin_bool=0 + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" +- + fi + + if test "$cf_cv_builtin_bool" = 1 +-then echo "$as_me:26778: result: yes" >&5 ++then echo "$as_me:26774: result: yes" >&5 + echo "${ECHO_T}yes" >&6 +-else echo "$as_me:26780: result: no" >&5 ++else echo "$as_me:26776: result: no" >&5 + echo "${ECHO_T}no" >&6 + fi + +-echo "$as_me:26784: checking for bool" >&5 ++echo "$as_me:26780: checking for bool" >&5 + echo $ECHO_N "checking for bool... $ECHO_C" >&6 + if test "${ac_cv_type_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26790 "configure" ++#line 26786 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -26822,16 +26818,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26825: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26821: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26828: \$? = $ac_status" >&5 ++ echo "$as_me:26824: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26831: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26827: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26834: \$? = $ac_status" >&5 ++ echo "$as_me:26830: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_type_bool=yes + else +@@ -26841,10 +26837,10 @@ + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + fi +-echo "$as_me:26844: result: $ac_cv_type_bool" >&5 ++echo "$as_me:26840: result: $ac_cv_type_bool" >&5 + echo "${ECHO_T}$ac_cv_type_bool" >&6 + +-echo "$as_me:26847: checking size of bool" >&5 ++echo "$as_me:26843: checking size of bool" >&5 + echo $ECHO_N "checking size of bool... $ECHO_C" >&6 + if test "${ac_cv_sizeof_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -26853,7 +26849,7 @@ + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26856 "configure" ++#line 26852 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -26885,21 +26881,21 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26888: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26884: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26891: \$? = $ac_status" >&5 ++ echo "$as_me:26887: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26894: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26890: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26897: \$? = $ac_status" >&5 ++ echo "$as_me:26893: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=0 ac_mid=0 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26902 "configure" ++#line 26898 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -26931,16 +26927,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26934: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26930: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26937: \$? = $ac_status" >&5 ++ echo "$as_me:26933: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26940: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26936: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:26943: \$? = $ac_status" >&5 ++ echo "$as_me:26939: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid; break + else +@@ -26956,7 +26952,7 @@ + ac_hi=-1 ac_mid=-1 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 26959 "configure" ++#line 26955 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -26988,16 +26984,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:26991: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:26987: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:26994: \$? = $ac_status" >&5 ++ echo "$as_me:26990: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:26997: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:26993: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27000: \$? = $ac_status" >&5 ++ echo "$as_me:26996: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=$ac_mid; break + else +@@ -27013,7 +27009,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 27016 "configure" ++#line 27012 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27045,16 +27041,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27048: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27044: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27051: \$? = $ac_status" >&5 ++ echo "$as_me:27047: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27054: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27050: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27057: \$? = $ac_status" >&5 ++ echo "$as_me:27053: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid + else +@@ -27067,12 +27063,12 @@ + ac_cv_sizeof_bool=$ac_lo + else + if test "$cross_compiling" = yes; then +- { { echo "$as_me:27070: error: cannot run test program while cross compiling" >&5 ++ { { echo "$as_me:27066: 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 27075 "configure" ++#line 27071 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27108,15 +27104,15 @@ + } + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:27111: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27107: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:27114: \$? = $ac_status" >&5 ++ echo "$as_me:27110: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:27116: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27112: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27119: \$? = $ac_status" >&5 ++ echo "$as_me:27115: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_sizeof_bool=`cat conftest.val` + else +@@ -27132,13 +27128,13 @@ + ac_cv_sizeof_bool=0 + fi + fi +-echo "$as_me:27135: result: $ac_cv_sizeof_bool" >&5 ++echo "$as_me:27131: result: $ac_cv_sizeof_bool" >&5 + echo "${ECHO_T}$ac_cv_sizeof_bool" >&6 + cat >>confdefs.h <<EOF + #define SIZEOF_BOOL $ac_cv_sizeof_bool + EOF + +-echo "$as_me:27141: checking for type of bool" >&5 ++echo "$as_me:27137: checking for type of bool" >&5 + echo $ECHO_N "checking for type of bool... $ECHO_C" >&6 + if test "${cf_cv_type_of_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -27157,7 +27153,7 @@ + + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27160 "configure" ++#line 27156 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27198,15 +27194,15 @@ + + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:27201: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27197: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:27204: \$? = $ac_status" >&5 ++ echo "$as_me:27200: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:27206: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27202: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27209: \$? = $ac_status" >&5 ++ echo "$as_me:27205: \$? = $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 +@@ -27223,19 +27219,19 @@ + rm -f cf_test.out + + fi +-echo "$as_me:27226: result: $cf_cv_type_of_bool" >&5 ++echo "$as_me:27222: 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 + (.auto|.) NCURSES_BOOL=unsigned;; + esac +- { echo "$as_me:27233: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 ++ { echo "$as_me:27229: 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:27238: checking for special defines needed for etip.h" >&5 ++echo "$as_me:27234: 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" +@@ -27253,7 +27249,7 @@ + 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 27256 "configure" ++#line 27252 "configure" + #include "confdefs.h" + + #include <etip.h.in> +@@ -27267,16 +27263,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27270: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27266: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27273: \$? = $ac_status" >&5 ++ echo "$as_me:27269: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27276: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27272: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27279: \$? = $ac_status" >&5 ++ echo "$as_me:27275: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + + test -n "$cf_math" && cat >>confdefs.h <<EOF +@@ -27297,12 +27293,12 @@ + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + done + done +-echo "$as_me:27300: result: ${cf_result:-(none)}" >&5 ++echo "$as_me:27296: result: ${cf_result:-(none)}" >&5 + echo "${ECHO_T}${cf_result:-(none)}" >&6 + CXXFLAGS="$cf_save_CXXFLAGS" + + if test -n "$CXX"; then +-echo "$as_me:27305: checking if $CXX accepts override keyword" >&5 ++echo "$as_me:27301: checking if $CXX accepts override keyword" >&5 + echo $ECHO_N "checking if $CXX accepts override keyword... $ECHO_C" >&6 + if test "${cf_cv_cpp_override+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -27319,7 +27315,7 @@ + cf_cv_cpp_override=unknown + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27322 "configure" ++#line 27318 "configure" + #include "confdefs.h" + + class base +@@ -27338,15 +27334,15 @@ + + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:27341: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27337: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:27344: \$? = $ac_status" >&5 ++ echo "$as_me:27340: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:27346: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27342: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27349: \$? = $ac_status" >&5 ++ echo "$as_me:27345: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_cpp_override=yes + else +@@ -27365,7 +27361,7 @@ + ac_main_return="return" + + fi +-echo "$as_me:27368: result: $cf_cv_cpp_override" >&5 ++echo "$as_me:27364: result: $cf_cv_cpp_override" >&5 + echo "${ECHO_T}$cf_cv_cpp_override" >&6 + fi + test "$cf_cv_cpp_override" = yes && +@@ -27374,7 +27370,7 @@ + EOF + + if test -n "$CXX"; then +-echo "$as_me:27377: checking if $CXX accepts parameter initialization" >&5 ++echo "$as_me:27373: 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 +@@ -27391,7 +27387,7 @@ + cf_cv_cpp_param_init=unknown + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27394 "configure" ++#line 27390 "configure" + #include "confdefs.h" + + class TEST { +@@ -27410,15 +27406,15 @@ + + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:27413: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27409: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:27416: \$? = $ac_status" >&5 ++ echo "$as_me:27412: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:27418: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27414: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27421: \$? = $ac_status" >&5 ++ echo "$as_me:27417: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_cpp_param_init=yes + else +@@ -27437,7 +27433,7 @@ + ac_main_return="return" + + fi +-echo "$as_me:27440: result: $cf_cv_cpp_param_init" >&5 ++echo "$as_me:27436: result: $cf_cv_cpp_param_init" >&5 + echo "${ECHO_T}$cf_cv_cpp_param_init" >&6 + fi + test "$cf_cv_cpp_param_init" = yes && +@@ -27447,7 +27443,7 @@ + + if test -n "$CXX"; then + +-echo "$as_me:27450: checking if $CXX accepts static_cast" >&5 ++echo "$as_me:27446: 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 +@@ -27461,7 +27457,7 @@ + ac_main_return="return" + + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27464 "configure" ++#line 27460 "configure" + #include "confdefs.h" + + class NCursesPanel +@@ -27505,16 +27501,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27508: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27504: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27511: \$? = $ac_status" >&5 ++ echo "$as_me:27507: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27514: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27510: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27517: \$? = $ac_status" >&5 ++ echo "$as_me:27513: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + cf_cv_cpp_static_cast=yes + else +@@ -27532,7 +27528,7 @@ + ac_main_return="return" + + fi +-echo "$as_me:27535: result: $cf_cv_cpp_static_cast" >&5 ++echo "$as_me:27531: result: $cf_cv_cpp_static_cast" >&5 + echo "${ECHO_T}$cf_cv_cpp_static_cast" >&6 + + fi +@@ -27580,13 +27576,13 @@ + cf_cv_header_stdbool_h=0 + else + +-echo "$as_me:27583: checking for bool" >&5 ++echo "$as_me:27579: checking for bool" >&5 + echo $ECHO_N "checking for bool... $ECHO_C" >&6 + if test "${ac_cv_type_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27589 "configure" ++#line 27585 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27621,16 +27617,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27624: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27620: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27627: \$? = $ac_status" >&5 ++ echo "$as_me:27623: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27630: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27626: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27633: \$? = $ac_status" >&5 ++ echo "$as_me:27629: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_type_bool=yes + else +@@ -27640,10 +27636,10 @@ + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + fi +-echo "$as_me:27643: result: $ac_cv_type_bool" >&5 ++echo "$as_me:27639: result: $ac_cv_type_bool" >&5 + echo "${ECHO_T}$ac_cv_type_bool" >&6 + +-echo "$as_me:27646: checking size of bool" >&5 ++echo "$as_me:27642: checking size of bool" >&5 + echo $ECHO_N "checking size of bool... $ECHO_C" >&6 + if test "${ac_cv_sizeof_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -27652,7 +27648,7 @@ + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27655 "configure" ++#line 27651 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27684,21 +27680,21 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27687: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27683: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27690: \$? = $ac_status" >&5 ++ echo "$as_me:27686: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27693: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27689: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27696: \$? = $ac_status" >&5 ++ echo "$as_me:27692: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=0 ac_mid=0 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27701 "configure" ++#line 27697 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27730,16 +27726,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27733: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27729: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27736: \$? = $ac_status" >&5 ++ echo "$as_me:27732: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27739: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27735: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27742: \$? = $ac_status" >&5 ++ echo "$as_me:27738: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid; break + else +@@ -27755,7 +27751,7 @@ + ac_hi=-1 ac_mid=-1 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27758 "configure" ++#line 27754 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27787,16 +27783,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27790: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27786: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27793: \$? = $ac_status" >&5 ++ echo "$as_me:27789: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27796: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27792: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27799: \$? = $ac_status" >&5 ++ echo "$as_me:27795: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=$ac_mid; break + else +@@ -27812,7 +27808,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 27815 "configure" ++#line 27811 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27844,16 +27840,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:27847: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:27843: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:27850: \$? = $ac_status" >&5 ++ echo "$as_me:27846: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:27853: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27849: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27856: \$? = $ac_status" >&5 ++ echo "$as_me:27852: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid + else +@@ -27866,12 +27862,12 @@ + ac_cv_sizeof_bool=$ac_lo + else + if test "$cross_compiling" = yes; then +- { { echo "$as_me:27869: error: cannot run test program while cross compiling" >&5 ++ { { echo "$as_me:27865: 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 27874 "configure" ++#line 27870 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27907,15 +27903,15 @@ + } + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:27910: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27906: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:27913: \$? = $ac_status" >&5 ++ echo "$as_me:27909: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:27915: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:27911: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:27918: \$? = $ac_status" >&5 ++ echo "$as_me:27914: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_sizeof_bool=`cat conftest.val` + else +@@ -27931,13 +27927,13 @@ + ac_cv_sizeof_bool=0 + fi + fi +-echo "$as_me:27934: result: $ac_cv_sizeof_bool" >&5 ++echo "$as_me:27930: result: $ac_cv_sizeof_bool" >&5 + echo "${ECHO_T}$ac_cv_sizeof_bool" >&6 + cat >>confdefs.h <<EOF + #define SIZEOF_BOOL $ac_cv_sizeof_bool + EOF + +-echo "$as_me:27940: checking for type of bool" >&5 ++echo "$as_me:27936: checking for type of bool" >&5 + echo $ECHO_N "checking for type of bool... $ECHO_C" >&6 + if test "${cf_cv_type_of_bool+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -27956,7 +27952,7 @@ + + else + cat >"conftest.$ac_ext" <<_ACEOF +-#line 27959 "configure" ++#line 27955 "configure" + #include "confdefs.h" + + $ac_includes_default +@@ -27997,15 +27993,15 @@ + + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:28000: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:27996: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:28003: \$? = $ac_status" >&5 ++ echo "$as_me:27999: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:28005: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28001: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28008: \$? = $ac_status" >&5 ++ echo "$as_me:28004: \$? = $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 +@@ -28022,14 +28018,14 @@ + rm -f cf_test.out + + fi +-echo "$as_me:28025: result: $cf_cv_type_of_bool" >&5 ++echo "$as_me:28021: 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 + (.auto|.) NCURSES_BOOL=unsigned;; + esac +- { echo "$as_me:28032: WARNING: Assuming $NCURSES_BOOL for type of bool" >&5 ++ { echo "$as_me:28028: 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 +@@ -28060,7 +28056,7 @@ + + if test "$cf_with_ada" != "no" ; then + if test "$with_libtool" != "no"; then +- { echo "$as_me:28063: WARNING: libtool does not support Ada - disabling feature" >&5 ++ { echo "$as_me:28059: 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 +@@ -28071,7 +28067,7 @@ + + ADAFLAGS="$ADAFLAGS -gnatpn" + +- echo "$as_me:28074: checking optimization options for ADAFLAGS" >&5 ++ echo "$as_me:28070: checking optimization options for ADAFLAGS" >&5 + echo $ECHO_N "checking optimization options for ADAFLAGS... $ECHO_C" >&6 + case "$CFLAGS" in + (*-g*) +@@ -28088,10 +28084,10 @@ + + ;; + esac +- echo "$as_me:28091: result: $ADAFLAGS" >&5 ++ echo "$as_me:28087: result: $ADAFLAGS" >&5 + echo "${ECHO_T}$ADAFLAGS" >&6 + +-echo "$as_me:28094: checking if GNATPREP supports -T option" >&5 ++echo "$as_me:28090: checking if GNATPREP supports -T option" >&5 + echo $ECHO_N "checking if GNATPREP supports -T option... $ECHO_C" >&6 + if test "${cf_cv_gnatprep_opt_t+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -28101,11 +28097,11 @@ + gnatprep -T 2>/dev/null >/dev/null && cf_cv_gnatprep_opt_t=yes + + fi +-echo "$as_me:28104: result: $cf_cv_gnatprep_opt_t" >&5 ++echo "$as_me:28100: result: $cf_cv_gnatprep_opt_t" >&5 + echo "${ECHO_T}$cf_cv_gnatprep_opt_t" >&6 + test "$cf_cv_gnatprep_opt_t" = yes && GNATPREP_OPTS="-T $GNATPREP_OPTS" + +-echo "$as_me:28108: checking if GNAT supports generics" >&5 ++echo "$as_me:28104: checking if GNAT supports generics" >&5 + echo $ECHO_N "checking if GNAT supports generics... $ECHO_C" >&6 + case "$cf_cv_gnat_version" in + (3.1[1-9]*|3.[2-9]*|[4-9].*|[1-9][0-9].[0-9]*|20[0-9][0-9]) +@@ -28115,7 +28111,7 @@ + cf_gnat_generics=no + ;; + esac +-echo "$as_me:28118: result: $cf_gnat_generics" >&5 ++echo "$as_me:28114: result: $cf_gnat_generics" >&5 + echo "${ECHO_T}$cf_gnat_generics" >&6 + + if test "$cf_gnat_generics" = yes +@@ -28127,7 +28123,7 @@ + cf_generic_objects= + fi + +-echo "$as_me:28130: checking if GNAT supports SIGINT" >&5 ++echo "$as_me:28126: 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 +@@ -28175,7 +28171,7 @@ + rm -rf ./conftest* ./*~conftest* + + fi +-echo "$as_me:28178: result: $cf_cv_gnat_sigint" >&5 ++echo "$as_me:28174: result: $cf_cv_gnat_sigint" >&5 + echo "${ECHO_T}$cf_cv_gnat_sigint" >&6 + + if test "$cf_cv_gnat_sigint" = yes ; then +@@ -28188,7 +28184,7 @@ + cf_gnat_projects=no + + if test "$enable_gnat_projects" != no ; then +-echo "$as_me:28191: checking if GNAT supports project files" >&5 ++echo "$as_me:28187: checking if GNAT supports project files" >&5 + echo $ECHO_N "checking if GNAT supports project files... $ECHO_C" >&6 + case "$cf_cv_gnat_version" in + (3.[0-9]*) +@@ -28251,15 +28247,15 @@ + esac + ;; + esac +-echo "$as_me:28254: result: $cf_gnat_projects" >&5 ++echo "$as_me:28250: result: $cf_gnat_projects" >&5 + echo "${ECHO_T}$cf_gnat_projects" >&6 + fi # enable_gnat_projects + + if test "$cf_gnat_projects" = yes + then +- echo "$as_me:28260: checking if GNAT supports libraries" >&5 ++ echo "$as_me:28256: checking if GNAT supports libraries" >&5 + echo $ECHO_N "checking if GNAT supports libraries... $ECHO_C" >&6 +- echo "$as_me:28262: result: $cf_gnat_libraries" >&5 ++ echo "$as_me:28258: result: $cf_gnat_libraries" >&5 + echo "${ECHO_T}$cf_gnat_libraries" >&6 + fi + +@@ -28279,7 +28275,7 @@ + then + USE_GNAT_MAKE_GPR="" + else +- { echo "$as_me:28282: WARNING: use old makefile rules since tools are missing" >&5 ++ { echo "$as_me:28278: WARNING: use old makefile rules since tools are missing" >&5 + echo "$as_me: WARNING: use old makefile rules since tools are missing" >&2;} + fi + fi +@@ -28291,7 +28287,7 @@ + USE_GNAT_LIBRARIES="#" + fi + +-echo "$as_me:28294: checking for Ada95 compiler" >&5 ++echo "$as_me:28290: checking for Ada95 compiler" >&5 + echo $ECHO_N "checking for Ada95 compiler... $ECHO_C" >&6 + + # Check whether --with-ada-compiler or --without-ada-compiler was given. +@@ -28302,12 +28298,12 @@ + cf_ada_compiler=gnatmake + fi; + +-echo "$as_me:28305: result: $cf_ada_compiler" >&5 ++echo "$as_me:28301: result: $cf_ada_compiler" >&5 + echo "${ECHO_T}$cf_ada_compiler" >&6 + + cf_ada_package=terminal_interface + +-echo "$as_me:28310: checking for Ada95 include directory" >&5 ++echo "$as_me:28306: checking for Ada95 include directory" >&5 + echo $ECHO_N "checking for Ada95 include directory... $ECHO_C" >&6 + + # Check whether --with-ada-include or --without-ada-include was given. +@@ -28341,7 +28337,7 @@ + withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%` + ;; + (*) +- { { echo "$as_me:28344: error: expected a pathname, not \"$withval\"" >&5 ++ { { echo "$as_me:28340: error: expected a pathname, not \"$withval\"" >&5 + echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} + { (exit 1); exit 1; }; } + ;; +@@ -28350,10 +28346,10 @@ + fi + eval ADA_INCLUDE="$withval" + +-echo "$as_me:28353: result: $ADA_INCLUDE" >&5 ++echo "$as_me:28349: result: $ADA_INCLUDE" >&5 + echo "${ECHO_T}$ADA_INCLUDE" >&6 + +-echo "$as_me:28356: checking for Ada95 object directory" >&5 ++echo "$as_me:28352: checking for Ada95 object directory" >&5 + echo $ECHO_N "checking for Ada95 object directory... $ECHO_C" >&6 + + # Check whether --with-ada-objects or --without-ada-objects was given. +@@ -28387,7 +28383,7 @@ + withval=`echo "$withval" | sed -e s%NONE%$cf_path_syntax%` + ;; + (*) +- { { echo "$as_me:28390: error: expected a pathname, not \"$withval\"" >&5 ++ { { echo "$as_me:28386: error: expected a pathname, not \"$withval\"" >&5 + echo "$as_me: error: expected a pathname, not \"$withval\"" >&2;} + { (exit 1); exit 1; }; } + ;; +@@ -28396,10 +28392,10 @@ + fi + eval ADA_OBJECTS="$withval" + +-echo "$as_me:28399: result: $ADA_OBJECTS" >&5 ++echo "$as_me:28395: result: $ADA_OBJECTS" >&5 + echo "${ECHO_T}$ADA_OBJECTS" >&6 + +-echo "$as_me:28402: checking whether to build an Ada95 shared library" >&5 ++echo "$as_me:28398: checking whether to build an Ada95 shared library" >&5 + echo $ECHO_N "checking whether to build an Ada95 shared library... $ECHO_C" >&6 + + # Check whether --with-ada-sharedlib or --without-ada-sharedlib was given. +@@ -28420,11 +28416,11 @@ + fi + fi + +-echo "$as_me:28423: result: $with_ada_sharedlib" >&5 ++echo "$as_me:28419: result: $with_ada_sharedlib" >&5 + echo "${ECHO_T}$with_ada_sharedlib" >&6 + if test "x$cf_ada_sharedlib_warn" != xno + then +- { echo "$as_me:28427: WARNING: disabling Ada95 shared library since GNAT projects are not supported" >&5 ++ { echo "$as_me:28423: WARNING: disabling Ada95 shared library since GNAT projects are not supported" >&5 + echo "$as_me: WARNING: disabling Ada95 shared library since GNAT projects are not supported" >&2;} + fi + +@@ -28442,7 +28438,7 @@ + + # allow the Ada binding to be renamed + +-echo "$as_me:28445: checking for Ada95 curses library name" >&5 ++echo "$as_me:28441: checking for Ada95 curses library name" >&5 + echo $ECHO_N "checking for Ada95 curses library name... $ECHO_C" >&6 + + # Check whether --with-ada-libname or --without-ada-libname was given. +@@ -28458,7 +28454,7 @@ + ;; + esac + +-echo "$as_me:28461: result: $ADA_LIBNAME" >&5 ++echo "$as_me:28457: result: $ADA_LIBNAME" >&5 + echo "${ECHO_T}$ADA_LIBNAME" >&6 + + fi +@@ -28469,13 +28465,13 @@ + + # do this "late" to avoid conflict with header-checks + if test "x$with_widec" = xyes ; then +- echo "$as_me:28472: checking for wchar_t" >&5 ++ echo "$as_me:28468: 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 28478 "configure" ++#line 28474 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28490,16 +28486,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:28493: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:28489: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:28496: \$? = $ac_status" >&5 ++ echo "$as_me:28492: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:28499: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28495: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28502: \$? = $ac_status" >&5 ++ echo "$as_me:28498: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_type_wchar_t=yes + else +@@ -28509,10 +28505,10 @@ + fi + rm -f "conftest.$ac_objext" "conftest.$ac_ext" + fi +-echo "$as_me:28512: result: $ac_cv_type_wchar_t" >&5 ++echo "$as_me:28508: result: $ac_cv_type_wchar_t" >&5 + echo "${ECHO_T}$ac_cv_type_wchar_t" >&6 + +-echo "$as_me:28515: checking size of wchar_t" >&5 ++echo "$as_me:28511: 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 +@@ -28521,7 +28517,7 @@ + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. + cat >"conftest.$ac_ext" <<_ACEOF +-#line 28524 "configure" ++#line 28520 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28533,21 +28529,21 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:28536: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:28532: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:28539: \$? = $ac_status" >&5 ++ echo "$as_me:28535: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:28542: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28538: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28545: \$? = $ac_status" >&5 ++ echo "$as_me:28541: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=0 ac_mid=0 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 28550 "configure" ++#line 28546 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28559,16 +28555,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:28562: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:28558: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:28565: \$? = $ac_status" >&5 ++ echo "$as_me:28561: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:28568: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28564: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28571: \$? = $ac_status" >&5 ++ echo "$as_me:28567: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid; break + else +@@ -28584,7 +28580,7 @@ + ac_hi=-1 ac_mid=-1 + while :; do + cat >"conftest.$ac_ext" <<_ACEOF +-#line 28587 "configure" ++#line 28583 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28596,16 +28592,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:28599: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:28595: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:28602: \$? = $ac_status" >&5 ++ echo "$as_me:28598: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:28605: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28601: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28608: \$? = $ac_status" >&5 ++ echo "$as_me:28604: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_lo=$ac_mid; break + else +@@ -28621,7 +28617,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 28624 "configure" ++#line 28620 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28633,16 +28629,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" +-if { (eval echo "$as_me:28636: \"$ac_compile\"") >&5 ++if { (eval echo "$as_me:28632: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:28639: \$? = $ac_status" >&5 ++ echo "$as_me:28635: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest.$ac_objext"' +- { (eval echo "$as_me:28642: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28638: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28645: \$? = $ac_status" >&5 ++ echo "$as_me:28641: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_hi=$ac_mid + else +@@ -28655,12 +28651,12 @@ + ac_cv_sizeof_wchar_t=$ac_lo + else + if test "$cross_compiling" = yes; then +- { { echo "$as_me:28658: error: cannot run test program while cross compiling" >&5 ++ { { echo "$as_me:28654: 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 28663 "configure" ++#line 28659 "configure" + #include "confdefs.h" + $ac_includes_default + int +@@ -28676,15 +28672,15 @@ + } + _ACEOF + rm -f "conftest$ac_exeext" +-if { (eval echo "$as_me:28679: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:28675: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:28682: \$? = $ac_status" >&5 ++ echo "$as_me:28678: \$? = $ac_status" >&5 + (exit "$ac_status"); } && { ac_try='"./conftest$ac_exeext"' +- { (eval echo "$as_me:28684: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:28680: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:28687: \$? = $ac_status" >&5 ++ echo "$as_me:28683: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + ac_cv_sizeof_wchar_t=`cat conftest.val` + else +@@ -28700,7 +28696,7 @@ + ac_cv_sizeof_wchar_t=0 + fi + fi +-echo "$as_me:28703: result: $ac_cv_sizeof_wchar_t" >&5 ++echo "$as_me:28699: result: $ac_cv_sizeof_wchar_t" >&5 + echo "${ECHO_T}$ac_cv_sizeof_wchar_t" >&6 + cat >>confdefs.h <<EOF + #define SIZEOF_WCHAR_T $ac_cv_sizeof_wchar_t +@@ -28713,7 +28709,7 @@ + then + test -n "$verbose" && echo " test failed (assume 2)" 1>&6 + +-echo "${as_me:-configure}:28716: testing test failed (assume 2) ..." 1>&5 ++echo "${as_me:-configure}:28712: testing test failed (assume 2) ..." 1>&5 + + sed /SIZEOF_WCHAR_T/d confdefs.h >confdefs.tmp + mv confdefs.tmp confdefs.h +@@ -28731,7 +28727,7 @@ + ### chooses to split module lists into libraries. + ### + ### (see CF_LIB_RULES). +-echo "$as_me:28734: checking for library subsets" >&5 ++echo "$as_me:28730: checking for library subsets" >&5 + echo $ECHO_N "checking for library subsets... $ECHO_C" >&6 + LIB_SUBSETS= + +@@ -28785,7 +28781,7 @@ + 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:28788: result: $LIB_SUBSETS" >&5 ++echo "$as_me:28784: result: $LIB_SUBSETS" >&5 + echo "${ECHO_T}$LIB_SUBSETS" >&6 + + ### Construct the list of include-directories to be generated +@@ -28816,7 +28812,7 @@ + fi + + ### Build up pieces for makefile rules +-echo "$as_me:28819: checking default library suffix" >&5 ++echo "$as_me:28815: checking default library suffix" >&5 + echo $ECHO_N "checking default library suffix... $ECHO_C" >&6 + + case $DFT_LWR_MODEL in +@@ -28827,10 +28823,10 @@ + (shared) DFT_ARG_SUFFIX='' ;; + esac + test -n "$LIB_SUFFIX" && DFT_ARG_SUFFIX="${LIB_SUFFIX}${DFT_ARG_SUFFIX}" +-echo "$as_me:28830: result: $DFT_ARG_SUFFIX" >&5 ++echo "$as_me:28826: result: $DFT_ARG_SUFFIX" >&5 + echo "${ECHO_T}$DFT_ARG_SUFFIX" >&6 + +-echo "$as_me:28833: checking default library-dependency suffix" >&5 ++echo "$as_me:28829: checking default library-dependency suffix" >&5 + echo $ECHO_N "checking default library-dependency suffix... $ECHO_C" >&6 + + case X$DFT_LWR_MODEL in +@@ -28913,10 +28909,10 @@ + DFT_LIB_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_LIB_SUFFIX}" + DFT_DEP_SUFFIX="${LIB_SUFFIX}${EXTRA_SUFFIX}${DFT_DEP_SUFFIX}" + fi +-echo "$as_me:28916: result: $DFT_DEP_SUFFIX" >&5 ++echo "$as_me:28912: result: $DFT_DEP_SUFFIX" >&5 + echo "${ECHO_T}$DFT_DEP_SUFFIX" >&6 + +-echo "$as_me:28919: checking default object directory" >&5 ++echo "$as_me:28915: checking default object directory" >&5 + echo $ECHO_N "checking default object directory... $ECHO_C" >&6 + + case $DFT_LWR_MODEL in +@@ -28932,11 +28928,11 @@ + DFT_OBJ_SUBDIR='obj_s' ;; + esac + esac +-echo "$as_me:28935: result: $DFT_OBJ_SUBDIR" >&5 ++echo "$as_me:28931: result: $DFT_OBJ_SUBDIR" >&5 + echo "${ECHO_T}$DFT_OBJ_SUBDIR" >&6 + + if test "x$cf_with_cxx" = xyes ; then +-echo "$as_me:28939: checking c++ library-dependency suffix" >&5 ++echo "$as_me:28935: 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++) +@@ -29029,7 +29025,7 @@ + fi + + fi +-echo "$as_me:29032: result: $CXX_LIB_SUFFIX" >&5 ++echo "$as_me:29028: result: $CXX_LIB_SUFFIX" >&5 + echo "${ECHO_T}$CXX_LIB_SUFFIX" >&6 + + fi +@@ -29205,19 +29201,19 @@ + + if test -n "$LDFLAGS_STATIC" && test -n "$LDFLAGS_SHARED" + then +- echo "$as_me:29208: checking if linker supports switching between static/dynamic" >&5 ++ echo "$as_me:29204: 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 <<EOF +-#line 29213 "configure" ++#line 29209 "configure" + #include <stdio.h> + int cf_ldflags_static(FILE *fp) { return fflush(fp); } + EOF +- if { (eval echo "$as_me:29217: \"$ac_compile\"") >&5 ++ if { (eval echo "$as_me:29213: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +- echo "$as_me:29220: \$? = $ac_status" >&5 ++ echo "$as_me:29216: \$? = $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 +@@ -29228,10 +29224,10 @@ + + LIBS="$LDFLAGS_STATIC -L`pwd` -lconftest $LDFLAGS_DYNAMIC $LIBS" + cat >"conftest.$ac_ext" <<_ACEOF +-#line 29231 "configure" ++#line 29227 "configure" + #include "confdefs.h" + +-#line 29234 "configure" ++#line 29230 "configure" + #include <stdio.h> + int cf_ldflags_static(FILE *fp); + +@@ -29246,16 +29242,16 @@ + } + _ACEOF + rm -f "conftest.$ac_objext" "conftest$ac_exeext" +-if { (eval echo "$as_me:29249: \"$ac_link\"") >&5 ++if { (eval echo "$as_me:29245: \"$ac_link\"") >&5 + (eval $ac_link) 2>&5 + ac_status=$? +- echo "$as_me:29252: \$? = $ac_status" >&5 ++ echo "$as_me:29248: \$? = $ac_status" >&5 + (exit "$ac_status"); } && + { ac_try='test -s "conftest$ac_exeext"' +- { (eval echo "$as_me:29255: \"$ac_try\"") >&5 ++ { (eval echo "$as_me:29251: \"$ac_try\"") >&5 + (eval $ac_try) 2>&5 + ac_status=$? +- echo "$as_me:29258: \$? = $ac_status" >&5 ++ echo "$as_me:29254: \$? = $ac_status" >&5 + (exit "$ac_status"); }; }; then + + # some linkers simply ignore the -dynamic +@@ -29278,7 +29274,7 @@ + rm -f libconftest.* + LIBS="$cf_save_LIBS" + +- echo "$as_me:29281: result: $cf_ldflags_static" >&5 ++ echo "$as_me:29277: result: $cf_ldflags_static" >&5 + echo "${ECHO_T}$cf_ldflags_static" >&6 + + if test "$cf_ldflags_static" != yes +@@ -29294,7 +29290,7 @@ + ;; + esac + +-echo "$as_me:29297: checking where we will install curses.h" >&5 ++echo "$as_me:29293: checking where we will install curses.h" >&5 + echo $ECHO_N "checking where we will install curses.h... $ECHO_C" >&6 + + includesubdir= +@@ -29304,7 +29300,7 @@ + then + includesubdir="/ncurses${USE_LIB_SUFFIX}" + fi +-echo "$as_me:29307: result: ${includedir}${includesubdir}" >&5 ++echo "$as_me:29303: result: ${includedir}${includesubdir}" >&5 + echo "${ECHO_T}${includedir}${includesubdir}" >&6 + + ### Resolve a conflict between normal and wide-curses by forcing applications +@@ -29312,7 +29308,7 @@ + if test "$with_overwrite" != no ; then + if test "$NCURSES_LIBUTF8" = 1 ; then + NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)' +- { echo "$as_me:29315: WARNING: Wide-character applications must define HAVE_LIBUTF8_H to include curses.h" >&5 ++ { echo "$as_me:29311: 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 +@@ -29337,7 +29333,7 @@ + + # pkgsrc uses these + +-echo "$as_me:29340: checking for desired basename for form library" >&5 ++echo "$as_me:29336: checking for desired basename for form library" >&5 + echo $ECHO_N "checking for desired basename for form library... $ECHO_C" >&6 + + # Check whether --with-form-libname or --without-form-libname was given. +@@ -29357,10 +29353,10 @@ + ;; + esac + +-echo "$as_me:29360: result: $FORM_NAME" >&5 ++echo "$as_me:29356: result: $FORM_NAME" >&5 + echo "${ECHO_T}$FORM_NAME" >&6 + +-echo "$as_me:29363: checking for desired basename for menu library" >&5 ++echo "$as_me:29359: checking for desired basename for menu library" >&5 + echo $ECHO_N "checking for desired basename for menu library... $ECHO_C" >&6 + + # Check whether --with-menu-libname or --without-menu-libname was given. +@@ -29380,10 +29376,10 @@ + ;; + esac + +-echo "$as_me:29383: result: $MENU_NAME" >&5 ++echo "$as_me:29379: result: $MENU_NAME" >&5 + echo "${ECHO_T}$MENU_NAME" >&6 + +-echo "$as_me:29386: checking for desired basename for panel library" >&5 ++echo "$as_me:29382: checking for desired basename for panel library" >&5 + echo $ECHO_N "checking for desired basename for panel library... $ECHO_C" >&6 + + # Check whether --with-panel-libname or --without-panel-libname was given. +@@ -29403,10 +29399,10 @@ + ;; + esac + +-echo "$as_me:29406: result: $PANEL_NAME" >&5 ++echo "$as_me:29402: result: $PANEL_NAME" >&5 + echo "${ECHO_T}$PANEL_NAME" >&6 + +-echo "$as_me:29409: checking for desired basename for cxx library" >&5 ++echo "$as_me:29405: checking for desired basename for cxx library" >&5 + echo $ECHO_N "checking for desired basename for cxx library... $ECHO_C" >&6 + + # Check whether --with-cxx-libname or --without-cxx-libname was given. +@@ -29426,13 +29422,13 @@ + ;; + esac + +-echo "$as_me:29429: result: $CXX_NAME" >&5 ++echo "$as_me:29425: result: $CXX_NAME" >&5 + echo "${ECHO_T}$CXX_NAME" >&6 + + ### Construct the list of subdirectories for which we'll customize makefiles + ### with the appropriate compile-rules. + +-echo "$as_me:29435: checking for src modules" >&5 ++echo "$as_me:29431: checking for src modules" >&5 + echo $ECHO_N "checking for src modules... $ECHO_C" >&6 + + # dependencies and linker-arguments for test-programs +@@ -29491,7 +29487,7 @@ + fi + fi + done +-echo "$as_me:29494: result: $cf_cv_src_modules" >&5 ++echo "$as_me:29490: result: $cf_cv_src_modules" >&5 + echo "${ECHO_T}$cf_cv_src_modules" >&6 + + TEST_ARGS="-L${LIB_DIR} $TEST_ARGS" +@@ -29652,7 +29648,7 @@ + (*-D_XOPEN_SOURCE_EXTENDED*) + test -n "$verbose" && echo " moving _XOPEN_SOURCE_EXTENDED to work around g++ problem" 1>&6 + +-echo "${as_me:-configure}:29655: testing moving _XOPEN_SOURCE_EXTENDED to work around g++ problem ..." 1>&5 ++echo "${as_me:-configure}:29651: 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//'` +@@ -29663,7 +29659,7 @@ + + # Help to automatically enable the extended curses features when using either + # the *-config or the ".pc" files by adding defines. +-echo "$as_me:29666: checking for defines to add to ncurses${USE_CFG_SUFFIX}${cf_config_suffix}-config script" >&5 ++echo "$as_me:29662: checking for defines to add to ncurses${USE_CFG_SUFFIX}${cf_config_suffix}-config script" >&5 + echo $ECHO_N "checking for defines to add to ncurses${USE_CFG_SUFFIX}${cf_config_suffix}-config script... $ECHO_C" >&6 + PKG_CFLAGS= + for cf_loop1 in $CPPFLAGS_after_XOPEN +@@ -29679,7 +29675,7 @@ + done + test "$cf_found" = no && PKG_CFLAGS="$PKG_CFLAGS $cf_loop1" + done +-echo "$as_me:29682: result: $PKG_CFLAGS" >&5 ++echo "$as_me:29678: result: $PKG_CFLAGS" >&5 + echo "${ECHO_T}$PKG_CFLAGS" >&6 + + case "$cf_cv_system_name" in +@@ -29751,7 +29747,7 @@ + cf_filter_syms=$cf_dft_filter_syms + test -n "$verbose" && echo " will map symbols to ABI=$cf_cv_abi_default" 1>&6 + +-echo "${as_me:-configure}:29754: testing will map symbols to ABI=$cf_cv_abi_default ..." 1>&5 ++echo "${as_me:-configure}:29750: testing will map symbols to ABI=$cf_cv_abi_default ..." 1>&5 + + fi + +@@ -29778,7 +29774,7 @@ + + # This is used for the *-config script and *.pc data files. + +-echo "$as_me:29781: checking for linker search path" >&5 ++echo "$as_me:29777: checking for linker search path" >&5 + echo $ECHO_N "checking for linker search path... $ECHO_C" >&6 + if test "${cf_cv_ld_searchpath+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 +@@ -29826,7 +29822,7 @@ + cf_pathlist="$cf_pathlist /lib /usr/lib" + ;; + (*) +- { echo "$as_me:29829: WARNING: problem with Solaris architecture" >&5 ++ { echo "$as_me:29825: WARNING: problem with Solaris architecture" >&5 + echo "$as_me: WARNING: problem with Solaris architecture" >&2;} + ;; + esac +@@ -29867,7 +29863,7 @@ + test -z "$cf_cv_ld_searchpath" && cf_cv_ld_searchpath=/usr/lib + + fi +-echo "$as_me:29870: result: $cf_cv_ld_searchpath" >&5 ++echo "$as_me:29866: result: $cf_cv_ld_searchpath" >&5 + echo "${ECHO_T}$cf_cv_ld_searchpath" >&6 + + LD_SEARCHPATH=`echo "$cf_cv_ld_searchpath"|sed -e 's/ /|/g'` +@@ -29953,7 +29949,7 @@ + : "${CONFIG_STATUS=./config.status}" + ac_clean_files_save=$ac_clean_files + ac_clean_files="$ac_clean_files $CONFIG_STATUS" +-{ echo "$as_me:29956: creating $CONFIG_STATUS" >&5 ++{ echo "$as_me:29952: creating $CONFIG_STATUS" >&5 + echo "$as_me: creating $CONFIG_STATUS" >&6;} + cat >"$CONFIG_STATUS" <<_ACEOF + #! $SHELL +@@ -30134,7 +30130,7 @@ + echo "$ac_cs_version"; exit 0 ;; + --he | --h) + # Conflict between --help and --header +- { { echo "$as_me:30137: error: ambiguous option: $1 ++ { { echo "$as_me:30133: 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;} +@@ -30153,7 +30149,7 @@ + ac_need_defaults=false;; + + # This is an error. +- -*) { { echo "$as_me:30156: error: unrecognized option: $1 ++ -*) { { echo "$as_me:30152: 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;} +@@ -30285,7 +30281,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:30288: error: invalid argument: $ac_config_target" >&5 ++ *) { { echo "$as_me:30284: error: invalid argument: $ac_config_target" >&5 + echo "$as_me: error: invalid argument: $ac_config_target" >&2;} + { (exit 1); exit 1; }; };; + esac +@@ -30813,7 +30809,7 @@ + esac + + if test x"$ac_file" != x-; then +- { echo "$as_me:30816: creating $ac_file" >&5 ++ { echo "$as_me:30812: creating $ac_file" >&5 + echo "$as_me: creating $ac_file" >&6;} + rm -f "$ac_file" + fi +@@ -30831,7 +30827,7 @@ + -) echo "$tmp"/stdin ;; + [\\/$]*) + # Absolute (can't be DOS-style, as IFS=:) +- test -f "$f" || { { echo "$as_me:30834: error: cannot find input file: $f" >&5 ++ test -f "$f" || { { echo "$as_me:30830: error: cannot find input file: $f" >&5 + echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + echo "$f";; +@@ -30844,7 +30840,7 @@ + echo "$srcdir/$f" + else + # /dev/null tree +- { { echo "$as_me:30847: error: cannot find input file: $f" >&5 ++ { { echo "$as_me:30843: error: cannot find input file: $f" >&5 + echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + fi;; +@@ -30860,7 +30856,7 @@ + if test -n "$ac_seen"; then + ac_used=`grep '@datarootdir@' "$ac_item"` + if test -z "$ac_used"; then +- { echo "$as_me:30863: WARNING: datarootdir was used implicitly but not set: ++ { echo "$as_me:30859: 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;} +@@ -30869,7 +30865,7 @@ + fi + ac_seen=`grep '${datarootdir}' "$ac_item"` + if test -n "$ac_seen"; then +- { echo "$as_me:30872: WARNING: datarootdir was used explicitly but not set: ++ { echo "$as_me:30868: 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;} +@@ -30914,7 +30910,7 @@ + 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:30917: WARNING: Variable $ac_name is used but was not set: ++ { echo "$as_me:30913: 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;} +@@ -30925,7 +30921,7 @@ + $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:30928: WARNING: Some variables may not be substituted: ++ { echo "$as_me:30924: WARNING: Some variables may not be substituted: + $ac_seen" >&5 + echo "$as_me: WARNING: Some variables may not be substituted: + $ac_seen" >&2;} +@@ -30974,7 +30970,7 @@ + * ) ac_file_in=$ac_file.in ;; + esac + +- test x"$ac_file" != x- && { echo "$as_me:30977: creating $ac_file" >&5 ++ test x"$ac_file" != x- && { echo "$as_me:30973: creating $ac_file" >&5 + echo "$as_me: creating $ac_file" >&6;} + + # First look for the input files in the build tree, otherwise in the +@@ -30985,7 +30981,7 @@ + -) echo "$tmp"/stdin ;; + [\\/$]*) + # Absolute (can't be DOS-style, as IFS=:) +- test -f "$f" || { { echo "$as_me:30988: error: cannot find input file: $f" >&5 ++ test -f "$f" || { { echo "$as_me:30984: error: cannot find input file: $f" >&5 + echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + echo $f;; +@@ -30998,7 +30994,7 @@ + echo "$srcdir/$f" + else + # /dev/null tree +- { { echo "$as_me:31001: error: cannot find input file: $f" >&5 ++ { { echo "$as_me:30997: error: cannot find input file: $f" >&5 + echo "$as_me: error: cannot find input file: $f" >&2;} + { (exit 1); exit 1; }; } + fi;; +@@ -31056,7 +31052,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:31059: $ac_file is unchanged" >&5 ++ { echo "$as_me:31055: $ac_file is unchanged" >&5 + echo "$as_me: $ac_file is unchanged" >&6;} + else + ac_dir=`$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ +@@ -31443,7 +31439,7 @@ + (cygdll|msysdll|mingw|msvcdll) + test "x$with_shared_cxx" = xno && test -n "$verbose" && echo " overriding CXX_MODEL to SHARED" 1>&6 + +-echo "${as_me:-configure}:31446: testing overriding CXX_MODEL to SHARED ..." 1>&5 ++echo "${as_me:-configure}:31442: testing overriding CXX_MODEL to SHARED ..." 1>&5 + + with_shared_cxx=yes + ;; +Index: configure.in +Prereq: 1.790 +--- ncurses-6.5-20250125+/configure.in 2025-01-18 11:20:02.000000000 +0000 ++++ ncurses-6.5-20250201/configure.in 2025-02-02 00:16:32.000000000 +0000 +@@ -29,7 +29,7 @@ + dnl + dnl Author: Thomas E. Dickey 1995-on + dnl +-dnl $Id: configure.in,v 1.790 2025/01/18 11:20:02 tom Exp $ ++dnl $Id: configure.in,v 1.791 2025/02/02 00:16:32 tom Exp $ + dnl Process this file with autoconf to produce a configure script. + dnl + dnl For additional information, see +@@ -38,7 +38,7 @@ + dnl + dnl --------------------------------------------------------------------------- + AC_PREREQ(2.52.20210101) +-AC_REVISION($Revision: 1.790 $) ++AC_REVISION($Revision: 1.791 $) + AC_INIT(ncurses/base/lib_initscr.c) + AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) + +@@ -1921,7 +1921,7 @@ + ;; + esac + +- AC_CHECK_HEADERS(typeinfo) ++ AC_CHECK_HEADERS(new exception typeinfo) + CF_CXX_IOSTREAM_NAMESPACE + CF_BOOL_DECL + CF_BOOL_SIZE +Index: dist.mk +Prereq: 1.1652 +--- ncurses-6.5-20250125+/dist.mk 2025-01-25 10:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/dist.mk 2025-02-01 10:35:49.000000000 +0000 +@@ -26,7 +26,7 @@ + # use or other dealings in this Software without prior written # + # authorization. # + ############################################################################## +-# $Id: dist.mk,v 1.1652 2025/01/25 10:34:16 tom Exp $ ++# $Id: dist.mk,v 1.1653 2025/02/01 10:35:49 tom Exp $ + # Makefile for creating ncurses distributions. + # + # This only needs to be used directly as a makefile by developers, but +@@ -38,7 +38,7 @@ + # These define the major/minor/patch versions of ncurses. + NCURSES_MAJOR = 6 + NCURSES_MINOR = 5 +-NCURSES_PATCH = 20250125 ++NCURSES_PATCH = 20250201 + + # We don't append the patch to the version, since this only applies to releases + VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR) +Index: doc/html/ada/funcs/T.htm +--- ncurses-6.5-20250125+/doc/html/ada/funcs/T.htm 2023-10-21 17:10:27.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/ada/funcs/T.htm 2025-02-02 00:44:01.000000000 +0000 +@@ -20,8 +20,8 @@ + <li><a href="../terminal_interface-curses-termcap__adb.htm#ref_90_16" target="main">tgetnum</a> + <li><a href="../terminal_interface-curses-termcap__adb.htm#ref_109_16" target="main">tgetstr - terminal_interface-curses-termcap.adb:109</a> + <li><a href="../terminal_interface-curses-termcap__adb.htm#ref_130_16" target="main">tgetstr - terminal_interface-curses-termcap.adb:130</a> +-<li><a href="../terminal_interface-curses-termcap__ads.htm#ref_54_13" target="main">TGoto</a> + <li><a href="../terminal_interface-curses-termcap__adb.htm#ref_152_16" target="main">tgoto</a> ++<li><a href="../terminal_interface-curses-termcap__ads.htm#ref_54_13" target="main">TGoto</a> + <li><a href="../terminal_interface-curses-terminfo__adb.htm#ref_70_16" target="main">tigetflag</a> + <li><a href="../terminal_interface-curses-terminfo__adb.htm#ref_88_16" target="main">tigetstr - terminal_interface-curses-terminfo.adb:88</a> + <li><a href="../terminal_interface-curses-terminfo__adb.htm#ref_109_16" target="main">tigetstr - terminal_interface-curses-terminfo.adb:109</a> +Index: doc/html/ada/terminal_interface-curses-forms__adb.htm +--- ncurses-6.5-20250125+/doc/html/ada/terminal_interface-curses-forms__adb.htm 2022-01-15 20:50:51.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/ada/terminal_interface-curses-forms__adb.htm 2025-02-02 00:44:01.000000000 +0000 +@@ -24,7 +24,7 @@ + <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 2020 Thomas E. Dickey --</em></span> ++<span class="comment"><em>-- Copyright 2020,2025 Thomas E. Dickey --</em></span> + <span class="comment"><em>-- Copyright 1999-2011,2014 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> +@@ -53,8 +53,8 @@ + <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.33 @</em></span> +-<span class="comment"><em>-- @Date: 2020/02/02 23:34:34 @</em></span> ++<span class="comment"><em>-- @Revision: 1.34 @</em></span> ++<span class="comment"><em>-- @Date: 2025/01/24 20:39:23 @</em></span> + <span class="comment"><em>-- Binding Version 01.00</em></span> + <span class="comment"><em>------------------------------------------------------------------------------</em></span> + <b>with</b> Ada.Unchecked_Deallocation; +@@ -1023,7 +1023,7 @@ + (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_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_1009_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>for</b> <span class="symbol"><a name="ref_1009_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_1009_14">I</a>) /= <a href="terminal_interface-curses-forms__ads.htm#ref_55_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_1009_14">I</a>)); + <b>end</b> <b>if</b>; +Index: doc/html/ada/terminal_interface-curses-menus__adb.htm +--- ncurses-6.5-20250125+/doc/html/ada/terminal_interface-curses-menus__adb.htm 2022-01-15 20:50:51.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/ada/terminal_interface-curses-menus__adb.htm 2025-02-02 00:44:01.000000000 +0000 +@@ -24,7 +24,7 @@ + <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 2018,2020 Thomas E. Dickey --</em></span> ++<span class="comment"><em>-- Copyright 2018-2020,2025 Thomas E. Dickey --</em></span> + <span class="comment"><em>-- Copyright 1999-2011,2014 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> +@@ -53,8 +53,8 @@ + <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.34 @</em></span> +-<span class="comment"><em>-- @Date: 2020/02/02 23:34:34 @</em></span> ++<span class="comment"><em>-- @Revision: 1.35 @</em></span> ++<span class="comment"><em>-- @Date: 2025/01/24 20:39:23 @</em></span> + <span class="comment"><em>-- Binding Version 01.00</em></span> + <span class="comment"><em>------------------------------------------------------------------------------</em></span> + <b>with</b> Ada.Unchecked_Deallocation; +@@ -895,7 +895,7 @@ + (Item_Array, <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>); + <b>begin</b> + <b>if</b> <a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a> /= <b>null</b> <b>and</b> <b>then</b> <a href="terminal_interface-curses-menus__ads.htm#ref_180_20">Free_Items</a> <b>then</b> +- <b>for</b> <span class="symbol"><a name="ref_881_14">I</a></span> <b>in</b> <a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>'First .. (<a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>'Last - 1) <b>loop</b> ++ <b>for</b> <span class="symbol"><a name="ref_881_14">I</a></span> <b>in</b> <a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>'First .. <a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>'Last - 1 <b>loop</b> + <b>if</b> <a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>.<b>all</b> (<a href="terminal_interface-curses-menus__adb.htm#ref_881_14">I</a>) /= <a href="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Item</a> <b>then</b> + <a href="terminal_interface-curses-menus__ads.htm#ref_202_14">Delete</a> (<a href="terminal_interface-curses-menus__ads.htm#ref_179_20">IA</a>.<b>all</b> (<a href="terminal_interface-curses-menus__adb.htm#ref_881_14">I</a>)); + <b>end</b> <b>if</b>; +Index: doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm +--- ncurses-6.5-20250125+/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2022-01-15 20:50:51.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/ada/terminal_interface-curses-panels-user_data__adb.htm 2025-02-02 00:44:01.000000000 +0000 +@@ -24,7 +24,7 @@ + <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 2020 Thomas E. Dickey --</em></span> ++<span class="comment"><em>-- Copyright 2020,2025 Thomas E. Dickey --</em></span> + <span class="comment"><em>-- Copyright 1999-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> +@@ -53,7 +53,7 @@ + <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>-- @Revision: 1.14 @</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; +Index: doc/html/man/curs_add_wch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_add_wch.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_add_wch.3x.html 2025-02-02 00:43:56.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_add_wch.3x,v 1.88 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_add_wch.3x,v 1.102 2025/02/01 23:54:03 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_add_wch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_add_wch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_add_wch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_add_wch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> + +@@ -58,11 +58,71 @@ + <STRONG>int</STRONG> <STRONG>add_wch(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>wadd_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>mvadd_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvwadd_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvwadd_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + + <STRONG>int</STRONG> <STRONG>echo_wchar(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>wecho_wchar(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + ++ <EM>/*</EM> <EM>(integer)</EM> <EM>constants</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_BLOCK;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_BOARD;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_BTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_BULLET;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_CKBOARD;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_DARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_DEGREE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_DIAMOND;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_HLINE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LANTERN;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LLCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LRCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_PLMINUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_PLUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_RARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_RTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_S1;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_S9;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_TTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_UARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_ULCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_URCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_VLINE;</STRONG> ++ <EM>/*</EM> <EM>extensions</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_GEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_LEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_NEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_PI;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_S3;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_S7;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_STERLING;</STRONG> ++ <EM>/*</EM> <EM>extensions</EM> <EM>for</EM> <EM>thick</EM> <EM>lines</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_BTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_HLINE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_LLCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_LRCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_LTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_PLUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_RTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_TTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_ULCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_URCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_T_VLINE;</STRONG> ++ <EM>/*</EM> <EM>extensions</EM> <EM>for</EM> <EM>double</EM> <EM>lines</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_BTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_HLINE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_LLCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_LRCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_LTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_PLUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_RTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_TTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_ULCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_URCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>WACS_D_VLINE;</STRONG> ++ + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> + +@@ -154,74 +214,74 @@ + <STRONG>Unicode</STRONG> <STRONG>ACS</STRONG> <STRONG>acsc</STRONG> + <STRONG>Symbol</STRONG> <STRONG>Default</STRONG> <STRONG>Default</STRONG> <STRONG>char</STRONG> <STRONG>Glyph</STRONG> <STRONG>Name</STRONG> + ------------------------------------------------------------------------ +- <STRONG>WACS_BLOCK</STRONG> 0x25ae # 0 solid square block +- <STRONG>WACS_BOARD</STRONG> 0x2592 # h board of squares +- <STRONG>WACS_BTEE</STRONG> 0x2534 + v bottom tee +- <STRONG>WACS_BULLET</STRONG> 0x00b7 o ~ bullet +- <STRONG>WACS_CKBOARD</STRONG> 0x2592 : a checker board (stipple) +- <STRONG>WACS_DARROW</STRONG> 0x2193 v . arrow pointing down +- <STRONG>WACS_DEGREE</STRONG> 0x00b0 ' f degree symbol +- <STRONG>WACS_DIAMOND</STRONG> 0x25c6 + ` diamond +- <STRONG>WACS_GEQUAL</STRONG> 0x2265 > > greater-than-or-equal-to +- <STRONG>WACS_HLINE</STRONG> 0x2500 - q horizontal line +- <STRONG>WACS_LANTERN</STRONG> 0x2603 # i lantern symbol +- <STRONG>WACS_LARROW</STRONG> 0x2190 < , arrow pointing left +- <STRONG>WACS_LEQUAL</STRONG> 0x2264 < y less-than-or-equal-to +- <STRONG>WACS_LLCORNER</STRONG> 0x2514 + m lower left-hand corner +- <STRONG>WACS_LRCORNER</STRONG> 0x2518 + j lower right-hand corner +- <STRONG>WACS_LTEE</STRONG> 0x2524 + t left tee +- <STRONG>WACS_NEQUAL</STRONG> 0x2260 ! | not-equal +- <STRONG>WACS_PI</STRONG> 0x03c0 * { greek pi +- <STRONG>WACS_PLMINUS</STRONG> 0x00b1 # g plus/minus +- <STRONG>WACS_PLUS</STRONG> 0x253c + n plus +- <STRONG>WACS_RARROW</STRONG> 0x2192 > + arrow pointing right +- <STRONG>WACS_RTEE</STRONG> 0x251c + u right tee +- <STRONG>WACS_S1</STRONG> 0x23ba - o scan line 1 +- <STRONG>WACS_S3</STRONG> 0x23bb - p scan line 3 +- <STRONG>WACS_S7</STRONG> 0x23bc - r scan line 7 +- <STRONG>WACS_S9</STRONG> 0x23bd _ s scan line 9 +- <STRONG>WACS_STERLING</STRONG> 0x00a3 f } pound-sterling symbol +- +- <STRONG>WACS_TTEE</STRONG> 0x252c + w top tee +- <STRONG>WACS_UARROW</STRONG> 0x2191 ^ - arrow pointing up +- <STRONG>WACS_ULCORNER</STRONG> 0x250c + l upper left-hand corner +- <STRONG>WACS_URCORNER</STRONG> 0x2510 + k upper right-hand corner +- <STRONG>WACS_VLINE</STRONG> 0x2502 | x vertical line ++ <STRONG>WACS_BLOCK</STRONG> U+25ae # 0 solid square block ++ <STRONG>WACS_BOARD</STRONG> U+2592 # h board of squares ++ <STRONG>WACS_BTEE</STRONG> U+2534 + v bottom tee ++ <STRONG>WACS_BULLET</STRONG> U+00b7 o ~ bullet ++ <STRONG>WACS_CKBOARD</STRONG> U+2592 : a checker board (stipple) ++ <STRONG>WACS_DARROW</STRONG> U+2193 v . arrow pointing down ++ <STRONG>WACS_DEGREE</STRONG> U+00b0 ' f degree symbol ++ <STRONG>WACS_DIAMOND</STRONG> U+25c6 + ` diamond ++ <STRONG>WACS_GEQUAL</STRONG> U+2265 > > greater-than-or-equal-to ++ <STRONG>WACS_HLINE</STRONG> U+2500 - q horizontal line ++ <STRONG>WACS_LANTERN</STRONG> U+2603 # i lantern symbol ++ <STRONG>WACS_LARROW</STRONG> U+2190 < , arrow pointing left ++ <STRONG>WACS_LEQUAL</STRONG> U+2264 < y less-than-or-equal-to ++ <STRONG>WACS_LLCORNER</STRONG> U+2514 + m lower left-hand corner ++ <STRONG>WACS_LRCORNER</STRONG> U+2518 + j lower right-hand corner ++ <STRONG>WACS_LTEE</STRONG> U+2524 + t left tee ++ <STRONG>WACS_NEQUAL</STRONG> U+2260 ! | not-equal ++ <STRONG>WACS_PI</STRONG> U+03c0 * { greek pi ++ <STRONG>WACS_PLMINUS</STRONG> U+00b1 # g plus/minus ++ <STRONG>WACS_PLUS</STRONG> U+253c + n plus ++ <STRONG>WACS_RARROW</STRONG> U+2192 > + arrow pointing right ++ <STRONG>WACS_RTEE</STRONG> U+251c + u right tee ++ <STRONG>WACS_S1</STRONG> U+23ba - o scan line 1 ++ <STRONG>WACS_S3</STRONG> U+23bb - p scan line 3 ++ <STRONG>WACS_S7</STRONG> U+23bc - r scan line 7 ++ <STRONG>WACS_S9</STRONG> U+23bd _ s scan line 9 ++ <STRONG>WACS_STERLING</STRONG> U+00a3 f } pound-sterling symbol ++ <STRONG>WACS_TTEE</STRONG> U+252c + w top tee ++ <STRONG>WACS_UARROW</STRONG> U+2191 ^ - arrow pointing up ++ <STRONG>WACS_ULCORNER</STRONG> U+250c + l upper left-hand corner ++ <STRONG>WACS_URCORNER</STRONG> U+2510 + k upper right-hand corner ++ ++ <STRONG>WACS_VLINE</STRONG> U+2502 | x vertical line + +- The wide-character configuration of <EM>ncurses</EM> also defines symbols for +- thick lines (<STRONG>acsc</STRONG> "J" to "V"): ++ The <EM>ncurses</EM> wide API also defines symbols for thick lines (<STRONG>acsc</STRONG> "J" ++ through "N", "T" through "X", and "Q"): + + <STRONG>Unicode</STRONG> <STRONG>ASCII</STRONG> <STRONG>acsc</STRONG> + <STRONG>ACS</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Default</STRONG> <STRONG>Char</STRONG> <STRONG>Glyph</STRONG> <STRONG>Name</STRONG> + ------------------------------------------------------------------------ +- <STRONG>WACS_T_BTEE</STRONG> 0x253b + V thick tee pointing up +- <STRONG>WACS_T_HLINE</STRONG> 0x2501 - Q thick horizontal line +- <STRONG>WACS_T_LLCORNER</STRONG> 0x2517 + M thick lower left corner +- <STRONG>WACS_T_LRCORNER</STRONG> 0x251b + J thick lower right corner +- <STRONG>WACS_T_LTEE</STRONG> 0x252b + T thick tee pointing right +- <STRONG>WACS_T_PLUS</STRONG> 0x254b + N thick large plus +- <STRONG>WACS_T_RTEE</STRONG> 0x2523 + U thick tee pointing left +- <STRONG>WACS_T_TTEE</STRONG> 0x2533 + W thick tee pointing down +- <STRONG>WACS_T_ULCORNER</STRONG> 0x250f + L thick upper left corner +- <STRONG>WACS_T_URCORNER</STRONG> 0x2513 + K thick upper right corner +- <STRONG>WACS_T_VLINE</STRONG> 0x2503 | X thick vertical line ++ <STRONG>WACS_T_BTEE</STRONG> U+253b + V thick tee pointing up ++ <STRONG>WACS_T_HLINE</STRONG> U+2501 - Q thick horizontal line ++ <STRONG>WACS_T_LLCORNER</STRONG> U+2517 + M thick lower left corner ++ <STRONG>WACS_T_LRCORNER</STRONG> U+251b + J thick lower right corner ++ <STRONG>WACS_T_LTEE</STRONG> U+252b + T thick tee pointing right ++ <STRONG>WACS_T_PLUS</STRONG> U+254b + N thick large plus ++ <STRONG>WACS_T_RTEE</STRONG> U+2523 + U thick tee pointing left ++ <STRONG>WACS_T_TTEE</STRONG> U+2533 + W thick tee pointing down ++ <STRONG>WACS_T_ULCORNER</STRONG> U+250f + L thick upper left corner ++ <STRONG>WACS_T_URCORNER</STRONG> U+2513 + K thick upper right corner ++ <STRONG>WACS_T_VLINE</STRONG> U+2503 | X thick vertical line + +- and for double-lines (<STRONG>acsc</STRONG> "A" to "I"): ++ and for double lines (<STRONG>acsc</STRONG> "A" through "I", plus "R" and "Y"): + + <STRONG>Unicode</STRONG> <STRONG>ASCII</STRONG> <STRONG>acsc</STRONG> + <STRONG>ACS</STRONG> <STRONG>Name</STRONG> <STRONG>Default</STRONG> <STRONG>Default</STRONG> <STRONG>Char</STRONG> <STRONG>Glyph</STRONG> <STRONG>Name</STRONG> + ------------------------------------------------------------------------ +- <STRONG>WACS_D_BTEE</STRONG> 0x2569 + H double tee pointing up +- <STRONG>WACS_D_HLINE</STRONG> 0x2550 - R double horizontal line +- <STRONG>WACS_D_LLCORNER</STRONG> 0x255a + D double lower left corner +- <STRONG>WACS_D_LRCORNER</STRONG> 0x255d + A double lower right corner +- <STRONG>WACS_D_LTEE</STRONG> 0x2560 + F double tee pointing right +- <STRONG>WACS_D_PLUS</STRONG> 0x256c + E double large plus +- <STRONG>WACS_D_RTEE</STRONG> 0x2563 + G double tee pointing left +- <STRONG>WACS_D_TTEE</STRONG> 0x2566 + I double tee pointing down +- <STRONG>WACS_D_ULCORNER</STRONG> 0x2554 + C double upper left corner +- <STRONG>WACS_D_URCORNER</STRONG> 0x2557 + B double upper right corner +- <STRONG>WACS_D_VLINE</STRONG> 0x2551 | Y double vertical line ++ <STRONG>WACS_D_BTEE</STRONG> U+2569 + H double tee pointing up ++ <STRONG>WACS_D_HLINE</STRONG> U+2550 - R double horizontal line ++ <STRONG>WACS_D_LLCORNER</STRONG> U+255a + D double lower left corner ++ <STRONG>WACS_D_LRCORNER</STRONG> U+255d + A double lower right corner ++ <STRONG>WACS_D_LTEE</STRONG> U+2560 + F double tee pointing right ++ <STRONG>WACS_D_PLUS</STRONG> U+256c + E double large plus ++ <STRONG>WACS_D_RTEE</STRONG> U+2563 + G double tee pointing left ++ <STRONG>WACS_D_TTEE</STRONG> U+2566 + I double tee pointing down ++ <STRONG>WACS_D_ULCORNER</STRONG> U+2554 + C double upper left corner ++ <STRONG>WACS_D_URCORNER</STRONG> U+2557 + B double upper right corner ++ <STRONG>WACS_D_VLINE</STRONG> U+2551 | Y double vertical line + + Unicode's descriptions for these characters differs slightly from + <EM>ncurses</EM>, by introducing the term "light" (along with less important +@@ -242,84 +302,91 @@ + + <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized, + +- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM>, ++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null ++ pointer, + +- <STRONG>o</STRONG> wrapping to a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> has not +- been called on <EM>win</EM> when writing to its bottom right location is +- attempted, or ++ <STRONG>o</STRONG> wrapping to a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> has not ++ been called on <EM>win</EM> (or <STRONG>stdscr</STRONG>, as applicable) when writing to its ++ bottom right location is attempted, or + +- <STRONG>o</STRONG> it is not possible to add a complete character at the cursor ++ <STRONG>o</STRONG> it is not possible to add a complete character at the cursor + position. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> +- <STRONG>add_wch</STRONG>, <STRONG>mvadd_wch</STRONG>, <STRONG>mvwadd_wch</STRONG>, and <STRONG>echo_wchar</STRONG> may be implemented as ++ <STRONG>add_wch</STRONG>, <STRONG>mvadd_wch</STRONG>, <STRONG>mvwadd_wch</STRONG>, and <STRONG>echo_wchar</STRONG> may be implemented as + macros. + + + </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE> +- +-</PRE><H3><a name="h3-TABSIZE">TABSIZE</a></H3><PRE> +- The <STRONG>TABSIZE</STRONG> variable is implemented in SVr4 and other versions of +- <EM>curses</EM>, but is not specified by X/Open Curses (see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>). ++ The symbols (<EM>WACS</EM><STRONG>_</STRONG><EM>S3</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>S7</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>PI</EM>, ++ <EM>WACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>, and <EM>WACS</EM><STRONG>_</STRONG><EM>STERLING</EM>) are not standard. However, many ++ publicly available <EM>terminfo</EM> entries include <EM>acs</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) ++ capabilities in which their key characters (<STRONG>pryz{|}</STRONG>) are embedded, and ++ a second-hand list of their character descriptions has come to light. ++ The <EM>ncurses</EM> developers invented WACS-prefixed names for them. + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> ++ Applications employing <EM>ncurses</EM> extensions should condition their use on ++ the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro. ++ + These functions are described in X/Open Curses Issue 4. It specifies + no error conditions for them. + + The defaults specified for forms-drawing characters apply in the POSIX + locale. X/Open Curses makes it clear that the WACS_ symbols should be +- defined as a pointer to <STRONG>cchar_t</STRONG> data, e.g., in the discussion of +- <STRONG>border_set</STRONG>. A few implementations are problematic: ++ defined as a pointer to <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> data, e.g., in the discussion of ++ <EM>border</EM><STRONG>_</STRONG><EM>set</EM>. A few implementations are problematic: + +- <STRONG>o</STRONG> NetBSD curses defines the symbols as a <STRONG>wchar_t</STRONG> within a <STRONG>cchar_t</STRONG>. ++ <STRONG>o</STRONG> NetBSD <EM>curses</EM> defines the symbols as a <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> within a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. + +- <STRONG>o</STRONG> HP-UX curses equates some of the <STRONG>ACS_</STRONG> symbols to the analogous +- <STRONG>WACS_</STRONG> symbols as if the <STRONG>ACS_</STRONG> symbols were wide characters. The ++ <STRONG>o</STRONG> HP-UX <EM>curses</EM> equates some of the <EM>ACS</EM><STRONG>_</STRONG> symbols to the analogous ++ <EM>WACS</EM><STRONG>_</STRONG> symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters. The + misdefined symbols are the arrows and other symbols which are not + used for line-drawing. + + X/Open Curses does not specify symbols for thick- or double-lines. +- SVr4 curses implementations defined their line-drawing symbols in terms +- of intermediate symbols. This implementation extends those symbols, +- providing new definitions which are not in the SVr4 implementations. ++ SVr4 <EM>curses</EM> implementations defined their line-drawing symbols in terms ++ of intermediate symbols. <EM>ncurses</EM> extends those symbols, providing new ++ definitions not found in SVr4 implementations. + + Not all Unicode-capable terminals provide support for VT100-style +- alternate character sets (i.e., the <STRONG>acsc</STRONG> capability), with their +- corresponding line-drawing characters. X/Open Curses did not address +- the aspect of integrating Unicode with line-drawing characters. +- Existing implementations of Unix curses (AIX, HP-UX, Solaris) use only +- the <STRONG>acsc</STRONG> character-mapping to provide this feature. As a result, those +- implementations can only use single-byte line-drawing characters. +- <EM>ncurses</EM> 5.3 (2002) provided a table of Unicode values to solve these +- problems. NetBSD curses incorporated that table in 2010. +- +- In this implementation, the Unicode values are used instead of the +- terminal description's <STRONG>acsc</STRONG> mapping as discussed in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> for the +- environment variable <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>UTF8</EM><STRONG>_</STRONG><EM>ACS</EM>. In contrast, for the same +- cases, the line-drawing characters described in <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG> will use only +- the ASCII default values. ++ alternate character sets (i.e., the <EM>acsc</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) capability), with ++ their corresponding line-drawing characters. X/Open Curses did not ++ address the aspect of integrating Unicode with line-drawing characters. ++ Existing implementations of System V <EM>curses</EM> (AIX, HP-UX, Solaris) use ++ only the <EM>acsc</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) character-mapping to provide this feature. ++ As a result, those implementations can use only single-byte line- ++ drawing characters. <EM>ncurses</EM> 5.3 (2002) provided a table of Unicode ++ values to solve these problems. NetBSD <EM>curses</EM> incorporated that table ++ in 2010. ++ ++ <EM>ncurses</EM> uses the Unicode values instead of the terminal type ++ description's <EM>acsc</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) mapping as discussed in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> for ++ the environment variable <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>UTF8</EM><STRONG>_</STRONG><EM>ACS</EM>. In contrast, for the ++ same cases, the line-drawing characters described in <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG> will use ++ only the ASCII default values. + +- Having Unicode available does not solve all of the problems with line- +- drawing for curses: ++ Having Unicode available does not solve all of the problems with line- ++ drawing for <EM>curses</EM>: + +- <STRONG>o</STRONG> The closest Unicode equivalents to the VT100 graphics <EM>S1</EM>, <EM>S3</EM>, <EM>S7</EM> +- and <EM>S9</EM> frequently are not displayed at the regular intervals which ++ <STRONG>o</STRONG> The closest Unicode equivalents to the VT100 graphics <EM>S1</EM>, <EM>S3</EM>, <EM>S7</EM>, ++ and <EM>S9</EM> frequently are not displayed at the regular intervals which + the terminal used. + +- <STRONG>o</STRONG> The <EM>lantern</EM> is a special case. It originated with the AT&T 4410 +- terminal in the early 1980s. There is no accessible documentation ++ <STRONG>o</STRONG> The <EM>lantern</EM> is a special case. It originated with the AT&T 4410 ++ terminal in the early 1980s. There is no accessible documentation + depicting the lantern symbol on the AT&T terminal. + + Lacking documentation, most readers assume that a <EM>storm</EM> <EM>lantern</EM> was + intended. But there are several possibilities, all with problems. + +- Unicode 6.0 (2010) does provide two lantern symbols: U+1F383 and +- U+1F3EE. Those were not available in 2002, and are irrelevant ++ Unicode 6.0 (2010) does provide two lantern symbols: U+1F383 and ++ U+1F3EE. Those were not available in 2002, and are irrelevant + since they lie outside the Basic Multilingual Plane and as a result + are unavailable on many terminals. They are not storm lanterns, in + any case. +@@ -327,20 +394,20 @@ + Most <EM>storm</EM> <EM>lanterns</EM> have a tapering glass chimney (to guard against + tipping); some have a wire grid protecting the chimney. + +- For the tapering appearance, U+2603 was adequate. In use on a ++ For the tapering appearance, U+2603 was adequate. In use on a + terminal, no one can tell what the image represents. Unicode calls + it a snowman. + + Others have suggested these alternatives: <section> U+00A7 (section +- mark), <Theta> U+0398 (theta), <Phi> U+03A6 (phi), <delta> U+03B4 ++ mark), <Theta> U+0398 (theta), <Phi> U+03A6 (phi), <delta> U+03B4 + (delta), U+2327 (x in a rectangle), U+256C (forms double vertical + and horizontal), and U+2612 (ballot box with x). + + + </PRE><H3><a name="h3-Complex-Characters">Complex Characters</a></H3><PRE> +- The complex character type <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> can store more than one wide +- character (<EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>). X/Open Curses does not mention this possibility, +- specifying behavior only where <EM>wch</EM> is a single character, either ++ The complex character type <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> can store more than one wide ++ character (<EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>). X/Open Curses does not mention this possibility, ++ specifying behavior only where <EM>wch</EM> is a single character, either + spacing or non-spacing. + + <EM>ncurses</EM> assumes that <EM>wch</EM> is constructed using <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>, and in turn +@@ -351,18 +418,25 @@ + + <STRONG>o</STRONG> holds one non-spacing character. + +- In the latter case, <EM>ncurses</EM> adds the non-spacing character to the ++ In the latter case, <EM>ncurses</EM> adds the non-spacing character to the + active complex character. + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified functions named <EM>waddwch</EM> and <EM>wechowchar</EM> (and the usual +- variants). These were later additions to SVr4.<EM>x</EM>, not appearing in the +- first SVr4 (1989). They differed from X/Open's later <EM>wadd</EM><STRONG>_</STRONG><EM>wch</EM> and +- <EM>wecho</EM><STRONG>_</STRONG><EM>wchar</EM> in that they each took an argument of type <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> instead +- of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition (SVID) Version 4 of the same year ++ specified functions named <EM>waddwch</EM> (and the usual variants), <EM>echowchar</EM>, ++ and <EM>wechowchar</EM>. These were later additions to SVr4.<EM>x</EM>, not appearing in ++ the first SVr4 (1989). They differed from X/Open's later <EM>wadd</EM><STRONG>_</STRONG><EM>wch</EM> and ++ <EM>wecho</EM><STRONG>_</STRONG><EM>wchar</EM> in that they each took an argument of type <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> instead ++ of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. SVID defined no <EM>WACS</EM><STRONG>_</STRONG> symbols. ++ ++ X/Open Curses Issue 4 also defined many of the <EM>WACS</EM><STRONG>_</STRONG> constants, ++ excepting <EM>WACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>PI</EM>, <EM>WACS</EM><STRONG>_</STRONG><EM>S3</EM>, ++ <EM>WACS</EM><STRONG>_</STRONG><EM>S7</EM>, and <EM>WACS</EM><STRONG>_</STRONG><EM>STERLING</EM>; and those for drawing thick and double ++ lines. ++ ++ <EM>ncurses</EM> 5.3 (2002) furnished the remaining <EM>WACS</EM><STRONG>_</STRONG> constants. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -375,7 +449,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -390,11 +464,7 @@ + </li> + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> + <li><a href="#h2-NOTES">NOTES</a></li> +-<li><a href="#h2-EXTENSIONS">EXTENSIONS</a> +-<ul> +-<li><a href="#h3-TABSIZE">TABSIZE</a></li> +-</ul> +-</li> ++<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a> + <ul> + <li><a href="#h3-Complex-Characters">Complex Characters</a></li> +Index: doc/html/man/curs_add_wchstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_add_wchstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_add_wchstr.3x.html 2025-02-02 00:43:56.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_add_wchstr.3x,v 1.52 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_add_wchstr.3x,v 1.55 2025/02/01 22:57:57 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_add_wchstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_add_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_add_wchstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_add_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> + +@@ -118,12 +118,12 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4. The +- System V Interface Definition Version 4 (1995), specified functions +- named <EM>waddwchstr</EM> and <EM>waddwchnstr</EM> (and the usual variants). These were +- later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). +- They differed from X/Open's later <EM>wadd</EM><STRONG>_</STRONG><EM>wchstr</EM> and <EM>wadd</EM><STRONG>_</STRONG><EM>wchnstr</EM> in that +- they each took an argument of type <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> instead of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified ++ functions named <EM>waddwchstr</EM> and <EM>waddwchnstr</EM> (and the usual variants). ++ These were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 ++ (1989). They differed from X/Open's later <EM>wadd</EM><STRONG>_</STRONG><EM>wchstr</EM> and <EM>wadd</EM><STRONG>_</STRONG><EM>wchnstr</EM> ++ in that they each took an argument of type <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> instead of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -134,7 +134,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_addch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_addch.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_addch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_addch.3x,v 1.113 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_addch.3x,v 1.122 2025/02/01 23:54:03 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_addch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_addch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_addch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_addch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> + +@@ -63,6 +63,41 @@ + <STRONG>int</STRONG> <STRONG>echochar(const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>wechochar(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG> + ++ <EM>/*</EM> <EM>(integer)</EM> <EM>constants</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_BLOCK;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_BOARD;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_BTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_BULLET;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_CKBOARD;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_DARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_DEGREE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_DIAMOND;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_HLINE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LANTERN;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LLCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LRCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_PLMINUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_PLUS;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_RARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_RTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_S1;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_S9;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_TTEE;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_UARROW;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_ULCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_URCORNER;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_VLINE;</STRONG> ++ <EM>/*</EM> <EM>extensions</EM> <EM>*/</EM> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_GEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_LEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_NEQUAL;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_PI;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_S3;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_S7;</STRONG> ++ /* <EM>...</EM> <EM>*/</EM> <STRONG>ACS_STERLING;</STRONG> ++ + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> + +@@ -144,6 +179,7 @@ + ------------------------------------------------------------------------ + <STRONG>ACS_BLOCK</STRONG> # 0 solid square block + <STRONG>ACS_BOARD</STRONG> # h board of squares ++ + <STRONG>ACS_BTEE</STRONG> + v bottom tee + <STRONG>ACS_BULLET</STRONG> o ~ bullet + <STRONG>ACS_CKBOARD</STRONG> : a checker board (stipple) +@@ -183,26 +219,27 @@ + + <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized, + +- <STRONG>o</STRONG> <EM>win</EM> is <EM>NULL</EM>, ++ <STRONG>o</STRONG> (for functions taking a <EM>WINDOW</EM> pointer argument) <EM>win</EM> is a null ++ pointer, + +- <STRONG>o</STRONG> wrapping to a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> has not +- been called on <EM>win</EM> when a write to its bottom right location is +- attempted, or ++ <STRONG>o</STRONG> wrapping to a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> has not ++ been called on <EM>win</EM> (or <STRONG>stdscr</STRONG>, as applicable) when a write to its ++ bottom right location is attempted, or + +- <STRONG>o</STRONG> it is not possible to add a complete character at the cursor ++ <STRONG>o</STRONG> it is not possible to add a complete character at the cursor + position. + + The last may be due to different causes: + +- <STRONG>o</STRONG> conversion of a wide character to a multibyte character sequence ++ <STRONG>o</STRONG> conversion of a wide character to a multibyte character sequence + can fail, or + +- <STRONG>o</STRONG> at least one of the bytes resulting from wide character conversion +- to a multibyte character sequence cannot be added to the window. +- See section "PORTABILITY" below regarding the use of <STRONG>waddch</STRONG> with ++ <STRONG>o</STRONG> at least one of the bytes resulting from wide character conversion ++ to a multibyte character sequence cannot be added to the window. ++ See section "PORTABILITY" below regarding the use of <STRONG>waddch</STRONG> with + wide characters. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + +@@ -211,10 +248,13 @@ + + + </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE> +- +-</PRE><H3><a name="h3-TABSIZE">TABSIZE</a></H3><PRE> +- SVr4 and other versions of <EM>curses</EM> implement the <STRONG>TABSIZE</STRONG> variable, but +- X/Open Curses does not specify it; see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>. ++ The symbols (<EM>ACS</EM><STRONG>_</STRONG><EM>S3</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>S7</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>PI</EM>, ++ <EM>ACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>, and <EM>ACS</EM><STRONG>_</STRONG><EM>STERLING</EM>) were not documented in any publicly ++ released System V and are not standard. However, many publicly ++ available <EM>terminfo</EM> entries include <EM>acs</EM><STRONG>_</STRONG><EM>chars</EM> (<STRONG>acsc</STRONG>) capabilities in ++ which their key characters (<STRONG>pryz{|}</STRONG>) are embedded, and a second-hand ++ list of their character descriptions has come to light. The <EM>ncurses</EM> ++ developers invented ACS-prefixed names for them. + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> +@@ -232,23 +272,23 @@ + + + </PRE><H3><a name="h3-ACS-Symbols">ACS Symbols</a></H3><PRE> +- X/Open Curses states that the <STRONG>ACS_</STRONG> definitions are <EM>char</EM> constants. ++ X/Open Curses states that the <EM>ACS</EM><STRONG>_</STRONG> definitions are <EM>char</EM> constants. + Some implementations are problematic. + + <STRONG>o</STRONG> Solaris <EM>curses</EM>, for example, defines the ACS symbols as constants; + others define them as elements of an array. + +- This implementation uses an array, <STRONG>acs_map</STRONG>, as did SVr4 <EM>curses</EM>. +- NetBSD also uses an array, actually named <STRONG>_acs_char</STRONG>, with a <STRONG>#define</STRONG> +- for compatibility. ++ SVr4 used an array, <EM>acs</EM><STRONG>_</STRONG><EM>map</EM>, as does <EM>ncurses</EM>. NetBSD <EM>curses</EM> also ++ uses an array, actually named <STRONG>_</STRONG><EM>acs</EM><STRONG>_</STRONG><EM>char</EM>, with a "#define" for ++ compatibility. + +- <STRONG>o</STRONG> HP-UX <EM>curses</EM> equates some of the <STRONG>ACS_</STRONG> symbols to the analogous +- <STRONG>WACS_</STRONG> symbols as if the <STRONG>ACS_</STRONG> symbols were wide characters (see ++ <STRONG>o</STRONG> HP-UX <EM>curses</EM> equates some of the <EM>ACS</EM><STRONG>_</STRONG> symbols to the analogous ++ <EM>WACS</EM><STRONG>_</STRONG> symbols as if the <EM>ACS</EM><STRONG>_</STRONG> symbols were wide characters (see + <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>). The misdefined symbols are the arrows and + others that are not used for line drawing. + + <STRONG>o</STRONG> X/Open Curses (Issues 2 through 7) has a typographical error for +- the <STRONG>ACS_LANTERN</STRONG> symbol, equating its "VT100+ Character" to "I" ++ the <EM>ACS</EM><STRONG>_</STRONG><EM>LANTERN</EM> symbol, equating its "VT100+ Character" to "I" + (capital I), while the header files for SVr4 <EM>curses</EM> and other + implementations use "i" (small i). + +@@ -258,15 +298,7 @@ + other hand, its <STRONG>gs6300</STRONG> (AT&T PC6300 with EMOTS Terminal Emulator) + description uses lowercase i. + +- Some ACS symbols (<STRONG>ACS_S3</STRONG>, <STRONG>ACS_S7</STRONG>, <STRONG>ACS_LEQUAL</STRONG>, <STRONG>ACS_GEQUAL</STRONG>, <STRONG>ACS_PI</STRONG>, +- <STRONG>ACS_NEQUAL</STRONG>, and <STRONG>ACS_STERLING</STRONG>) were not documented in any publicly +- released System V. However, many publicly available <EM>terminfo</EM> entries +- include <STRONG>acsc</STRONG> capabilities in which their key characters (<STRONG>pryz{|}</STRONG>) are +- embedded, and a second-hand list of their character descriptions has +- come to light. The <EM>ncurses</EM> developers invented ACS-prefixed names for +- them. +- +- The <EM>displayed</EM> values of <STRONG>ACS_</STRONG> constants depend on ++ The <EM>displayed</EM> values of <EM>ACS</EM><STRONG>_</STRONG> constants depend on + + <STRONG>o</STRONG> the <EM>ncurses</EM> ABI--for example, wide-character versus non-wide- + character configurations (the former is capable of displaying +@@ -280,23 +312,23 @@ + + + </PRE><H3><a name="h3-Character-Set">Character Set</a></H3><PRE> +- X/Open Curses assumes that the parameter passed to <STRONG>waddch</STRONG> contains a ++ X/Open Curses assumes that the parameter passed to <EM>waddch</EM> contains a + single character. That character may have been more than eight bits + wide in an SVr3 or SVr4 implementation, but X/Open Curses leaves the + width of a non-wide character code unspecified. The standard further + does not specify the internal structure of a <EM>chtype</EM>, though the use of + bit operations to combine the character code with attributes and a +- color pair identifier into a <EM>chtype</EM> for passage to <STRONG>waddch</STRONG> is common. A ++ color pair identifier into a <EM>chtype</EM> for passage to <EM>waddch</EM> is common. A + portable application uses only the macros discussed in <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> to + manipulate a <EM>chtype</EM>. + + In <EM>ncurses</EM>, <EM>chtype</EM> holds an eight-bit character, but the library allows + a multibyte character sequence to be passed via a succession of calls +- to <STRONG>waddch</STRONG>. Other implementations do not; a <STRONG>waddch</STRONG> call transmits ++ to <EM>waddch</EM>. Other implementations do not; a <EM>waddch</EM> call transmits + exactly one character, which may be rendered in one or more screen + locations depending on whether it is printable (see <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>). + Depending on the locale, <EM>ncurses</EM> inspects the byte passed in each +- <STRONG>waddch</STRONG> call and checks whether the latest call continues a multibyte ++ <EM>waddch</EM> call and checks whether the latest call continues a multibyte + character. When a character is <EM>complete</EM>, <EM>ncurses</EM> displays the + character and advances the cursor. If the calling application + interrupts the succession of bytes in a multibyte character sequence by +@@ -313,9 +345,13 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>waddch</EM>. ++ 4BSD (1980) introduced <EM>waddch</EM> and its variants. + +- SVr3 (1987) added <EM>wechochar</EM>. ++ SVr3 (1987) added the <EM>echochar</EM> and <EM>wechochar</EM> functions and most of the ++ <EM>ACS</EM><STRONG>_</STRONG> constants, except for <EM>ACS</EM><STRONG>_</STRONG><EM>GEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>LEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>NEQUAL</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>PI</EM>, ++ <EM>ACS</EM><STRONG>_</STRONG><EM>S3</EM>, <EM>ACS</EM><STRONG>_</STRONG><EM>S7</EM>, and <EM>ACS</EM><STRONG>_</STRONG><EM>STERLING</EM>. ++ ++ <EM>ncurses</EM> 1.9.6 (1995) furnished the remaining <EM>ACS</EM><STRONG>_</STRONG> constants. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -328,7 +364,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -343,11 +379,7 @@ + </li> + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> + <li><a href="#h2-NOTES">NOTES</a></li> +-<li><a href="#h2-EXTENSIONS">EXTENSIONS</a> +-<ul> +-<li><a href="#h3-TABSIZE">TABSIZE</a></li> +-</ul> +-</li> ++<li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a> + <ul> + <li><a href="#h3-ACS-Symbols">ACS Symbols</a></li> +Index: doc/html/man/curs_addchstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_addchstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_addchstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_addchstr.3x,v 1.58 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_addchstr.3x,v 1.60 2025/02/01 22:50:42 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_addchstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_addchstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_addchstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_addchstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> + +@@ -114,7 +114,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- SVr3.1 (1987) introduced <EM>waddchstr</EM> and <EM>waddchnstr</EM>. ++ SVr3.1 (1987) introduced these functions. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -125,7 +125,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_addstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_addstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_addstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_addstr.3x,v 1.65 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_addstr.3x,v 1.67 2025/02/01 22:48:11 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_addstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_addstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_addstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_addstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> + +@@ -102,8 +102,8 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>waddstr</EM> along with its variants, the +- latter defined as macros. ++ 4BSD (1980) introduced <EM>waddstr</EM> along with its variants, the latter ++ defined as macros. + + SVr3.1 (1987) added <EM>waddnstr</EM> (and its variants) redefining <EM>waddstr</EM> as a + macro wrapping it. +@@ -117,7 +117,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_addwstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_addwstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_addwstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_addwstr.3x,v 1.56 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_addwstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_addwstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_addwstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_addwstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_addwstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> + +@@ -105,22 +105,21 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified functions named <EM>waddwstr</EM> and <EM>waddnwstr</EM> (and the usual +- variants). These were later additions to SVr4.<EM>x</EM>, not appearing in the +- first SVr4 (1989). ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified ++ functions named <EM>waddwstr</EM> and <EM>waddnwstr</EM> (and the usual variants). These ++ were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +- <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library ++ <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library + in its non-wide-character configuration. + + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_attr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_attr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_attr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_attr.3x,v 1.127 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_attr.3x,v 1.133 2025/02/01 23:59:36 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_attr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_attr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_attr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_attr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> + +@@ -249,14 +249,14 @@ + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> +- <STRONG>attr_on</STRONG>, <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_set</STRONG>, <STRONG>chgat</STRONG>, <STRONG>mvchgat</STRONG>, <STRONG>mvwchgat</STRONG>, and +- <STRONG>color_set</STRONG> are part of <EM>ncurses</EM>'s wide-character API, and are not +- available in its non-wide configuration. ++ <STRONG>attr_on</STRONG>, <STRONG>attr_off</STRONG>, <STRONG>attr_set</STRONG>, <STRONG>wattr_set</STRONG>, <STRONG>chgat</STRONG>, <STRONG>mvchgat</STRONG>, <STRONG>mvwchgat</STRONG>, ++ <STRONG>wchgat</STRONG>, and <STRONG>color_set</STRONG> are part of <EM>ncurses</EM>'s wide-character API, and are ++ not available in its non-wide configuration. + + <STRONG>attron</STRONG>, <STRONG>wattron</STRONG>, <STRONG>attroff</STRONG>, <STRONG>wattroff</STRONG>, <STRONG>attrset</STRONG>, <STRONG>wattrset</STRONG>, <STRONG>standout</STRONG>, and + <STRONG>standend</STRONG> may be implemented as macros. + +- Color pair values be logically "or"-ed with attributes if the pair ++ Color pair values may be logically "or"-ed with attributes if the pair + number is less than 256. The alternate functions such as <STRONG>color_set</STRONG> can + pass a color pair value directly. However, <EM>ncurses</EM> ABI 4 and 5 simply + logically "or" this value within the alternate functions. You must use +@@ -368,11 +368,11 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> used a <EM>char</EM> to represent each cell of the terminal +- screen. It assumed 7-bit character codes, employing the eighth bit of +- a byte to represent a <EM>standout</EM> attribute (often implemented as bold +- and/or reverse video). It introduced <EM>standout</EM>, <EM>standend</EM>, <EM>wstandout</EM>, +- and <EM>wstandend</EM> functions to manipulate this bit. Despite their ++ 4BSD (1980) used a <EM>char</EM> to represent each cell of the terminal screen. ++ It assumed 7-bit character codes, employing the eighth bit of a byte to ++ represent a <EM>standout</EM> attribute (often implemented as bold and/or ++ reverse video). It introduced <EM>standout</EM>, <EM>standend</EM>, <EM>wstandout</EM>, and ++ <EM>wstandend</EM> functions to manipulate this bit. Despite their + inflexibility, they carried over into System V <EM>curses</EM> and ultimately + X/Open Curses due to their pervasive use in legacy applications. While + some 1980s terminals supported a variety of video attributes, BSD +@@ -392,17 +392,17 @@ + SVr3.2 (1988) added the <EM>A</EM><STRONG>_</STRONG><EM>COLOR</EM> macro along with a color system; see + <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>. + +- X/Open Curses is largely based on SVr4 <EM>curses</EM>, but recognized that the +- <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> type of ISO C95 was intended to house only a single character +- code, not a sequence of codes combining with a base character, let +- alone could it reliably offer room for a color pair identifier and a +- set of attribute bits with a potential for further growth -- thus the +- standard invented the <EM>curses</EM> complex character type <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> and a +- separate type <EM>attr</EM><STRONG>_</STRONG><EM>t</EM> for storage of attribute bits. The new types +- brought along several new functions to manipulate them, some ++ X/Open Curses Issue 4 (1995) is largely based on SVr4 <EM>curses</EM>, but ++ recognized that the <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> type of ISO C95 was intended to house only ++ a single character code, not a sequence of codes combining with a base ++ character, let alone could it reliably offer room for a color pair ++ identifier and a set of attribute bits with a potential for further ++ growth -- thus the standard invented the <EM>curses</EM> complex character type ++ <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> and a separate type <EM>attr</EM><STRONG>_</STRONG><EM>t</EM> for storage of attribute bits. The ++ new types brought along several new functions to manipulate them, some + corresponding to existing <EM>chtype</EM>-based functions (<EM>attr</EM><STRONG>_</STRONG><EM>on</EM>, <EM>attr</EM><STRONG>_</STRONG><EM>off</EM>, +- <EM>attr</EM><STRONG>_</STRONG><EM>set</EM>, <EM>wattr</EM><STRONG>_</STRONG><EM>on</EM>, <EM>wattr</EM><STRONG>_</STRONG><EM>off</EM>, and <EM>wattr</EM><STRONG>_</STRONG><EM>set</EM>), and some new (<EM>color</EM><STRONG>_</STRONG><EM>set</EM>, +- <EM>wcolor</EM><STRONG>_</STRONG><EM>set</EM>, <EM>chgat</EM>, <EM>wchgat</EM>, <EM>mvchgat</EM>, and <EM>mvwchgat</EM>). ++ <EM>attr</EM><STRONG>_</STRONG><EM>set</EM>, <EM>wattr</EM><STRONG>_</STRONG><EM>on</EM>, <EM>wattr</EM><STRONG>_</STRONG><EM>off</EM>, and <EM>wattr</EM><STRONG>_</STRONG><EM>set</EM>), and some new (<EM>chgat</EM> and ++ its variants, <EM>color</EM><STRONG>_</STRONG><EM>set</EM>, and <EM>wcolor</EM><STRONG>_</STRONG><EM>set</EM>). + + Different Unix systems used differently sized bit fields in <EM>chtype</EM> for + the character code and the color pair identifier, and took into account +@@ -493,7 +493,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_beep.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_beep.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_beep.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_beep.3x,v 1.39 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_beep.3x,v 1.42 2025/02/01 23:46:11 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_beep 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_beep 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_beep 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_beep 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> + +@@ -85,12 +85,12 @@ + X/Open Curses Issue 4 describes these functions. It specifies no error + conditions for them. + +- On SVr4 <EM>curses</EM>, they always return <STRONG>OK</STRONG>, and X/Open Curses specifies them ++ On SVr4 <EM>curses</EM>, they always return <EM>OK</EM>, and X/Open Curses specifies them + as doing so. + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- <EM>beep</EM> and <EM>flash</EM> appeared in SVr2 (1984). ++ SVr2 (1984) introduced <EM>beep</EM> and <EM>flash</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -98,7 +98,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_bkgrnd.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_bkgrnd.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_bkgrnd.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_bkgrnd.3x,v 1.55 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_bkgrnd.3x,v 1.57 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_bkgrnd 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_bkgrnd 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_bkgrnd 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_bkgrnd 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> + +@@ -179,7 +179,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4. ++ X/Open Curses Issue 4 (1995) initially specified these functions. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -190,7 +190,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_border.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_border.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_border.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_border.3x,v 1.60 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_border.3x,v 1.63 2025/02/02 00:00:33 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_border 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_border 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_border 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_border 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> + +@@ -56,29 +56,28 @@ + <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> + + <STRONG>int</STRONG> <STRONG>border(chtype</STRONG> <EM>ls</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>rs</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ts</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bs</EM><STRONG>,</STRONG> +- <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG> ++ <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>wborder(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ls</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>rs</EM><STRONG>,</STRONG> +- <STRONG>chtype</STRONG> <EM>ts</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bs</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG> +- <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG> ++ <STRONG>chtype</STRONG> <EM>ts</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>bs</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>tr</EM><STRONG>,</STRONG> ++ <STRONG>chtype</STRONG> <EM>bl</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>br</EM><STRONG>);</STRONG> + + <STRONG>int</STRONG> <STRONG>box(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>verch</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>horch</EM><STRONG>);</STRONG> + + <STRONG>int</STRONG> <STRONG>hline(chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>whline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- + <STRONG>int</STRONG> <STRONG>mvhline(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>mvwhline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>vline(chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>wvline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>mvvline(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>mvwvline(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> +- The <STRONG>border</STRONG>, <STRONG>wborder</STRONG> and <STRONG>box</STRONG> routines draw a box around the edges of a +- window. Other than the window, each argument is a character with +- attributes: +- ++ <STRONG>wborder</STRONG> and <STRONG>border</STRONG> draw a box at the edges of the specified window or ++ <STRONG>stdscr</STRONG>, respectively. Each <EM>chtype</EM> argument corresponds to a geometric ++ component of the border as follows: + <EM>ls</EM> - left side, + <EM>rs</EM> - right side, + <EM>ts</EM> - top side, +@@ -88,46 +87,49 @@ + <EM>bl</EM> - bottom left-hand corner, and + <EM>br</EM> - bottom right-hand corner. + +- If any of these arguments is zero, then the corresponding default +- values (defined in <STRONG>curses.h</STRONG>) are used instead: +- ++ If any <EM>chtype</EM> argument is <STRONG>0</STRONG>, then <EM>curses</EM> uses forms-drawing characters ++ (see <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>) in the following correspondence: + <STRONG>ACS_VLINE</STRONG>, + <STRONG>ACS_VLINE</STRONG>, + <STRONG>ACS_HLINE</STRONG>, + <STRONG>ACS_HLINE</STRONG>, + <STRONG>ACS_ULCORNER</STRONG>, + <STRONG>ACS_URCORNER</STRONG>, +- <STRONG>ACS_LLCORNER</STRONG>, ++ <STRONG>ACS_LLCORNER</STRONG>, and + <STRONG>ACS_LRCORNER</STRONG>. + +- <STRONG>box(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>)</STRONG> is a shorthand for the following call: +- <STRONG>wborder(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>,</STRONG> <STRONG>0,</STRONG> <STRONG>0,</STRONG> <STRONG>0,</STRONG> <STRONG>0)</STRONG>. ++ <STRONG>box(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>)</STRONG> is shorthand for "<STRONG>wborder(</STRONG><EM>win</EM><STRONG>,</STRONG> <EM>verch</EM><STRONG>,</STRONG> <EM>horch</EM><STRONG>,</STRONG> <STRONG>0,</STRONG> ++ <STRONG>0,</STRONG> <STRONG>0,</STRONG> <STRONG>0)</STRONG>". + +- The <STRONG>hline</STRONG> and <STRONG>whline</STRONG> functions draw a horizontal (left to right) line +- using <EM>ch</EM> starting at the current cursor position in the window. The +- current cursor position is not changed. The line is at most <EM>n</EM> +- characters long, or as many as fit into the window. +- +- The <STRONG>vline</STRONG> and <STRONG>wvline</STRONG> functions draw a vertical (top to bottom) line +- using <EM>ch</EM> starting at the current cursor position in the window. The +- current cursor position is not changed. The line is at most <EM>n</EM> +- characters long, or as many as fit into the window. ++ <STRONG>whline</STRONG> draws a horizontal line of <EM>ch</EM> from left to right, and <STRONG>wvline</STRONG> a ++ vertical one from top to bottom, stopping once <EM>n</EM> characters have been ++ drawn or upon reaching the boundary of <EM>win</EM>. These functions do not ++ update the cursor position (beyond any motion directed by their "mv" ++ variants). <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> describes the variants of these functions. + + + </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> +- All routines return the integer <STRONG>OK</STRONG>. ++ These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. + +- This implementation returns <STRONG>ERR</STRONG> if the window pointer is null. ++ In <EM>ncurses</EM>, + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ <STRONG>o</STRONG> these functions fail if the screen is not initialized; and ++ ++ <STRONG>o</STRONG> functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null ++ pointer. ++ ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> +- <STRONG>border</STRONG> and <STRONG>box</STRONG> may be implemented as macros. ++ Unusually, there is no <STRONG>wbox</STRONG> function; <STRONG>box</STRONG> behaves as one would expect ++ <STRONG>wbox</STRONG> to, accepting a <EM>WINDOW</EM> pointer argument. + +- The borders generated by these functions are <EM>inside</EM> borders (this is +- also true of SVr4 curses, though the fact is not documented). ++ <STRONG>border</STRONG>, <STRONG>box</STRONG>, <STRONG>hline</STRONG>, <STRONG>mvhline</STRONG>, <STRONG>mvwhline</STRONG>, <STRONG>vline</STRONG>, <STRONG>mvvline</STRONG>, and <STRONG>mvwvline</STRONG> may ++ be implemented as macros. ++ ++ Borders drawn by these functions are <EM>interior</EM> borders. + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> +@@ -139,13 +141,24 @@ + from <EM>wrefresh</EM>, which in SVr4 returns a count of characters written to + the window if its <EM>immedok</EM> property is set; in <EM>ncurses</EM>, it does not. + ++ BSD <EM>curses</EM> drew boxes with <EM>horch</EM> in <EM>every</EM> character cell of the top and ++ bottom lines of the window, whereas SVr3.1 and later <EM>curses</EM>, because ++ its <EM>box</EM> wrapped <EM>wborder</EM>, used the default corner characters. ++ ++ ++</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> ++ 4BSD (1980) introduced <EM>box</EM>, defining it as a function. ++ ++ SVr3.1 (1987) added <EM>whline</EM> and <EM>wvline</EM> and their variants, as well as ++ <EM>border</EM> and <EM>wborder</EM>, redefining <EM>box</EM> as a macro wrapping the latter. ++ + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -155,6 +168,7 @@ + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> + <li><a href="#h2-NOTES">NOTES</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> ++<li><a href="#h2-HISTORY">HISTORY</a></li> + <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> + </ul> + </div> +Index: doc/html/man/curs_border_set.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_border_set.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_border_set.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_border_set.3x,v 1.43 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_border_set.3x,v 1.48 2025/02/02 00:04:21 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_border_set 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_border_set 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_border_set 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_border_set 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> + +@@ -55,45 +55,32 @@ + </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> + <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> + +- <STRONG>int</STRONG> <STRONG>border_set(</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ls</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>rs</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ts</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bs</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tr</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>br</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>wborder_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ls</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>rs</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ts</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bs</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tr</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>br</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>box_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>verch</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>horch</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>hline_set(</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>whline_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvhline_set(</STRONG> +- <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvwhline_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>vline_set(</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>wvline_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvvline_set(</STRONG> +- <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvwvline_set(</STRONG> +- <STRONG>WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> +- <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>border_set(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ls</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>rs</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ts</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bs</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tr</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>br</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>wborder_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ls</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>rs</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>ts</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bs</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>tr</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>bl</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>br</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>box_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>verch</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>horch</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>hline_set(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>whline_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvhline_set(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> ++ <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvwhline_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>vline_set(const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>wvline_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvvline_set(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> ++ <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvwvline_set(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> ++ <STRONG>const</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>n</EM><STRONG>);</STRONG> + + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> +@@ -156,7 +143,12 @@ + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> +- These functions are described in X/Open Curses Issue 4. ++ X/Open Curses Issue 4 describes these functions. It specifies no error ++ conditions for them. ++ ++ ++</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> ++ X/Open Curses Issue 4 (1995) initially specified these functions. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -164,7 +156,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -174,6 +166,7 @@ + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> + <li><a href="#h2-NOTES">NOTES</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> ++<li><a href="#h2-HISTORY">HISTORY</a></li> + <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> + </ul> + </div> +Index: doc/html/man/curs_deleteln.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_deleteln.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_deleteln.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_deleteln.3x,v 1.48 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_deleteln.3x,v 1.51 2025/02/01 22:49:56 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_deleteln 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_deleteln 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_deleteln 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_deleteln 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> + +@@ -105,9 +105,9 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>wdeleteln</EM> and <EM>winsertln</EM>. ++ 4BSD (1980) introduced <EM>deleteln</EM>, <EM>wdeleteln</EM>, <EM>insertln</EM>, and <EM>winsertln</EM>. + +- SVr3.1 (1987) added <EM>winsdelln</EM>. ++ SVr3.1 (1987) added <EM>insdelln</EM> and <EM>winsdelln</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -115,7 +115,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_get_wch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_get_wch.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_get_wch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_get_wch.3x,v 1.59 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_get_wch.3x,v 1.64 2025/02/02 00:01:24 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_get_wch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_get_wch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_get_wch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_get_wch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> + +@@ -124,9 +124,10 @@ + <STRONG>o</STRONG> execution was interrupted by a signal, in which case <EM>errno</EM> is set + to <EM>EINTR</EM>. + +- Functions taking a <EM>WINDOW</EM> pointer argument fail if the pointer is <EM>NULL</EM>. ++ Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null ++ pointer. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + <STRONG>unget_wch</STRONG> returns <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> if there is no more room in the +@@ -139,13 +140,13 @@ + All of these functions except <STRONG>wget_wch</STRONG> and <STRONG>unget_wch</STRONG> may be implemented + as macros. + +- Unlike <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>, <STRONG>wget_wch</STRONG> and its variants store the value of the +- input character in an additional <EM>wch</EM> parameter instead of the return ++ Unlike <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG>, <STRONG>wget_wch</STRONG> and its variants store the value of the ++ input character in an additional <EM>wch</EM> parameter instead of the return + value. + +- Unlike <STRONG>ungetch</STRONG>, <STRONG>unget_wch</STRONG> cannot distinguish function key codes from +- conventional character codes. An application can overcome this +- limitation by pushing function key codes with <STRONG>ungetch</STRONG> and subsequently ++ Unlike <STRONG>ungetch</STRONG>, <STRONG>unget_wch</STRONG> cannot distinguish function key codes from ++ conventional character codes. An application can overcome this ++ limitation by pushing function key codes with <STRONG>ungetch</STRONG> and subsequently + checking the return value of <STRONG>wget_wch</STRONG> for a match with <STRONG>KEY_CODE_YES</STRONG>. + + +@@ -160,20 +161,19 @@ + X/Open Curses Issue 4 describes these functions. It specifies no error + conditions for them. + +- See the "PORTABILITY" section of <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> regarding the interaction +- of <STRONG>wget_wch</STRONG> with signal handlers. ++ See the "PORTABILITY" section of <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> regarding the interaction ++ of <EM>wget</EM><STRONG>_</STRONG><EM>wch</EM> with signal handlers. + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified functions named <EM>wgetwch</EM> (with the usual variants) and +- <EM>ungetwch</EM>. These were later additions to SVr4.<EM>x</EM>, not appearing in the +- first SVr4 (1989). They differ from X/Open's later <EM>wget</EM><STRONG>_</STRONG><EM>wch</EM> and +- <EM>unget</EM><STRONG>_</STRONG><EM>wch</EM> in that <EM>wgetwch</EM> takes no <EM>wch</EM> argument, but returns the (wide) +- key code as an <EM>int</EM> (with no provision for distinguishing a character +- code from a function key code); and <EM>ungetwch</EM> takes a non-<EM>const</EM> <EM>int</EM> +- argument. ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified ++ functions named <EM>wgetwch</EM> (with its variants) <EM>ungetwch</EM>. These were later ++ additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). They ++ differ from X/Open's later <EM>wget</EM><STRONG>_</STRONG><EM>wch</EM> and <EM>unget</EM><STRONG>_</STRONG><EM>wch</EM> in that <EM>wgetwch</EM> takes ++ no <EM>wch</EM> argument, but returns the (wide) key code as an <EM>int</EM> (with no ++ provision for distinguishing a character code from a function key ++ code); and <EM>ungetwch</EM> takes a non-<EM>const</EM> <EM>int</EM> argument. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -185,7 +185,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_get_wstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_get_wstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_get_wstr.3x.html 2025-02-02 00:59:49.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_get_wstr.3x,v 1.64 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_get_wstr.3x,v 1.68 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_get_wstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_get_wstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_get_wstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_get_wstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> + +@@ -81,7 +81,7 @@ + <EM>WEOF</EM>); + + <STRONG>o</STRONG> interprets the screen's erase and kill characters (see +- <STRONG><A HREF="curs_termattrs.3x.html">erasechar(3x)</A></STRONG> and <STRONG><A HREF="curs_termattrs.3x.html">killchar(3x)</A></STRONG>); ++ <STRONG><A HREF="curs_termattrs.3x.html">erasewchar(3x)</A></STRONG> and <STRONG><A HREF="curs_termattrs.3x.html">killwchar(3x)</A></STRONG>); + + <STRONG>o</STRONG> recognizes function keys only if the screen's keypad option is + enabled (see <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG>); +@@ -214,6 +214,16 @@ + into the buffer, for consistency with SVr4 <EM>curses</EM>'s <EM>wgetnstr</EM>. + + ++</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified ++ functions named <EM>wgetwstr</EM> and <EM>wgetnwstr</EM> (and the usual variants). These ++ were later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). ++ Except in name, their declarations did not differ from X/Open's later ++ <EM>wget</EM><STRONG>_</STRONG><EM>wstr</EM> and <EM>wgetn</EM><STRONG>_</STRONG><EM>wstr</EM> until X/Open Curses Issue 7 (2009) eventually ++ changed the type of the buffer argument to a pointer to <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>. ++ ++ + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> + <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library + in its non-wide-character configuration. +@@ -222,7 +232,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -233,6 +243,7 @@ + <li><a href="#h2-NOTES">NOTES</a></li> + <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> ++<li><a href="#h2-HISTORY">HISTORY</a></li> + <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> + </ul> + </div> +Index: doc/html/man/curs_getcchar.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_getcchar.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_getcchar.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_getcchar.3x,v 1.53 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_getcchar.3x,v 1.56 2025/02/01 23:46:11 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_getcchar 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_getcchar 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_getcchar 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_getcchar 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> + +@@ -159,7 +159,7 @@ + <STRONG>o</STRONG> at least five non-spacing wide characters (<EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>; see below), + + <STRONG>o</STRONG> attributes (at least 15 bits' worth, inferred from the count of +- specified <STRONG>WA_</STRONG> constants), ++ specified <EM>WA</EM><STRONG>_</STRONG> constants), + + <STRONG>o</STRONG> a color pair identifier (at least 16 bits, inferred from the <EM>short</EM> + type used to encode it). +@@ -198,8 +198,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). ++ X/Open Curses Issue 4 (1995) initially specified these functions. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -207,7 +206,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_getch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_getch.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_getch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_getch.3x,v 1.114 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_getch.3x,v 1.117 2025/02/02 00:00:59 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_getch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_getch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_getch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_getch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> + +@@ -315,69 +315,70 @@ + + <STRONG>has_key</STRONG> returns <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>. + +- Functions taking a <EM>WINDOW</EM> pointer argument fail if the pointer is <EM>NULL</EM>. ++ Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null ++ pointer. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> + <STRONG>getch</STRONG>, <STRONG>mvgetch</STRONG>, and <STRONG>mvwgetch</STRONG> may be implemented as macros. + +- <EM>curses</EM> discourages assignment of the ESC key to a discrete function by ++ <EM>curses</EM> discourages assignment of the ESC key to a discrete function by + the programmer because the library requires a delay while it awaits the + potential remainder of a terminal escape sequence. + +- Some key strokes are indistinguishable from control characters; for +- example, <STRONG>KEY_ENTER</STRONG> may be the same as <STRONG>^M</STRONG>, and <STRONG>KEY_BACKSPACE</STRONG> may be the +- same as <STRONG>^H</STRONG> or <STRONG>^?</STRONG>. Consult the <EM>terminfo</EM> entry for the terminal type to +- determine whether this is the case; see <STRONG><A HREF="infocmp.1m.html">infocmp(1)</A></STRONG>. Some <EM>curses</EM> ++ Some key strokes are indistinguishable from control characters; for ++ example, <STRONG>KEY_ENTER</STRONG> may be the same as <STRONG>^M</STRONG>, and <STRONG>KEY_BACKSPACE</STRONG> may be the ++ same as <STRONG>^H</STRONG> or <STRONG>^?</STRONG>. Consult the <EM>terminfo</EM> entry for the terminal type to ++ determine whether this is the case; see <STRONG><A HREF="infocmp.1m.html">infocmp(1)</A></STRONG>. Some <EM>curses</EM> + implementations, including <EM>ncurses</EM>, honor the <EM>terminfo</EM> key definitions; + others treat such control characters specially. + +- <EM>curses</EM> distinguishes the Enter keys in the alphabetic and numeric +- keypad sections of a keyboard because (most) terminals do. <STRONG>KEY_ENTER</STRONG> +- refers to the key on the numeric keypad and, like other function keys, ++ <EM>curses</EM> distinguishes the Enter keys in the alphabetic and numeric ++ keypad sections of a keyboard because (most) terminals do. <STRONG>KEY_ENTER</STRONG> ++ refers to the key on the numeric keypad and, like other function keys, + is reliably recognized only if the window's keypad mode is enabled. + +- <STRONG>o</STRONG> The <EM>terminfo</EM> <STRONG>key_enter</STRONG> (<STRONG>kent</STRONG>) capability describes the character +- (sequence) sent by the Enter key of a terminal's numeric (or ++ <STRONG>o</STRONG> The <EM>terminfo</EM> <STRONG>key_enter</STRONG> (<STRONG>kent</STRONG>) capability describes the character ++ (sequence) sent by the Enter key of a terminal's numeric (or + similar) keypad. + + <STRONG>o</STRONG> "Enter or send" is X/Open Curses's description of this key. + +- <EM>curses</EM> treats the Enter or Return key in the <EM>alphabetic</EM> section of the ++ <EM>curses</EM> treats the Enter or Return key in the <EM>alphabetic</EM> section of the + keyboard differently. + + <STRONG>o</STRONG> It usually produces a control code for carriage return (<STRONG>^M</STRONG>) or line + feed (<STRONG>^J</STRONG>). + +- <STRONG>o</STRONG> Depending on the terminal mode (raw, cbreak, or canonical), and +- whether <STRONG><A HREF="curs_inopts.3x.html">nl(3x)</A></STRONG> or <STRONG><A HREF="curs_inopts.3x.html">nonl(3x)</A></STRONG> has been called, <STRONG>wgetch</STRONG> may return +- either a carriage return or line feed upon an Enter or Return key ++ <STRONG>o</STRONG> Depending on the terminal mode (raw, cbreak, or canonical), and ++ whether <STRONG><A HREF="curs_inopts.3x.html">nl(3x)</A></STRONG> or <STRONG><A HREF="curs_inopts.3x.html">nonl(3x)</A></STRONG> has been called, <STRONG>wgetch</STRONG> may return ++ either a carriage return or line feed upon an Enter or Return key + stroke. + +- Use of <STRONG>wgetch</STRONG> with <STRONG><A HREF="curs_inopts.3x.html">echo(3x)</A></STRONG> and neither <STRONG><A HREF="curs_inopts.3x.html">cbreak(3x)</A></STRONG> nor <STRONG><A HREF="curs_inopts.3x.html">raw(3x)</A></STRONG> is not ++ Use of <STRONG>wgetch</STRONG> with <STRONG><A HREF="curs_inopts.3x.html">echo(3x)</A></STRONG> and neither <STRONG><A HREF="curs_inopts.3x.html">cbreak(3x)</A></STRONG> nor <STRONG><A HREF="curs_inopts.3x.html">raw(3x)</A></STRONG> is not + well-defined. + +- Historically, the list of key code macros above was influenced by the +- keyboard of the AT&T 7300 (also known variously as the "3B1", "Safari +- 4", and "UNIX PC"), a 1985 machine rich in function keys. Today's +- computer keyboards are based on that of the IBM PC/AT and tend to have ++ Historically, the list of key code macros above was influenced by the ++ keyboard of the AT&T 7300 (also known variously as the "3B1", "Safari ++ 4", and "UNIX PC"), a 1985 machine rich in function keys. Today's ++ computer keyboards are based on that of the IBM PC/AT and tend to have + fewer. A <EM>curses</EM> application can expect such a keyboard to transmit key +- codes <STRONG>KEY_UP</STRONG>, <STRONG>KEY_DOWN</STRONG>, <STRONG>KEY_LEFT</STRONG>, <STRONG>KEY_RIGHT</STRONG>, <STRONG>KEY_HOME</STRONG>, <STRONG>KEY_END</STRONG>, +- <STRONG>KEY_PPAGE</STRONG> (Page Up), <STRONG>KEY_NPAGE</STRONG> (Page Down), <STRONG>KEY_IC</STRONG> (Insert), <STRONG>KEY_DC</STRONG> ++ codes <STRONG>KEY_UP</STRONG>, <STRONG>KEY_DOWN</STRONG>, <STRONG>KEY_LEFT</STRONG>, <STRONG>KEY_RIGHT</STRONG>, <STRONG>KEY_HOME</STRONG>, <STRONG>KEY_END</STRONG>, ++ <STRONG>KEY_PPAGE</STRONG> (Page Up), <STRONG>KEY_NPAGE</STRONG> (Page Down), <STRONG>KEY_IC</STRONG> (Insert), <STRONG>KEY_DC</STRONG> + (Delete), <STRONG>KEY_A1</STRONG>, <STRONG>KEY_A3</STRONG>, <STRONG>KEY_B2</STRONG>, <STRONG>KEY_C1</STRONG>, <STRONG>KEY_C3</STRONG>, and <STRONG>KEY_F(</STRONG><EM>n</EM><STRONG>)</STRONG> for 1 <= + <EM>n</EM> <= 12. + + + </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE> + In <EM>ncurses</EM>, when a window's "no time-out" mode is <EM>not</EM> set, the <STRONG>ESCDELAY</STRONG> +- variable configures the duration of the timer used to disambiguate a +- function key character sequence from a series of key strokes beginning ++ variable configures the duration of the timer used to disambiguate a ++ function key character sequence from a series of key strokes beginning + with ESC typed by the user; see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>. + +- <STRONG>has_key</STRONG> is an <EM>ncurses</EM> extension, and is not found in SVr4 <EM>curses</EM>, ++ <STRONG>has_key</STRONG> is an <EM>ncurses</EM> extension, and is not found in SVr4 <EM>curses</EM>, + 4.4BSD <EM>curses</EM>, or any other previous <EM>curses</EM> implementation. + + +@@ -385,53 +386,53 @@ + Applications employing <EM>ncurses</EM> extensions should condition their use on + the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro. + +- Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4 ++ Except as noted in section "EXTENSIONS" above, X/Open Curses Issue 4 + describes these functions. It specifies no error conditions for them. + +- SVr4 describes a successful return value only as "an integer value ++ SVr4 describes a successful return value only as "an integer value + other than <EM>ERR</EM>". + +- <STRONG>wgetch</STRONG> reads only single-byte characters. ++ <EM>wgetch</EM> reads only single-byte characters. + +- The echo behavior of these functions on input of <STRONG>KEY_</STRONG> or backspace ++ The echo behavior of these functions on input of <EM>KEY</EM><STRONG>_</STRONG> or backspace + characters is not documented in SVr4 <EM>curses</EM>. + +- The behavior of <STRONG>wgetch</STRONG> in the presence of signal handlers is not +- documented in SVr4 <EM>curses</EM> and is unspecified by X/Open Curses. In +- historical <EM>curses</EM> implementations, it varied depending on whether the +- operating system's dispatch of a signal to a handler interrupted a ++ The behavior of <EM>wgetch</EM> in the presence of signal handlers is not ++ documented in SVr4 <EM>curses</EM> and is unspecified by X/Open Curses. In ++ historical <EM>curses</EM> implementations, it varied depending on whether the ++ operating system's dispatch of a signal to a handler interrupted a + <STRONG>read(2)</STRONG> call in progress, and also (in some implementations) whether an +- input timeout or non-blocking mode had been set. A portable <EM>curses</EM> +- application prepares for two cases: (a) signal receipt does not +- interrupt <STRONG>wgetch</STRONG>; or (b) signal receipt interrupts <STRONG>wgetch</STRONG> and causes it +- to return <STRONG>ERR</STRONG> with <STRONG>errno</STRONG> set to <STRONG>EINTR</STRONG>. ++ input timeout or non-blocking mode had been set. A portable <EM>curses</EM> ++ application prepares for two cases: (a) signal receipt does not ++ interrupt <EM>wgetch</EM>; or (b) signal receipt interrupts <EM>wgetch</EM> and causes it ++ to return <EM>ERR</EM> with <EM>errno</EM> set to <EM>EINTR</EM>. + +- <STRONG>KEY_MOUSE</STRONG> is mentioned in X/Open Curses, along with a few related <EM>term-</EM> +- <EM>info</EM> capabilities, but no higher-level functions use the feature. The ++ <EM>KEY</EM><STRONG>_</STRONG><EM>MOUSE</EM> is mentioned in X/Open Curses, along with a few related <EM>term-</EM> ++ <EM>info</EM> capabilities, but no higher-level functions use the feature. The + implementation in <EM>ncurses</EM> is an extension. + +- <STRONG>KEY_RESIZE</STRONG> and <STRONG>has_key</STRONG> are extensions first implemented for <EM>ncurses</EM>. ++ <EM>KEY</EM><STRONG>_</STRONG><EM>RESIZE</EM> and <EM>has</EM><STRONG>_</STRONG><EM>key</EM> are extensions first implemented for <EM>ncurses</EM>. + By 2022, <EM>PDCurses</EM> and NetBSD <EM>curses</EM> had added them along with +- <STRONG>KEY_MOUSE</STRONG>. ++ <EM>KEY</EM><STRONG>_</STRONG><EM>MOUSE</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +- ECMA-6 "7-bit coded Character Set" <https://ecma-international.org/ ++ ECMA-6 "7-bit coded Character Set" <https://ecma-international.org/ + publications-and-standards/standards/ecma-6/> + +- ECMA-48 "Control Functions for Coded Character Sets" <https:// ++ ECMA-48 "Control Functions for Coded Character Sets" <https:// + ecma-international.org/publications-and-standards/standards/ecma-48/> + +- <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library ++ <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library + in its wide-character configuration (<EM>ncursesw</EM>). + +- <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_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>, +- <STRONG><A HREF="curs_move.3x.html">curs_move(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="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>, ++ <STRONG><A HREF="curs_move.3x.html">curs_move(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="resizeterm.3x.html">resizeterm(3x)</A></STRONG>, <STRONG>ascii(7)</STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_getstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_getstr.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_getstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_getstr.3x,v 1.80 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_getstr.3x,v 1.85 2025/02/01 22:49:13 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_getstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_getstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_getstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_getstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> + +@@ -170,10 +170,10 @@ + interpreted, as well as any special keys (such as function keys, + "home" key, "clear" key, <EM>etc.</EM>) + +- without further detail. It lied. In fact, the "character" value +- appended to the string by those implementations was predictable but not +- useful -- being, in fact, the low-order eight bits of the key code's +- <EM>KEY</EM><STRONG>_</STRONG> constant value. (The same language, unchanged except for styling, ++ without further detail. It lied. The "character" value appended to ++ the string by those implementations was predictable but not useful -- ++ being, in fact, the low-order eight bits of the key code's <EM>KEY</EM><STRONG>_</STRONG> ++ constant value. (The same language, unchanged except for styling, + survived into X/Open Curses Issue 4, Version 2 but disappeared from + Issue 7.) + +@@ -249,12 +249,12 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>wgetstr</EM> along with its variants. ++ 4BSD (1980) introduced <EM>wgetstr</EM> along with its variants. + + SVr3.1 (1987) added <EM>wgetnstr</EM>, but none of its variants. + +- X/Open Curses Issue 4 (1995) specified <EM>getnstr</EM>, <EM>mvwgetnstr</EM>, and +- <EM>mvgetnstr</EM>. ++ X/Open Curses Issue 4 (1995) specified <EM>getnstr</EM>, <EM>mvgetnstr</EM>, and ++ <EM>mvwgetnstr</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -266,7 +266,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_getyx.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_getyx.3x.html 2025-01-19 00:54:58.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_getyx.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_getyx.3x,v 1.53 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_getyx.3x,v 1.55 2025/02/01 22:48:11 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_getyx 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_getyx 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_getyx 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_getyx 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> + +@@ -105,7 +105,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>getyx</EM>. ++ 4BSD (1980) introduced <EM>getyx</EM>. + + SVr3 (1987) added <EM>getbegyx</EM> and <EM>getmaxyx</EM>. SVr3.1 later that year + supplied <EM>getparyx</EM>. +@@ -116,7 +116,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_in_wch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_in_wch.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_in_wch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_in_wch.3x,v 1.42 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_in_wch.3x,v 1.44 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_in_wch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_in_wch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_in_wch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_in_wch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> + +@@ -90,10 +90,10 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified a function named <EM>winwch</EM> (and the usual variants). This was a +- later addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). It ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified a ++ function named <EM>winwch</EM> (and the usual variants). This was a later ++ addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). It + differed from X/Open's later <EM>win</EM><STRONG>_</STRONG><EM>wch</EM> in that it returned a value of + type <EM>chtype</EM> instead of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. + +@@ -106,7 +106,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_in_wchstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_in_wchstr.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_in_wchstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_in_wchstr.3x,v 1.46 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_in_wchstr.3x,v 1.48 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_in_wchstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_in_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_in_wchstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_in_wchstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> + +@@ -110,12 +110,12 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified a function named <EM>winwchstr</EM> (and the usual variants). This +- was a later addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). +- It differed from X/Open's later <EM>win</EM><STRONG>_</STRONG><EM>wchstr</EM> in that it took an argument +- of type pointer-to-<EM>chtype</EM> instead of pointer-to<EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified a ++ function named <EM>winwchstr</EM> (and the usual variants). This was a later ++ addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). It ++ differed from X/Open's later <EM>win</EM><STRONG>_</STRONG><EM>wchstr</EM> in that it took an argument of ++ type pointer-to-<EM>chtype</EM> instead of pointer-to<EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -126,7 +126,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_initscr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_initscr.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_initscr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_initscr.3x,v 1.86 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_initscr.3x,v 1.92 2025/02/02 00:01:55 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_initscr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_initscr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_initscr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_initscr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> + +@@ -143,7 +143,7 @@ + + <STRONG>o</STRONG> restores terminal modes (see <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG>). + +- Calling <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> after a temporary escape causes ++ Calling <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> after a temporary suspension causes + <EM>curses</EM> to resume managing the terminal. + + +@@ -187,7 +187,56 @@ + and <STRONG>stdscr</STRONG>. + + Functions that return pointers return <EM>NULL</EM> on error. In <EM>ncurses</EM>, +- <STRONG>set_term</STRONG> does not fail. ++ <STRONG>set_term</STRONG> does not fail, and <STRONG>initscr</STRONG> exits the application if it does ++ not operate successfully. ++ ++ ++</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> ++ <EM>ncurses</EM> establishes signal handlers when a function that initializes a ++ <EM>SCREEN</EM>, either <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>, is first called. Applications that ++ wish to handle the following signals themselves should set up their ++ corresponding handlers <EM>after</EM> initializing the screen. ++ ++ <EM>SIGINT</EM> <EM>ncurses</EM>'s handler <EM>attempts</EM> to clean up the screen on exit. ++ Although it <EM>usually</EM> works as expected, there are limitations. ++ ++ <STRONG>o</STRONG> Walking the <EM>SCREEN</EM> list is unsafe, since all list management ++ is done without any signal blocking. ++ ++ <STRONG>o</STRONG> When an application has been built with the <STRONG>_</STRONG><EM>REENTRANT</EM> macro ++ defined (and corresponding system support), <STRONG>set_term</STRONG> uses ++ functions that could deadlock or misbehave in other ways. ++ ++ <STRONG>o</STRONG> <STRONG>endwin</STRONG> calls other functions, many of which use <STRONG>stdio(3)</STRONG> or ++ other library functions that are clearly unsafe. ++ ++ <EM>SIGTERM</EM> ++ <EM>ncurses</EM> uses the same handler as for <EM>SIGINT</EM>, with the same ++ limitations. It is not mentioned in X/Open Curses, but is more ++ suitable for this purpose than <EM>SIGQUIT</EM> (which is used in ++ debugging). ++ ++ <EM>SIGTSTP</EM> ++ <EM>ncurses</EM>'s handler manages the terminal-generated stop signal, ++ used in job control. When resuming the process, <EM>ncurses</EM> ++ discards pending input with <STRONG><A HREF="curs_util.3x.html">flushinp(3x)</A></STRONG> and repaints the ++ screen, assuming that it has been completely altered. It also ++ updates the saved terminal modes with <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>. ++ ++ <EM>SIGWINCH</EM> ++ <EM>ncurses</EM> handles changes to the terminal's window size, a ++ phenomenon ignored in standardization efforts. It sets a ++ (signal-safe) variable that is later tested by <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> and ++ <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG>. ++ ++ <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns the key code <STRONG>KEY_RESIZE</STRONG>. ++ ++ <STRONG>o</STRONG> <STRONG>wget_wch</STRONG> returns <STRONG>KEY_CODE_YES</STRONG> and sets its <EM>wch</EM> parameter to ++ <STRONG>KEY_RESIZE</STRONG>. ++ ++ At the same time, <EM>ncurses</EM> calls <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> to adjust the ++ standard screen <STRONG>stdscr</STRONG>, and update global variables such as ++ <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG>. + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> +@@ -197,120 +246,80 @@ + + </PRE><H3><a name="h3-Differences">Differences</a></H3><PRE> + X/Open Curses specifies that portable applications must not call +- <STRONG>initscr</STRONG> more than once: ++ <EM>initscr</EM> more than once. + +- <STRONG>o</STRONG> The portable way to use <STRONG>initscr</STRONG> is once only, using <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> to +- restore the screen after <STRONG>endwin</STRONG>. ++ <STRONG>o</STRONG> The portable way to use <EM>initscr</EM> is once only, using <EM>refresh</EM> to ++ restore the screen after <EM>endwin</EM>. + +- <STRONG>o</STRONG> This implementation allows using <STRONG>initscr</STRONG> after <STRONG>endwin</STRONG>. ++ <STRONG>o</STRONG> <EM>ncurses</EM> permits use of <EM>initscr</EM> after <EM>endwin</EM>. + +- Old versions of curses, e.g., BSD 4.4, would return a null pointer from +- <STRONG>initscr</STRONG> when an error is detected, rather than exiting. It is safe but +- redundant to check the return value of <STRONG>initscr</STRONG> in X/Open Curses. ++ <EM>initscr</EM> in BSD, from its inception (1980) through the Net/2 release ++ (1991) returned <EM>ERR</EM> cast to a <EM>WINDOW</EM> pointer when detecting an error. ++ 4.4BSD (1995) instead returned a null pointer. Neither exited the ++ application. It is safe but redundant to check the return value of ++ <EM>initscr</EM> in X/Open Curses. + +- Calling <STRONG>endwin</STRONG> does not dispose of the memory allocated in <STRONG>initscr</STRONG> or +- <STRONG>newterm</STRONG>. Deleting a <EM>SCREEN</EM> provides a way to do this: ++ Calling <EM>endwin</EM> does not dispose of the memory allocated by <EM>initscr</EM> or ++ <EM>newterm</EM>. Deleting a <EM>SCREEN</EM> provides a way to do this. + +- <STRONG>o</STRONG> X/Open Curses does not say what happens to <EM>WINDOW</EM>s when <STRONG>delscreen</STRONG> ++ <STRONG>o</STRONG> X/Open Curses does not say what happens to <EM>WINDOW</EM>s when <EM>delscreen</EM> + "frees storage associated with the <EM>SCREEN</EM>" nor does the SVr4 +- documentation help, adding that it should be called after <STRONG>endwin</STRONG> if ++ documentation help, adding that it should be called after <EM>endwin</EM> if + a <EM>SCREEN</EM> is no longer needed. + +- <STRONG>o</STRONG> However, <EM>WINDOW</EM>s are implicitly associated with a <EM>SCREEN</EM>. so that +- it is reasonable to expect <STRONG>delscreen</STRONG> to deal with these. ++ <STRONG>o</STRONG> However, <EM>WINDOW</EM>s are implicitly associated with a <EM>SCREEN</EM>, so it is ++ reasonable to expect <EM>delscreen</EM> to dispose of them. ++ ++ <STRONG>o</STRONG> SVr4 deletes the standard <EM>WINDOW</EM> structures <EM>stdscr</EM> and <EM>curscr</EM> as ++ well as a work area <EM>newscr</EM>. It ignores other windows. + +- <STRONG>o</STRONG> SVr4 curses deletes the standard <EM>WINDOW</EM> structures <STRONG>stdscr</STRONG> and +- <STRONG>curscr</STRONG> as well as a work area <STRONG>newscr</STRONG>. SVr4 curses ignores other +- windows. +- +- <STRONG>o</STRONG> Since version 4.0 (1996), <EM>ncurses</EM> has maintained a list of all +- windows for each screen, using that information to delete those +- windows when <STRONG>delscreen</STRONG> is called. ++ <STRONG>o</STRONG> Since version 4.0 (1996), <EM>ncurses</EM> has maintained a list of all ++ windows for each screen, using that information to delete those ++ windows when <EM>delscreen</EM> is called. + +- <STRONG>o</STRONG> NetBSD copied this feature of <EM>ncurses</EM> in 2001. <EM>PDCurses</EM> follows ++ <STRONG>o</STRONG> NetBSD copied this feature of <EM>ncurses</EM> in 2001. <EM>PDCurses</EM> follows + the SVr4 model, deleting only the standard <EM>WINDOW</EM> structures. + + + </PRE><H3><a name="h3-High-level-versus-Low-level">High-level versus Low-level</a></H3><PRE> +- Different implementations may disagree regarding the level of some +- functions. For example, <EM>SCREEN</EM> (returned by <STRONG>newterm</STRONG>) and <EM>TERMINAL</EM> +- (returned by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>) hold file descriptors for the output +- stream. If an application switches screens using <STRONG>set_term</STRONG>, or switches ++ Different implementations may disagree regarding the level of some ++ functions. For example, <EM>SCREEN</EM> (returned by <EM>newterm</EM>) and <EM>TERMINAL</EM> ++ (returned by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>) hold file descriptors for the output ++ stream. If an application switches screens using <EM>set</EM><STRONG>_</STRONG><EM>term</EM>, or switches + terminals using <STRONG><A HREF="curs_terminfo.3x.html">set_curterm(3x)</A></STRONG>, applications which use the output file +- descriptor can have different behavior depending on which structure ++ descriptor can have different behavior depending on which structure + holds the corresponding descriptor. + +- <STRONG>o</STRONG> NetBSD's <EM>baudrate</EM> function uses the descriptor in <EM>TERMINAL</EM>. +- <EM>ncurses</EM> and SVr4 <EM>curses</EM> use the descriptor in <EM>SCREEN</EM>. ++ <STRONG>o</STRONG> NetBSD's <EM>baudrate</EM> function uses the descriptor in <EM>TERMINAL</EM>. ++ <EM>ncurses</EM> and SVr4 use the descriptor in <EM>SCREEN</EM>. + +- <STRONG>o</STRONG> NetBSD and <EM>ncurses</EM> use the descriptor in <EM>TERMINAL</EM> for terminal I/O +- modes, e.g., <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">def_prog_mode(3x)</A></STRONG>. SVr4 curses +- uses the descriptor in <EM>SCREEN</EM>. ++ <STRONG>o</STRONG> NetBSD and <EM>ncurses</EM> use the descriptor in <EM>TERMINAL</EM> for terminal I/O ++ modes, e.g., <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">def_prog_mode(3x)</A></STRONG>. SVr4 uses the ++ descriptor in <EM>SCREEN</EM>. + + <STRONG>Unset</STRONG> <EM>TERM</EM> <STRONG>Variable</STRONG> +- If the <EM>TERM</EM> variable is missing or empty, <STRONG>initscr</STRONG> uses the value +- "unknown", which normally corresponds to a terminal entry with the ++ If the <EM>TERM</EM> variable is missing or empty, <EM>initscr</EM> uses the value ++ "unknown", which normally corresponds to a terminal entry with the + <STRONG>generic</STRONG> (<STRONG>gn</STRONG>) capability. Generic entries are detected by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG> +- and cannot be used for full-screen operation. Other implementations ++ and cannot be used for full-screen operation. Other implementations + may handle a missing/empty <EM>TERM</EM> variable differently. + + + </PRE><H3><a name="h3-Signal-Handlers">Signal Handlers</a></H3><PRE> +- Quoting from X/Open Curses Issue 7, section 3.1.1: ++ Quoting X/Open Curses Issue 7, section 3.1.1: + +- Curses implementations may provide for special handling of the +- SIGINT, SIGQUIT, and SIGTSTP signals if their disposition is +- SIG_DFL at the time <EM>initscr</EM> is called... ++ Curses implementations may provide for special handling of the ++ SIGINT, SIGQUIT, and SIGTSTP signals if their disposition is ++ SIG_DFL at the time <EM>initscr</EM>() is called... + +- Any special handling for these signals may remain in effect for ++ Any special handling for these signals may remain in effect for + the life of the process or until the process changes the + disposition of the signal. + +- None of the Curses functions are required to be safe with respect ++ None of the Curses functions are required to be safe with respect + to signals... + +- This implementation establishes signal handlers during initialization, +- e.g., <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>. Applications which must handle these signals +- should set up the corresponding handlers <EM>after</EM> initializing the +- library: +- +- <STRONG>SIGINT</STRONG> +- The handler <EM>attempts</EM> to clean up the screen on exit. Although it +- <EM>usually</EM> works as expected, there are limitations: +- +- <STRONG>o</STRONG> Walking the <EM>SCREEN</EM> list is unsafe, since all list management +- is done without any signal blocking. +- +- <STRONG>o</STRONG> On systems which have <STRONG>REENTRANT</STRONG> turned on, <STRONG>set_term</STRONG> uses +- functions which could deadlock or misbehave in other ways. +- +- <STRONG>o</STRONG> <STRONG>endwin</STRONG> calls other functions, many of which use <STRONG>stdio(3)</STRONG> or +- other library functions which are clearly unsafe. +- +- <STRONG>SIGTERM</STRONG> +- This uses the same handler as <STRONG>SIGINT</STRONG>, with the same limitations. +- It is not mentioned in X/Open Curses, but is more suitable for +- this purpose than <STRONG>SIGQUIT</STRONG> (which is used in debugging). +- +- <STRONG>SIGTSTP</STRONG> +- This handles the <EM>stop</EM> signal, used in job control. When resuming +- the process, this implementation discards pending input with +- <STRONG><A HREF="curs_util.3x.html">flushinp(3x)</A></STRONG>, and repaints the screen assuming that it has been +- completely altered. It also updates the saved terminal modes with +- <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>. +- +- <STRONG>SIGWINCH</STRONG> +- This handles the window-size changes which were ignored in the +- standardization efforts. The handler sets a (signal-safe) +- variable that is later tested by <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> and <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG>. +- +- <STRONG>o</STRONG> <STRONG>wgetch</STRONG> returns the key code <STRONG>KEY_RESIZE</STRONG>. +- +- <STRONG>o</STRONG> <STRONG>wget_wch</STRONG> returns <STRONG>KEY_CODE_YES</STRONG> and sets its <EM>wch</EM> parameter to +- <STRONG>KEY_RESIZE</STRONG>. +- +- At the same time, <EM>ncurses</EM> calls <STRONG>resizeterm</STRONG> to adjust the standard +- screen <STRONG>stdscr</STRONG>, and update other data such as <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG>. ++ Section "NOTES" above discusses <EM>ncurses</EM>'s signal handlers. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -319,7 +328,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -336,6 +345,7 @@ + </ul> + </li> + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> ++<li><a href="#h2-NOTES">NOTES</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a> + <ul> + <li><a href="#h3-Differences">Differences</a></li> +Index: doc/html/man/curs_inopts.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_inopts.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_inopts.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_inopts.3x,v 1.89 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_inopts.3x,v 1.93 2025/02/02 00:02:25 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_inopts 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_inopts 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_inopts 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_inopts 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> + +@@ -93,11 +93,11 @@ + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> + <EM>curses</EM> offers configurable parameters permitting an application to +- control the handling of input from the terminal. Some are global, +- applying to all windows; others apply only to a specific window. The +- library does not automatically apply such parameters to new or derived +- windows; an application must configure each window for the desired +- behavior. ++ control the handling of input from the terminal. Some, such as those ++ affecting the terminal's <EM>mode</EM> or line discipline, are global, applying ++ to all windows; others apply only to a specific window. The library ++ does not automatically apply such parameters to new or derived windows; ++ an application must configure each window for the desired behavior. + + Some descriptions below make reference to an <EM>input</EM> <EM>character</EM> <EM>reading</EM> + <EM>function</EM>: this is <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> in the non-wide character <EM>curses</EM> API and +@@ -110,109 +110,113 @@ + </PRE><H3><a name="h3-cbreak_nocbreak">cbreak, nocbreak</a></H3><PRE> + Normally, the terminal driver buffers typed characters, not delivering + them to an application until a line feed or carriage return is typed. +- <STRONG>cbreak</STRONG> configures the terminal in <EM>cbreak</EM> <EM>mode</EM>, which disables line +- buffering and erase and kill character processing (the interrupt, quit, +- suspend, and flow control characters are unaffected) and makes +- characters typed by the user immediately available to the program. +- <STRONG>nocbreak</STRONG> restores the terminal's canonical ("cooked") line discipline. ++ This canonical ("cooked") line discipline also supports software flow ++ control, simple line editing functions (character and word erase, and ++ whole-line erasure or "kill"), and job control. <STRONG>cbreak</STRONG> configures the ++ terminal in <EM>cbreak</EM> <EM>mode</EM>, which disables line buffering and erase and ++ kill character processing -- the interrupt, quit, suspend, and flow ++ control characters are unaffected -- and makes characters typed by the ++ user immediately available to the program. <STRONG>nocbreak</STRONG> restores canonical ++ ("cooked") mode. + +- The state of the terminal is unknown to a <EM>curses</EM> application when it ++ The state of the terminal is unknown to a <EM>curses</EM> application when it + starts; therefore, a program should call <STRONG>cbreak</STRONG> or <STRONG>nocbreak</STRONG> explicitly. + Most interactive programs using <EM>curses</EM> set cbreak mode. Calling <STRONG>cbreak</STRONG> +- overrides <STRONG>raw</STRONG>. The man page for the input character reading function ++ overrides <STRONG>raw</STRONG>. The man page for the input character reading function + discusses how <STRONG>cbreak</STRONG> and <STRONG>nocbreak</STRONG> interact with <STRONG>echo</STRONG> and <STRONG>noecho</STRONG>. + + + </PRE><H3><a name="h3-echo_noecho">echo, noecho</a></H3><PRE> +- <STRONG>echo</STRONG> and <STRONG>noecho</STRONG> determine whether characters typed by the user are ++ <STRONG>echo</STRONG> and <STRONG>noecho</STRONG> determine whether characters typed by the user are + written to the <EM>curses</EM> window by the input character reading function as +- they are typed. <EM>curses</EM> always disables the terminal driver's own ++ they are typed. <EM>curses</EM> always disables the terminal driver's own + echoing. By default, a <EM>curses</EM> screen's echo option is set. Authors of + most interactive programs prefer to do their own echoing in a +- controlled area of the screen, or not to echo at all, so they call ++ controlled area of the screen, or not to echo at all, so they call + <STRONG>noecho</STRONG>. The man page for the input character reading function + discusses how <STRONG>echo</STRONG> and <STRONG>noecho</STRONG> interact with <STRONG>cbreak</STRONG> and <STRONG>nocbreak</STRONG>. + + + </PRE><H3><a name="h3-halfdelay">halfdelay</a></H3><PRE> +- <STRONG>halfdelay</STRONG> configures <EM>half-delay</EM> <EM>mode</EM>, which is similar to cbreak mode +- in that characters typed by the user are immediately available to the +- program. However, after blocking for <EM>tenths</EM> tenth-seconds, an input +- character reading function returns <STRONG>ERR</STRONG> if no input is pending. The ++ <STRONG>halfdelay</STRONG> configures <EM>half-delay</EM> <EM>mode</EM>, which is similar to cbreak mode ++ in that characters typed by the user are immediately available to the ++ program. However, after blocking for <EM>tenths</EM> tenth-seconds, an input ++ character reading function returns <STRONG>ERR</STRONG> if no input is pending. The + value of <EM>tenths</EM> must be between 1 and 255. Use <STRONG>nocbreak</STRONG> to leave half- + delay mode. + + + </PRE><H3><a name="h3-intrflush">intrflush</a></H3><PRE> +- <STRONG>intrflush</STRONG> calls <STRONG>qiflush</STRONG> (see below) if <EM>bf</EM> is <STRONG>TRUE</STRONG>, and <STRONG>noqiflush</STRONG> if <EM>bf</EM> ++ <STRONG>intrflush</STRONG> calls <STRONG>qiflush</STRONG> (see below) if <EM>bf</EM> is <STRONG>TRUE</STRONG>, and <STRONG>noqiflush</STRONG> if <EM>bf</EM> + is <STRONG>FALSE</STRONG>. It ignores its <EM>win</EM> argument. + + + </PRE><H3><a name="h3-keypad">keypad</a></H3><PRE> +- <STRONG>keypad</STRONG> enables recognition of a terminal's function keys. If enabled +- (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the input character reading function returns a value +- representing the function key, such as <STRONG>KEY_LEFT</STRONG>. (Wide-character API +- users: <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG> returns <STRONG>KEY_CODE_YES</STRONG> to indicate the availability +- of a function key code in its <EM>wch</EM> parameter.) If disabled (<EM>bf</EM> is +- <STRONG>FALSE</STRONG>), <EM>curses</EM> does not treat function keys specially and the program ++ <STRONG>keypad</STRONG> enables recognition of a terminal's function keys. If enabled ++ (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the input character reading function returns a value ++ representing the function key, such as <STRONG>KEY_LEFT</STRONG>. (Wide-character API ++ users: <STRONG><A HREF="curs_get_wch.3x.html">wget_wch(3x)</A></STRONG> returns <STRONG>KEY_CODE_YES</STRONG> to indicate the availability ++ of a function key code in its <EM>wch</EM> parameter.) If disabled (<EM>bf</EM> is ++ <STRONG>FALSE</STRONG>), <EM>curses</EM> does not treat function keys specially and the program + has to interpret escape sequences itself. If the terminal's keypad can +- be turned on (made to transmit) and off (made to work locally), <STRONG>keypad</STRONG> +- configures it consistently with the <EM>bf</EM> parameter. By default, a ++ be turned on (made to transmit) and off (made to work locally), <STRONG>keypad</STRONG> ++ configures it consistently with the <EM>bf</EM> parameter. By default, a + window's keypad mode is off. + + + </PRE><H3><a name="h3-meta">meta</a></H3><PRE> +- Initially, whether the terminal returns 7- or 8-bit character codes on +- input depends on the configuration of the terminal driver; on POSIX +- systems, see <STRONG>termios(3)</STRONG>. To force 8 bits to be returned, call +- <STRONG>meta(</STRONG>...<STRONG>,</STRONG> <STRONG>TRUE)</STRONG>; this is equivalent, on POSIX systems, to setting the +- CS8 flag on the terminal. To force 7 bits to be returned, call +- <STRONG>meta(</STRONG>...<STRONG>,</STRONG> <STRONG>FALSE)</STRONG>; this is equivalent, on POSIX systems, to setting the +- CS7 flag on the terminal. The window argument, <EM>win</EM>, is always ignored. +- If the <EM>terminfo</EM> string capabilities <STRONG>meta_on</STRONG> (<STRONG>smm</STRONG>) and <STRONG>meta_off</STRONG> (<STRONG>rmm</STRONG>) +- are defined for the terminal type, enabling meta mode sends <STRONG>smm</STRONG> to the ++ Initially, whether the terminal returns 7- or 8-bit character codes on ++ input depends on the configuration of the terminal driver; on POSIX ++ systems, see <STRONG>termios(3)</STRONG>. To force 8 bits to be returned, call ++ <STRONG>meta(</STRONG>...<STRONG>,</STRONG> <STRONG>TRUE)</STRONG>; this is equivalent, on POSIX systems, to setting the ++ CS8 flag on the terminal. To force 7 bits to be returned, call ++ <STRONG>meta(</STRONG>...<STRONG>,</STRONG> <STRONG>FALSE)</STRONG>; this is equivalent, on POSIX systems, to setting the ++ CS7 flag on the terminal. <EM>curses</EM> ignores the window argument <EM>win</EM>. If ++ the <EM>terminfo</EM> string capabilities <STRONG>meta_on</STRONG> (<STRONG>smm</STRONG>) and <STRONG>meta_off</STRONG> (<STRONG>rmm</STRONG>) are ++ defined for the terminal type, enabling meta mode sends <STRONG>smm</STRONG> to the + terminal and disabling it sends <STRONG>rmm</STRONG> to the terminal. + + + </PRE><H3><a name="h3-nl_nonl">nl, nonl</a></H3><PRE> +- Initially, whether the terminal reports a carriage return using the +- character code for a line feed in cbreak or raw modes depends on the +- configuration of the terminal driver; see <STRONG>termios(3)</STRONG>. <STRONG>nl</STRONG> configures ++ Initially, whether the terminal reports a carriage return using the ++ character code for a line feed in cbreak or raw modes depends on the ++ configuration of the terminal driver; see <STRONG>termios(3)</STRONG>. <STRONG>nl</STRONG> configures + the terminal to perform this translation. <STRONG>nonl</STRONG> disables it. Under its + canonical ("cooked") line discipline, the terminal driver always + translates carriage returns to line feeds. + + + </PRE><H3><a name="h3-nodelay">nodelay</a></H3><PRE> +- <STRONG>nodelay</STRONG> configures the input character reading function to be non- +- blocking for window <EM>win</EM>. If no input is ready, the reading function +- returns <STRONG>ERR</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the reading function does not ++ <STRONG>nodelay</STRONG> configures the input character reading function to be non- ++ blocking for window <EM>win</EM>. If no input is ready, the reading function ++ returns <STRONG>ERR</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the reading function does not + return until it has input. + + + </PRE><H3><a name="h3-notimeout">notimeout</a></H3><PRE> +- When the input character reading function reads an ESC character, it +- sets a timer while waiting for the next character. <STRONG>notimeout(</STRONG><EM>win</EM><STRONG>,</STRONG> +- <STRONG>TRUE)</STRONG> disables this timer. The purpose of the timeout is to +- distinguish sequences produced by a function key from those typed by a +- user. To configure the timeout rather than disabling it, see <STRONG>wtimeout</STRONG> ++ When the input character reading function reads an ESC character, it ++ sets a timer while waiting for the next character. <STRONG>notimeout(</STRONG><EM>win</EM><STRONG>,</STRONG> ++ <STRONG>TRUE)</STRONG> disables this timer. The purpose of the timeout is to ++ distinguish sequences produced by a function key from those typed by a ++ user. To configure the timeout rather than disabling it, see <STRONG>wtimeout</STRONG> + below. + + + </PRE><H3><a name="h3-qiflush_noqiflush">qiflush, noqiflush</a></H3><PRE> +- <STRONG>qiflush</STRONG> and <STRONG>noqiflush</STRONG> configure the terminal driver's treatment of its ++ <STRONG>qiflush</STRONG> and <STRONG>noqiflush</STRONG> configure the terminal driver's treatment of its + input and output queues when it handles the interrupt, suspend, or quit + characters under the canonical ("cooked") or cbreak line disciplines on +- POSIX systems; see <STRONG>termios(3)</STRONG>. The default behavior is inherited from +- the terminal driver settings. Calling <STRONG>qiflush</STRONG> configures the terminal +- to flush the queues when any of these events occurs, giving the +- impression of faster response to user input, but making the library's +- model of the screen contents incorrect. Calling <STRONG>noqiflush</STRONG> prevents +- such flushing, but might frustrate impatient users on slow connections +- if a <EM>curses</EM> update of the screen is in progress when the event occurs; +- see <STRONG>typeahead</STRONG> below for a mitigation of this problem. You may want to +- call <STRONG>noqiflush</STRONG> in a signal handler if, after the handler exits, you +- want output to continue as though the interrupt had not occurred. ++ POSIX systems; see <STRONG>termios(3)</STRONG>. The default behavior is inherited from ++ the terminal driver settings. Calling <STRONG>qiflush</STRONG> configures the terminal ++ to <EM>flush</EM> the queues (discarding their contents) when any of these ++ events occurs, giving the impression of faster response to user input, ++ but making the library's model of the screen contents incorrect. ++ Calling <STRONG>noqiflush</STRONG> prevents such flushing, but might frustrate impatient ++ users on slow connections if a <EM>curses</EM> update of the screen is in ++ progress when the event occurs; see <STRONG>typeahead</STRONG> below for a mitigation of ++ this problem. You may want to call <STRONG>noqiflush</STRONG> in a signal handler if, ++ after the handler exits, you want output to continue as though the ++ interrupt had not occurred. + + + </PRE><H3><a name="h3-raw_noraw">raw, noraw</a></H3><PRE> +@@ -229,8 +233,8 @@ + </PRE><H3><a name="h3-timeout_wtimeout">timeout, wtimeout</a></H3><PRE> + <STRONG>wtimeout</STRONG> configures whether a <EM>curses</EM> input character reading function + called on window <EM>win</EM> uses blocking or non-blocking reads. If <EM>delay</EM> is +- negative, a blocking read is used, waiting indefinitely for input. If +- <EM>delay</EM> is zero, a non-blocking read is used; an input character reading ++ negative, <EM>curses</EM> uses a blocking read, waiting indefinitely for input. ++ If <EM>delay</EM> is zero, the read is non-blocking; an input character reading + function returns <STRONG>ERR</STRONG> if no input is pending. If <EM>delay</EM> is positive, an + input character reading function blocks for <EM>delay</EM> milliseconds, and + returns <STRONG>ERR</STRONG> if the delay elapses and there is still no input pending. +@@ -350,11 +354,11 @@ + key code to be reported. In <EM>ncurses</EM>, extended capabilities can be + 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. ++ key definition, the library uses the later definition. + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD <EM>curses</EM> (1980) introduced <EM>echo</EM>, <EM>noecho</EM>, <EM>nl</EM>, <EM>nonl</EM>, <EM>raw</EM>, and <EM>noraw</EM>. ++ 4BSD (1980) introduced <EM>echo</EM>, <EM>noecho</EM>, <EM>nl</EM>, <EM>nonl</EM>, <EM>raw</EM>, and <EM>noraw</EM>. + + SVr2 (1984) featured a new terminal driver, extending the <EM>curses</EM> API to + support it with <EM>cbreak</EM>, <EM>nocbreak</EM>, <EM>intrflush</EM>, <EM>keypad</EM>, <EM>meta</EM>, <EM>nodelay</EM>, and +@@ -384,7 +388,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_ins_wch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_ins_wch.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_ins_wch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_ins_wch.3x,v 1.43 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_ins_wch.3x,v 1.46 2025/02/02 00:00:59 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_ins_wch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_ins_wch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_ins_wch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_ins_wch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> + +@@ -71,16 +71,17 @@ + </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> + These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. + +- Functions taking a <EM>WINDOW</EM> pointer argument fail if the pointer is <EM>NULL</EM>. ++ Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null ++ pointer. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> + <STRONG>ins_wch</STRONG>, <STRONG>mvins_wch</STRONG>, and <STRONG>mvwins_wch</STRONG> may be implemented as macros. + +- A terminal's <STRONG>insert_character</STRONG> (<STRONG>ich1</STRONG>) capability is not necessarily ++ A terminal's <STRONG>insert_character</STRONG> (<STRONG>ich1</STRONG>) capability is not necessarily + employed. + + +@@ -90,11 +91,11 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4 +- (1995). The System V Interface Definition Version 4 of the same year +- specified a function named <EM>winswch</EM> (and the usual variants). This was +- a later addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). It +- differed from X/Open's later <EM>wins</EM><STRONG>_</STRONG><EM>wch</EM> in that it took an argument of ++ X/Open Curses Issue 4 (1995) initially specified these functions. The ++ System V Interface Definition Version 4 of the same year specified a ++ function named <EM>winswch</EM> (and the usual variants). This was a later ++ addition to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). It ++ differed from X/Open's later <EM>wins</EM><STRONG>_</STRONG><EM>wch</EM> in that it took an argument of + type <EM>chtype</EM> instead of <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>. + + +@@ -106,7 +107,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_ins_wstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_ins_wstr.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_ins_wstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_ins_wstr.3x,v 1.56 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_ins_wstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_ins_wstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_ins_wstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_ins_wstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_ins_wstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> + +@@ -125,7 +125,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- These functions were initially specified by X/Open Curses Issue 4. The ++ X/Open Curses Issue 4 (1995) initially specified these functions. The + System V Interface Definition Version 4 (1995), specified functions + named <EM>winswstr</EM> and <EM>winsnwstr</EM> (and the usual variants). These were + later additions to SVr4.<EM>x</EM>, not appearing in the first SVr4 (1989). +@@ -141,7 +141,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_insch.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_insch.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_insch.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_insch.3x,v 1.49 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_insch.3x,v 1.51 2025/02/02 00:00:59 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_insch 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_insch 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_insch 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_insch 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> + +@@ -70,23 +70,24 @@ + </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> + These functions return <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure. + +- Functions taking a <EM>WINDOW</EM> pointer argument fail if the pointer is <EM>NULL</EM>. ++ Functions taking a <EM>WINDOW</EM> pointer argument fail if <EM>win</EM> is a null ++ pointer. + +- Functions prefixed with "mv" first perform cursor movement and fail if ++ Functions prefixed with "mv" first perform cursor movement and fail if + the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries. + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> + <STRONG>insch</STRONG>, <STRONG>mvinsch</STRONG>, and <STRONG>mvwinsch</STRONG> may be implemented as macros. + +- A terminal's <STRONG>insert_character</STRONG> (<STRONG>ich1</STRONG>) capability is not necessarily ++ A terminal's <STRONG>insert_character</STRONG> (<STRONG>ich1</STRONG>) capability is not necessarily + employed. + + + </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> + X/Open Curses Issue 4 describes these functions. + +- SVr4 describes a successful return value only as "an integer value ++ SVr4 describes a successful return value only as "an integer value + other than <EM>ERR</EM>". + + +@@ -95,14 +96,14 @@ + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +- <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> describes comparable functions in the wide-character ++ <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> describes comparable functions in the wide-character + <EM>curses</EM> configuration. + + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_insstr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_insstr.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_insstr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_insstr.3x,v 1.68 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_insstr.3x,v 1.70 2025/02/01 22:53:03 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_insstr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_insstr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_insstr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_insstr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> + +@@ -116,8 +116,8 @@ + Issue 4 distinguished <EM>insnstr</EM> and <EM>winsnstr</EM> from the other functions + documented above by stating they "do not perform wrapping". This was + probably an error, since it makes this group of functions inconsistent. +- No implementation of <EM>curses</EM> documents this inconsistency, and Issue 7 +- removed it. ++ No implementation of <EM>curses</EM> manifests this inconsistency, and Issue 7 ++ removed the claim. + + Issue 4 states that the entire string is inserted if <EM>n</EM> is less than 1. + This is probably an error, because it is inconsistent with other +@@ -126,7 +126,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- SVr3.1 (1987) introduced <EM>winsstr</EM> and <EM>winsnstr</EM>. ++ SVr3.1 (1987) introduced <EM>winsstr</EM> and <EM>winsnstr</EM> and their variants. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -137,7 +137,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_instr.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_instr.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_instr.3x.html 2025-02-02 00:43:57.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_instr.3x,v 1.68 2025/01/19 00:49:39 tom Exp @ ++ * @Id: curs_instr.3x,v 1.70 2025/02/01 22:54:06 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_instr 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_instr 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_instr 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_instr 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> + +@@ -130,18 +130,19 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- SVr3.1 (1987) introduced these functions. ++ SVr3.1 (1987) introduced these functions. <EM>winstr</EM>, <EM>winnstr</EM>, and their ++ variants. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +- <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library ++ <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM> library + in its wide-character configuration (<EM>ncursesw</EM>). + + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>, <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_move.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_move.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_move.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_move.3x,v 1.54 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_move.3x,v 1.57 2025/02/01 22:50:42 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_move 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_move 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_move 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_move 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> + +@@ -86,7 +86,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>wmove</EM>. ++ 4BSD (1980) introduced these functions. + + + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> +@@ -94,7 +94,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_outopts.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_outopts.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_outopts.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_outopts.3x,v 1.78 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_outopts.3x,v 1.81 2025/02/01 22:49:13 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_outopts 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_outopts 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_outopts 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_outopts 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> + +@@ -184,7 +184,7 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) <EM>curses</EM> introduced <EM>clearok</EM>, <EM>leaveok</EM>, and <EM>scrollok</EM>. ++ 4BSD (1980) introduced <EM>clearok</EM>, <EM>leaveok</EM>, and <EM>scrollok</EM>. + + SVr2 (1984) supplied <EM>idlok</EM>, <EM>setscrreg</EM>, and <EM>wsetscrreg</EM>. + +@@ -200,7 +200,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_scroll.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_scroll.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_scroll.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_scroll.3x,v 1.55 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_scroll.3x,v 1.57 2025/02/02 00:02:49 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_scroll 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_scroll 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_scroll 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_scroll 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> + +@@ -61,34 +61,38 @@ + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> + <STRONG>scroll</STRONG> scrolls the given window up one line. That is, every visible +- line we might number <EM>i</EM> becomes line <EM>i</EM>-1. The text of the top line in +- the window disappears and the bottom line is populated with the +- background character; see <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> (wide-character API users: +- <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>). As an optimization, if the scrolling region of the window +- is the entire screen, the physical screen may be scrolled at the same +- time; see <STRONG><A HREF="curs_variables.3x.html">curscr(3x)</A></STRONG>. +- +- <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> scrolls the specified window <EM>win</EM> up or down per the sign +- of <EM>n</EM>. ++ line we might number <EM>i</EM> becomes line <EM>i</EM>-1. <STRONG>wscrl</STRONG> and <STRONG>scrl</STRONG> scroll the ++ specified window or <STRONG>stdscr</STRONG>, respectively, up or down per the sign of <EM>n</EM>. + + <STRONG>o</STRONG> For positive <EM>n</EM>, line <EM>i</EM>+<EM>n</EM> becomes <EM>i</EM> (scrolling up); + +- <STRONG>o</STRONG> for negative <EM>n</EM>, line <EM>i</EM>-<EM>n</EM> becomes <EM>i</EM> (scrolling down). <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> +- describes the <STRONG>scrl</STRONG> variant of this function. ++ <STRONG>o</STRONG> for negative <EM>n</EM>, line <EM>i</EM>-<EM>n</EM> becomes <EM>i</EM> (scrolling down). ++ ++ A line that scrolls beyond the window boundaries disappears; <EM>curses</EM> ++ populates a new one emerging at the opposite boundary with the ++ background character; see <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> (wide-character API users: ++ <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>). As an optimization, if the scrolling region of the window ++ is the entire screen, the physical screen may be scrolled at the same ++ time; see <STRONG><A HREF="curs_variables.3x.html">curscr(3x)</A></STRONG>. + +- The cursor does not move. These functions perform no operation unless ++ The cursor does not move. These functions perform no operation unless + scrolling is enabled for the window via <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>. + + + </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> + These functions return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success. + +- <EM>ncurses</EM> returns <STRONG>ERR</STRONG> if scrolling is not enabled in the window, for +- example with <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>, or if the <EM>WINDOW</EM> pointer is null. ++ In <EM>ncurses</EM>, they return <STRONG>ERR</STRONG> if ++ ++ <STRONG>o</STRONG> the <EM>curses</EM> screen has not been initialized, ++ ++ <STRONG>o</STRONG> <EM>win</EM> is a null pointer, or ++ ++ <STRONG>o</STRONG> scrolling is not enabled in the window (as by <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>). + + + </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE> +- <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> may be implemented as macros. ++ <STRONG>scroll</STRONG> and <STRONG>scrl</STRONG> may be implemented as macros. + + Unusually, there is no <STRONG>wscroll</STRONG> function; <STRONG>scroll</STRONG> behaves as one would + expect <STRONG>wscroll</STRONG> to, accepting a <EM>WINDOW</EM> pointer argument. +@@ -112,12 +116,19 @@ + character. In <EM>ncurses</EM>, they do not. + + ++</PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> ++ 4BSD (1980) introduced <EM>scroll</EM>, defining it as a function. ++ ++ SVr3.1 (1987) added <EM>scrl</EM> and <EM>wscrl</EM>, redefining <EM>scroll</EM> as a macro ++ wrapping the latter. ++ ++ + </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> + <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +@@ -127,6 +138,7 @@ + <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> + <li><a href="#h2-NOTES">NOTES</a></li> + <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> ++<li><a href="#h2-HISTORY">HISTORY</a></li> + <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> + </ul> + </div> +Index: doc/html/man/curs_sp_funcs.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_sp_funcs.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_sp_funcs.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_sp_funcs.3x,v 1.54 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_sp_funcs.3x,v 1.57 2025/02/01 22:47:44 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_sp_funcs 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_sp_funcs 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_sp_funcs 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_sp_funcs 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> + +@@ -53,169 +53,169 @@ + </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> + <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> + +- <STRONG>int</STRONG> <STRONG>alloc_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>assume_default_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>baudrate_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>beep_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>can_change_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>cbreak_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>color_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>b</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>curs_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>visibility</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>def_prog_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>def_shell_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>define_key_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>definition</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>delay_output_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>doupdate_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>echo_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>endwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>char</STRONG> <STRONG>erasechar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>erasewchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wc</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>alloc_pair_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>assume_default_colors_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>baudrate_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>beep_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>can_change_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>cbreak_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>color_content_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG> <EM>b</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>curs_set_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>visibility</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>def_prog_mode_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>def_shell_mode_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>define_key_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>definition</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>delay_output_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>doupdate_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>echo_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>endwin_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>erasechar_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>erasewchar_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wc</EM><STRONG>);</STRONG> + <STRONG>int</STRONG> <STRONG>extended_color_content_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>b</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>extended_pair_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>extended_slk_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>extended_pair_content_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>extended_slk_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG> + +- <STRONG>void</STRONG> <STRONG>filter_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>find_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>flash_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>flushinp_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>free_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>get_escdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>getmouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>MEVENT*</STRONG> <EM>event</EM><STRONG>);</STRONG> +- <STRONG>WINDOW*</STRONG> <STRONG>getwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FILE*</STRONG> <EM>filep</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>halfdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>tenths</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>has_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>bool</STRONG> <STRONG>has_ic_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>has_il_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>has_key_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>has_mouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>init_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>b</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>init_extended_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>b</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>init_extended_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>init_pair_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>intrflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>is_cbreak_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>is_echo_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>is_nl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>is_raw_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>is_term_resized_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> +- <STRONG>bool</STRONG> <STRONG>isendwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>key_defined_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>definition</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>keybound_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>count</EM><STRONG>);</STRONG> +- <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG> <STRONG>keyname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>keyok_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>enable</EM><STRONG>);</STRONG> +- <STRONG>char</STRONG> <STRONG>killchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>killwchar_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wc</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>longname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mcprint_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>len</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mouseinterval_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>erval</EM><STRONG>);</STRONG> +- <STRONG>mmask_t</STRONG> <STRONG>mousemask_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <EM>newmask</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <STRONG>*</STRONG><EM>oldmask</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>mvcur_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newcol</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>napms_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> +- <STRONG>WINDOW*</STRONG> <STRONG>newpad_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nrows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>);</STRONG> +- <STRONG>SCREEN*</STRONG> <STRONG>new_prescr(void);</STRONG> +- <STRONG>SCREEN*</STRONG> <STRONG>newterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>outf</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>infd</EM><STRONG>);</STRONG> +- +- <STRONG>WINDOW*</STRONG> <STRONG>newwin_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nlines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>x</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>nl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>nocbreak_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>noecho_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>nofilter_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>nonl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>noqiflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>noraw_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>pair_content_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short*</STRONG> <EM>bg</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>qiflush_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>raw_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>reset_color_pairs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>reset_prog_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>reset_shell_mode_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>resetty_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>resize_term_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>resizeterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>ripoffline_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>line</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>init</EM><STRONG>)(WINDOW*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>));</STRONG> +- <STRONG>int</STRONG> <STRONG>savetty_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>scr_init_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>scr_restore_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>scr_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>set_escdelay_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>set_tabsize_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>cols</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_attrset_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_attr_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>attr_t</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>void*</STRONG><EM>opts</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_attroff_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_attron_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> +- <STRONG>attr_t</STRONG> <STRONG>slk_attr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_clear_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>int</STRONG> <STRONG>slk_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_init_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>slk_label_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_noutrefresh_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_refresh_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_restore_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_set_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>slk_touch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>start_color_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>attr_t</STRONG> <STRONG>term_attrs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- +- <STRONG>chtype</STRONG> <STRONG>termattrs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>termname_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>typeahead_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fd</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>unget_wch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <EM>wc</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>ungetch_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>ungetmouse_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>MEVENT*</STRONG> <EM>event</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>use_default_colors_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>use_env_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>use_legacy_coding_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>level</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>filter_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>find_pair_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>flash_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>flushinp_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>free_pair_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>get_escdelay_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>getmouse_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>MEVENT</STRONG> <STRONG>*</STRONG> <EM>event</EM><STRONG>);</STRONG> ++ <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>getwin_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG> <EM>filep</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>halfdelay_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>tenths</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>has_colors_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>bool</STRONG> <STRONG>has_ic_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>has_il_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>has_key_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>has_mouse_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>init_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>b</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>init_extended_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>color</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>r</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>g</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>b</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>init_extended_pair_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>init_pair_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>intrflush_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>is_cbreak_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>is_echo_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>is_nl_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>is_raw_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>is_term_resized_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> ++ <STRONG>bool</STRONG> <STRONG>isendwin_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>key_defined_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>definition</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keybound_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>count</EM><STRONG>);</STRONG> ++ <STRONG>NCURSES_CONST</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>keyname_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>keyok_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>keycode</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>enable</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>killchar_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>killwchar_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>wchar_t</STRONG> <STRONG>*</STRONG><EM>wc</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>longname_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mcprint_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>data</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>len</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mouseinterval_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>erval</EM><STRONG>);</STRONG> ++ <STRONG>mmask_t</STRONG> <STRONG>mousemask_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <EM>newmask</EM><STRONG>,</STRONG> <STRONG>mmask_t</STRONG> <STRONG>*</STRONG><EM>oldmask</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>mvcur_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>oldcol</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newrow</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>newcol</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>napms_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> ++ <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>newpad_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nrows</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>);</STRONG> ++ <STRONG>SCREEN</STRONG> <STRONG>*</STRONG> <STRONG>new_prescr(void);</STRONG> ++ <STRONG>SCREEN</STRONG> <STRONG>*</STRONG> <STRONG>newterm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>outf</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>inf</EM><STRONG>);</STRONG> ++ ++ <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>newwin_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>nlines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ncols</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>begin</EM><STRONG>_</STRONG><EM>x</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>nl_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>nocbreak_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>noecho_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>nofilter_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>nonl_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>noqiflush_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>noraw_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>pair_content_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG> <EM>fg</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <STRONG>*</STRONG> <EM>bg</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>qiflush_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>raw_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>reset_color_pairs_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>reset_prog_mode_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>reset_shell_mode_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>resetty_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>resize_term_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>resizeterm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>lines</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>columns</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>ripoffline_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>line</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>(*</STRONG><EM>init</EM><STRONG>)(WINDOW</STRONG> <STRONG>*</STRONG> <EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>));</STRONG> ++ <STRONG>int</STRONG> <STRONG>savetty_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>scr_init_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>scr_restore_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>scr_set_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>filename</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>set_escdelay_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>ms</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>set_tabsize_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>cols</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_attrset_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_attr_set_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>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>slk_attroff_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_attron_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>chtype</STRONG> <EM>a</EM><STRONG>);</STRONG> ++ <STRONG>attr_t</STRONG> <STRONG>slk_attr_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_clear_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>int</STRONG> <STRONG>slk_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>short</STRONG> <EM>pair</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_init_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>slk_label_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_noutrefresh_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_refresh_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_restore_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_set_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>labnum</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>label</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fmt</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>slk_touch_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>start_color_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>attr_t</STRONG> <STRONG>term_attrs_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ ++ <STRONG>chtype</STRONG> <STRONG>termattrs_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>termname_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>typeahead_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>fd</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>unget_wch_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>wchar_t</STRONG> <EM>wc</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>ungetch_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>c</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>ungetmouse_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>MEVENT</STRONG> <STRONG>*</STRONG> <EM>event</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>use_default_colors_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>use_env_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>use_legacy_coding_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>level</EM><STRONG>);</STRONG> + <STRONG>void</STRONG> <STRONG>use_tioctl_sp(SCREEN</STRONG> <STRONG>*</STRONG><EM>sp</EM><STRONG>,</STRONG> <STRONG>bool</STRONG> <EM>bf</EM><STRONG>);</STRONG> + +- <STRONG>int</STRONG> <STRONG>vid_attr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>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>vid_puts_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>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>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>vidattr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>vidputs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> +- <STRONG>wchar_t*</STRONG> <STRONG>wunctrl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>vid_attr_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>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>vid_puts_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>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>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>vidattr_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>vidputs_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>attrs</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> ++ <STRONG>wchar_t</STRONG> <STRONG>*</STRONG> <STRONG>wunctrl_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>cchar_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG> + + <STRONG>#include</STRONG> <STRONG><form.h></STRONG> + +- <STRONG>FORM*</STRONG> <STRONG>new_form_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FIELD</STRONG> <STRONG>**</STRONG><EM>fields</EM><STRONG>);</STRONG> ++ <STRONG>FORM</STRONG> <STRONG>*</STRONG> <STRONG>new_form_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>FIELD</STRONG> <STRONG>**</STRONG><EM>fields</EM><STRONG>);</STRONG> + + <STRONG>#include</STRONG> <STRONG><menu.h></STRONG> + +- <STRONG>MENU*</STRONG> <STRONG>new_menu_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>ITEM</STRONG> <STRONG>**</STRONG><EM>items</EM><STRONG>);</STRONG> ++ <STRONG>MENU</STRONG> <STRONG>*</STRONG> <STRONG>new_menu_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>ITEM</STRONG> <STRONG>**</STRONG><EM>items</EM><STRONG>);</STRONG> + + <STRONG>#include</STRONG> <STRONG><panel.h></STRONG> + +- <STRONG>PANEL*</STRONG> <STRONG>ceiling_panel(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>PANEL*</STRONG> <STRONG>ground_panel(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> +- <STRONG>void</STRONG> <STRONG>update_panels_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>PANEL</STRONG> <STRONG>*</STRONG> <STRONG>ceiling_panel(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>PANEL</STRONG> <STRONG>*</STRONG> <STRONG>ground_panel(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> ++ <STRONG>void</STRONG> <STRONG>update_panels_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG> + + <STRONG>#include</STRONG> <STRONG><term.h></STRONG> + +- <STRONG>int</STRONG> <STRONG>del_curterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL</STRONG> <STRONG>*</STRONG><EM>oterm</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>putp_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>restartterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG> +- <STRONG>TERMINAL*</STRONG> <STRONG>set_curterm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL*</STRONG><EM>nterm</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>tgetent_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>bp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>tgetflag_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>tgetnum_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>tgetstr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>**</STRONG><EM>area</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>tgoto_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>col</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>row</EM><STRONG>);</STRONG> +- <STRONG>int</STRONG> <STRONG>tigetflag_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>del_curterm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL</STRONG> <STRONG>*</STRONG><EM>oterm</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>putp_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>restartterm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>NCURSES_CONST</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>term</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>filedes</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <STRONG>*</STRONG><EM>errret</EM><STRONG>);</STRONG> ++ <STRONG>TERMINAL</STRONG> <STRONG>*</STRONG> <STRONG>set_curterm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>TERMINAL</STRONG> <STRONG>*</STRONG><EM>nterm</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tgetent_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>bp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>name</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tgetflag_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tgetnum_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>tgetstr_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>char</STRONG> <STRONG>**</STRONG><EM>area</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>tgoto_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>col</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>row</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tigetflag_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> + +- <STRONG>int</STRONG> <STRONG>tigetnum_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> +- <STRONG>char*</STRONG> <STRONG>tigetstr_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tigetnum_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>tigetstr_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>capname</EM><STRONG>);</STRONG> + <EM>/*</EM> <EM>tparm</EM><STRONG>_</STRONG><EM>sp</EM> <EM>may</EM> <EM>use</EM> <EM>9</EM> <EM>long</EM> <EM>parameters</EM> <EM>rather</EM> <EM>than</EM> <EM>being</EM> <EM>variadic</EM> <EM>*/</EM> +- <STRONG>char*</STRONG> <STRONG>tparm_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG> +- <STRONG>int</STRONG> <STRONG>tputs_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>affcnt</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> ++ <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>tparm_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>...);</STRONG> ++ <STRONG>int</STRONG> <STRONG>tputs_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>str</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>affcnt</EM><STRONG>,</STRONG> <STRONG>NCURSES_SP_OUTC</STRONG> <EM>putc</EM><STRONG>);</STRONG> + + <STRONG>#include</STRONG> <STRONG><unctrl.h></STRONG> + +- <STRONG>NCURSES_CONST</STRONG> <STRONG>char*</STRONG> <STRONG>unctrl_sp(SCREEN*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG> ++ <STRONG>NCURSES_CONST</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <STRONG>unctrl_sp(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>,</STRONG> <STRONG>chtype</STRONG> <EM>ch</EM><STRONG>);</STRONG> + + + </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> +@@ -294,7 +294,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_termattrs.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_termattrs.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_termattrs.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_termattrs.3x,v 1.57 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_termattrs.3x,v 1.59 2025/02/01 22:49:13 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_termattrs 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_termattrs 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_termattrs 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_termattrs 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> + +@@ -153,7 +153,7 @@ + + SVr2 (1984) added <EM>baudrate</EM>, <EM>erasechar</EM>, <EM>killchar</EM>, <EM>has</EM><STRONG>_</STRONG><EM>ic</EM>, and <EM>has</EM><STRONG>_</STRONG><EM>il</EM>. + +- SVr3 (1987) furnished <EM>termname</EM>. SVr3.1 later that year supplied ++ SVr3 (1987) supplied <EM>termname</EM>. Later that year, SVr3.1 brought + <EM>termattrs</EM>. + + X/Open Curses Issue 4 (1995) specified <EM>erasewchar</EM>, <EM>killwchar</EM>, and +@@ -165,7 +165,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_termcap.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_termcap.3x.html 2025-01-19 00:54:59.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_termcap.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_termcap.3x,v 1.103 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_termcap.3x,v 1.105 2025/02/01 22:49:13 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_termcap 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_termcap 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_termcap 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_termcap 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> + +@@ -373,7 +373,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_util.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_util.3x.html 2025-01-19 00:55:00.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_util.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -28,19 +28,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_util.3x,v 1.134 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_util.3x,v 1.136 2025/02/01 22:49:13 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_util 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_util 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_util 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_util 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> + +@@ -402,13 +402,13 @@ + + + </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE> +- 4BSD (1980) defined <EM>unctrl</EM> (as a macro, in <EM>unctrl.h</EM>). ++ 4BSD (1980) introduced <EM>unctrl</EM>, defining it as a macro in <EM>unctrl.h</EM>. + +- SVr2 (1984) introduced <EM>delay</EM><STRONG>_</STRONG><EM>output</EM>, <EM>flushinp</EM>, and <EM>keyname</EM>. ++ SVr2 (1984) added <EM>delay</EM><STRONG>_</STRONG><EM>output</EM>, <EM>flushinp</EM>, and <EM>keyname</EM>. + +- SVr3 (1987) added <EM>filter</EM>. Later that year, SVr3.1 brought <EM>getwin</EM> and +- <EM>putwin</EM>, reading and writing window dumps with <STRONG>fread(3)</STRONG> and <STRONG>fwrite(3)</STRONG>, +- respectively. ++ SVr3 (1987) supplied <EM>filter</EM>. Later that year, SVr3.1 brought <EM>getwin</EM> ++ and <EM>putwin</EM>, reading and writing window dumps with <STRONG>fread(3)</STRONG> and ++ <STRONG>fwrite(3)</STRONG>, respectively. + + SVr4 (1989) supplied <EM>use</EM><STRONG>_</STRONG><EM>env</EM>. + +@@ -424,7 +424,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/curs_window.3x.html +--- ncurses-6.5-20250125+/doc/html/man/curs_window.3x.html 2025-01-19 00:55:00.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/curs_window.3x.html 2025-02-02 00:43:58.000000000 +0000 +@@ -27,19 +27,19 @@ + * sale, use or other dealings in this Software without prior written * + * authorization. * + **************************************************************************** +- * @Id: curs_window.3x,v 1.64 2025/01/19 00:51:10 tom Exp @ ++ * @Id: curs_window.3x,v 1.66 2025/02/02 00:04:58 tom Exp @ + --> + <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> + <HTML> + <HEAD> + <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> + <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts"> +-<TITLE>curs_window 3x 2025-01-18 ncurses 6.5 Library calls</TITLE> ++<TITLE>curs_window 3x 2025-02-01 ncurses 6.5 Library calls</TITLE> + <link rel="author" href="mailto:bug-ncurses@gnu.org"> + + </HEAD> + <BODY> +-<H1 class="no-header">curs_window 3x 2025-01-18 ncurses 6.5 Library calls</H1> ++<H1 class="no-header">curs_window 3x 2025-02-01 ncurses 6.5 Library calls</H1> + <PRE> + <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> + +@@ -242,7 +242,7 @@ + + + +-ncurses 6.5 2025-01-18 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> ++ncurses 6.5 2025-02-01 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> + </PRE> + <div class="nav"> + <ul> +Index: doc/html/man/ncurses.3x.html +--- ncurses-6.5-20250125+/doc/html/man/ncurses.3x.html 2025-01-19 00:55:01.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/ncurses.3x.html 2025-02-02 00:44:00.000000000 +0000 +@@ -61,7 +61,7 @@ + displays with output optimized to minimize screen updates. <EM>ncurses</EM> + replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and + 4.4BSD Unix, the development of which ceased in the 1990s. This +- document describes <EM>ncurses</EM> version 6.5 (patch 20250118). ++ document describes <EM>ncurses</EM> version 6.5 (patch 20250201). + + <EM>ncurses</EM> permits control of the terminal screen's contents; abstraction + and subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard +Index: doc/html/man/terminfo.5.html +--- ncurses-6.5-20250125+/doc/html/man/terminfo.5.html 2025-01-19 00:55:01.000000000 +0000 ++++ ncurses-6.5-20250201/doc/html/man/terminfo.5.html 2025-02-02 00:44:00.000000000 +0000 +@@ -71,7 +71,7 @@ + have, by specifying how to perform screen operations, and by specifying + padding requirements and initialization sequences. + +- This document describes <EM>ncurses</EM> version 6.5 (patch 20250118). ++ This document describes <EM>ncurses</EM> version 6.5 (patch 20250201). + + + </PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE> +Index: man/curs_add_wch.3x +Prereq: 1.88 +--- ncurses-6.5-20250125+/man/curs_add_wch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_add_wch.3x 2025-02-01 23:54:03.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_add_wch.3x,v 1.88 2025/01/19 00:49:39 tom Exp $ +-.TH curs_add_wch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_add_wch.3x,v 1.102 2025/02/01 23:54:03 tom Exp $ ++.TH curs_add_wch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -60,10 +60,70 @@ + \fBint add_wch(const cchar_t *\fIwch\fP); + \fBint wadd_wch(WINDOW *\fIwin\fP, const cchar_t *\fIwch\fP); + \fBint mvadd_wch(int \fIy\fP, int \fIx\fP, const cchar_t *\fIwch\fP); +-\fBint mvwadd_wch(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, const cchar_t *\fIwch\fP); ++\fBint mvwadd_wch(WINDOW *\fIwin\fP, int \fIy\fP, int \fIx\fP, ++ const cchar_t *\fIwch\fP); + .PP + \fBint echo_wchar(const cchar_t *\fIwch\fP); + \fBint wecho_wchar(WINDOW *\fIwin\fP, const cchar_t *\fIwch\fP); ++.PP ++\fI/* (integer) constants */\fP ++/*\fI .\|.\|. */ \fBWACS_BLOCK;\fR ++/*\fI .\|.\|. */ \fBWACS_BOARD;\fR ++/*\fI .\|.\|. */ \fBWACS_BTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_BULLET;\fR ++/*\fI .\|.\|. */ \fBWACS_CKBOARD;\fR ++/*\fI .\|.\|. */ \fBWACS_DARROW;\fR ++/*\fI .\|.\|. */ \fBWACS_DEGREE;\fR ++/*\fI .\|.\|. */ \fBWACS_DIAMOND;\fR ++/*\fI .\|.\|. */ \fBWACS_HLINE;\fR ++/*\fI .\|.\|. */ \fBWACS_LANTERN;\fR ++/*\fI .\|.\|. */ \fBWACS_LARROW;\fR ++/*\fI .\|.\|. */ \fBWACS_LLCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_LRCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_LTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_PLMINUS;\fR ++/*\fI .\|.\|. */ \fBWACS_PLUS;\fR ++/*\fI .\|.\|. */ \fBWACS_RARROW;\fR ++/*\fI .\|.\|. */ \fBWACS_RTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_S1;\fR ++/*\fI .\|.\|. */ \fBWACS_S9;\fR ++/*\fI .\|.\|. */ \fBWACS_TTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_UARROW;\fR ++/*\fI .\|.\|. */ \fBWACS_ULCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_URCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_VLINE;\fR ++\fI/* extensions */\fP ++/*\fI .\|.\|. */ \fBWACS_GEQUAL;\fR ++/*\fI .\|.\|. */ \fBWACS_LEQUAL;\fR ++/*\fI .\|.\|. */ \fBWACS_NEQUAL;\fR ++/*\fI .\|.\|. */ \fBWACS_PI;\fR ++/*\fI .\|.\|. */ \fBWACS_S3;\fR ++/*\fI .\|.\|. */ \fBWACS_S7;\fR ++/*\fI .\|.\|. */ \fBWACS_STERLING;\fR ++\fI/* extensions for thick lines */\fP ++/*\fI .\|.\|. */ \fBWACS_T_BTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_T_HLINE;\fR ++/*\fI .\|.\|. */ \fBWACS_T_LLCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_T_LRCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_T_LTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_T_PLUS;\fR ++/*\fI .\|.\|. */ \fBWACS_T_RTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_T_TTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_T_ULCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_T_URCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_T_VLINE;\fR ++\fI/* extensions for double lines */\fP ++/*\fI .\|.\|. */ \fBWACS_D_BTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_D_HLINE;\fR ++/*\fI .\|.\|. */ \fBWACS_D_LLCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_D_LRCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_D_LTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_D_PLUS;\fR ++/*\fI .\|.\|. */ \fBWACS_D_RTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_D_TTEE;\fR ++/*\fI .\|.\|. */ \fBWACS_D_ULCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_D_URCORNER;\fR ++/*\fI .\|.\|. */ \fBWACS_D_VLINE;\fR + .fi + .SH DESCRIPTION + .SS wadd_wch +@@ -231,68 +291,76 @@ + \& Unicode ACS acsc \& + Symbol Default Default char Glyph Name + _ +-WACS_BLOCK 0x25ae # 0 T{ ++WACS_BLOCK U+25ae # 0 T{ + solid square block + T} +-WACS_BOARD 0x2592 # h board of squares +-WACS_BTEE 0x2534 + v bottom tee +-WACS_BULLET 0x00b7 o ~ bullet +-WACS_CKBOARD 0x2592 : a T{ ++WACS_BOARD U+2592 # h board of squares ++WACS_BTEE U+2534 + v bottom tee ++WACS_BULLET U+00b7 o ~ bullet ++WACS_CKBOARD U+2592 : a T{ + checker board (stipple) + T} +-WACS_DARROW 0x2193 v . T{ ++WACS_DARROW U+2193 v . T{ + arrow pointing down + T} +-WACS_DEGREE 0x00b0 ' f degree symbol +-WACS_DIAMOND 0x25c6 + \(ga diamond +-WACS_GEQUAL 0x2265 > > T{ ++WACS_DEGREE U+00b0 ' f degree symbol ++WACS_DIAMOND U+25c6 + \(ga diamond ++WACS_GEQUAL U+2265 > > T{ ++.if n .na \" avoid adjustment warning from groff + greater-than-or-equal-to + T} +-WACS_HLINE 0x2500 \- q horizontal line +-WACS_LANTERN 0x2603 # i lantern symbol +-WACS_LARROW 0x2190 < , T{ ++WACS_HLINE U+2500 \- q horizontal line ++WACS_LANTERN U+2603 # i lantern symbol ++WACS_LARROW U+2190 < , T{ + arrow pointing left + T} +-WACS_LEQUAL 0x2264 < y T{ ++WACS_LEQUAL U+2264 < y T{ ++.if n .na \" avoid adjustment warning from groff + less-than-or-equal-to + T} +-WACS_LLCORNER 0x2514 + m T{ ++WACS_LLCORNER U+2514 + m T{ + lower left-hand corner + T} +-WACS_LRCORNER 0x2518 + j T{ ++WACS_LRCORNER U+2518 + j T{ + lower right-hand corner + T} +-WACS_LTEE 0x2524 + t left tee +-WACS_NEQUAL 0x2260 ! | not-equal +-WACS_PI 0x03c0 * { greek pi +-WACS_PLMINUS 0x00b1 # g plus/minus +-WACS_PLUS 0x253c + n plus +-WACS_RARROW 0x2192 > + T{ ++WACS_LTEE U+2524 + t left tee ++WACS_NEQUAL U+2260 ! | not-equal ++WACS_PI U+03c0 * { greek pi ++WACS_PLMINUS U+00b1 # g plus/minus ++WACS_PLUS U+253c + n plus ++WACS_RARROW U+2192 > + T{ + arrow pointing right + T} +-WACS_RTEE 0x251c + u right tee +-WACS_S1 0x23ba \- o scan line 1 +-WACS_S3 0x23bb \- p scan line 3 +-WACS_S7 0x23bc \- r scan line 7 +-WACS_S9 0x23bd \&_ s scan line 9 +-WACS_STERLING 0x00a3 f } T{ ++WACS_RTEE U+251c + u right tee ++WACS_S1 U+23ba \- o scan line 1 ++WACS_S3 U+23bb \- p scan line 3 ++WACS_S7 U+23bc \- r scan line 7 ++WACS_S9 U+23bd \&_ s scan line 9 ++WACS_STERLING U+00a3 f } T{ ++.if n .na \" avoid adjustment warning from groff + pound-sterling symbol + T} +-WACS_TTEE 0x252c + w top tee +-WACS_UARROW 0x2191 ^ \- T{ ++WACS_TTEE U+252c + w top tee ++WACS_UARROW U+2191 ^ \- T{ + arrow pointing up + T} +-WACS_ULCORNER 0x250c + l T{ ++WACS_ULCORNER U+250c + l T{ + upper left-hand corner + T} +-WACS_URCORNER 0x2510 + k T{ ++WACS_URCORNER U+2510 + k T{ + upper right-hand corner + T} +-WACS_VLINE 0x2502 | x vertical line ++WACS_VLINE U+2502 | x vertical line + .TE + .PP +-The wide-character configuration of \fI\%ncurses\fP also defines symbols +-for thick lines (\fBacsc\fP \*(``J\*('' to \*(``V\*(''): ++The ++.I \%ncurses ++wide API also defines symbols for thick lines ++.RB \%( acsc ++\*(``J\*('' through \*(``N\*('', ++\*(``T\*('' through \*(``X\*('', ++and \*(``Q\*(''): + .PP + .TS + Lb Lb Lb Lb Lb +@@ -301,42 +369,45 @@ + \& Unicode ASCII acsc \& + ACS Name Default Default Char Glyph Name + _ +-WACS_T_BTEE 0x253b + V T{ ++WACS_T_BTEE U+253b + V T{ + thick tee pointing up + T} +-WACS_T_HLINE 0x2501 - Q T{ ++WACS_T_HLINE U+2501 - Q T{ + thick horizontal line + T} +-WACS_T_LLCORNER 0x2517 + M T{ ++WACS_T_LLCORNER U+2517 + M T{ + thick lower left corner + T} +-WACS_T_LRCORNER 0x251b + J T{ ++WACS_T_LRCORNER U+251b + J T{ + thick lower right corner + T} +-WACS_T_LTEE 0x252b + T T{ ++WACS_T_LTEE U+252b + T T{ + thick tee pointing right + T} +-WACS_T_PLUS 0x254b + N T{ ++WACS_T_PLUS U+254b + N T{ + thick large plus + T} +-WACS_T_RTEE 0x2523 + U T{ ++WACS_T_RTEE U+2523 + U T{ + thick tee pointing left + T} +-WACS_T_TTEE 0x2533 + W T{ ++WACS_T_TTEE U+2533 + W T{ + thick tee pointing down + T} +-WACS_T_ULCORNER 0x250f + L T{ ++WACS_T_ULCORNER U+250f + L T{ + thick upper left corner + T} +-WACS_T_URCORNER 0x2513 + K T{ ++WACS_T_URCORNER U+2513 + K T{ + thick upper right corner + T} +-WACS_T_VLINE 0x2503 | X T{ ++WACS_T_VLINE U+2503 | X T{ + thick vertical line + T} + .TE + .PP +-and for double-lines (\fBacsc\fP \*(``A\*('' to \*(``I\*(''): ++and for double lines ++.RB \%( acsc ++\*(``A\*('' through \*(``I\*('', ++plus \*(``R\*('' and \*(``Y\*(''): + .PP + .TS + Lb Lb Lb Lb Lb +@@ -345,37 +416,37 @@ + \& Unicode ASCII acsc \& + ACS Name Default Default Char Glyph Name + _ +-WACS_D_BTEE 0x2569 + H T{ ++WACS_D_BTEE U+2569 + H T{ + double tee pointing up + T} +-WACS_D_HLINE 0x2550 - R T{ ++WACS_D_HLINE U+2550 - R T{ + double horizontal line + T} +-WACS_D_LLCORNER 0x255a + D T{ ++WACS_D_LLCORNER U+255a + D T{ + double lower left corner + T} +-WACS_D_LRCORNER 0x255d + A T{ ++WACS_D_LRCORNER U+255d + A T{ + double lower right corner + T} +-WACS_D_LTEE 0x2560 + F T{ ++WACS_D_LTEE U+2560 + F T{ + double tee pointing right + T} +-WACS_D_PLUS 0x256c + E T{ ++WACS_D_PLUS U+256c + E T{ + double large plus + T} +-WACS_D_RTEE 0x2563 + G T{ ++WACS_D_RTEE U+2563 + G T{ + double tee pointing left + T} +-WACS_D_TTEE 0x2566 + I T{ ++WACS_D_TTEE U+2566 + I T{ + double tee pointing down + T} +-WACS_D_ULCORNER 0x2554 + C T{ ++WACS_D_ULCORNER U+2554 + C T{ + double upper left corner + T} +-WACS_D_URCORNER 0x2557 + B T{ ++WACS_D_URCORNER U+2557 + B T{ + double upper right corner + T} +-WACS_D_VLINE 0x2551 | Y T{ ++WACS_D_VLINE U+2551 | Y T{ + double vertical line + T} + .TE +@@ -410,13 +481,18 @@ + .I curses + screen has not been initialized, + .bP ++(for functions taking a ++.I \%WINDOW ++pointer argument) + .I win +-is +-.IR NULL "," ++is a null pointer, + .bP + wrapping to a new line is impossible because \fB\%scrollok\fP(3X) has + not been called on + .I win ++(or ++.BR stdscr "," ++as applicable) + when writing to its bottom right location is attempted, + or + .bP +@@ -435,71 +511,136 @@ + .B echo_wchar + may be implemented as macros. + .SH EXTENSIONS +-.SS TABSIZE ++The symbols ++.RI \%( WACS_S3 "," ++.IR \%WACS_S7 "," ++.IR \%WACS_LEQUAL "," ++.IR \%WACS_GEQUAL "," ++.IR \%WACS_PI "," ++.IR \%WACS_NEQUAL "," ++and ++.IR \%WACS_STERLING ")" ++are not standard. ++However, ++many publicly available ++.I \%term\%info ++entries include ++.I \%acs_chars ++.RB \%( acsc ) ++capabilities in which their key characters ++.RB ( pryz{|} ) ++are embedded, ++and a second-hand list of their character descriptions has come to ++light. + The +-.B TABSIZE +-variable is implemented in SVr4 and other versions of +-.IR curses , +-but is not specified by X/Open Curses +-(see \fBcurs_variables\fP(3X)). ++.I \%ncurses ++developers invented WACS-prefixed names for them. ++.\" in v5_2_20020209 + .SH PORTABILITY ++Applications employing ++.I \%ncurses ++extensions should condition their use on the visibility of the ++.B \%NCURSES_VERSION ++preprocessor macro. ++.PP + These functions are described in X/Open Curses Issue\ 4. + It specifies no error conditions for them. + .PP + The defaults specified for forms-drawing characters apply in the POSIX + locale. + X/Open Curses makes it clear that the WACS_ symbols should be defined as +-a pointer to \fBcchar_t\fP data, e.g., in the discussion of \fBborder_set\fP. ++a pointer to ++.I \%cchar_t ++data, e.g., in the discussion of ++.IR \%border_set "." + A few implementations are problematic: + .bP +-NetBSD curses defines the symbols as a \fBwchar_t\fP within a \fBcchar_t\fP. ++NetBSD ++.I curses ++defines the symbols as a ++.I \%wchar_t ++within a ++.IR \%cchar_t "." + .bP +-HP-UX curses equates some of the \fBACS_\fP symbols +-to the analogous \fBWACS_\fP symbols as if the \fBACS_\fP symbols were ++HP-UX ++.I curses ++equates some of the ++.I \%ACS_ ++symbols to the analogous ++.I \%WACS_ ++symbols as if the ++.I \%ACS_ ++symbols were + wide characters. + The misdefined symbols are the arrows + and other symbols which are not used for line-drawing. + .PP + X/Open Curses does not specify symbols for thick- or double-lines. +-SVr4 curses implementations defined their line-drawing symbols in +-terms of intermediate symbols. +-This implementation extends those symbols, providing new definitions +-which are not in the SVr4 implementations. ++SVr4 ++.I curses ++implementations defined their line-drawing symbols ++in terms of intermediate symbols. ++.I \%ncurses ++extends those symbols, ++providing new definitions not found in SVr4 implementations. + .PP + Not all Unicode-capable terminals provide support for VT100-style +-alternate character sets (i.e., the \fBacsc\fP capability), ++alternate character sets (i.e., the ++.I \%acsc_chars ++.RB ( acsc ) ++capability), + with their corresponding line-drawing characters. + X/Open Curses did not address the aspect of integrating Unicode with + line-drawing characters. +-Existing implementations of Unix curses (AIX, HP-UX, Solaris) +-use only the \fBacsc\fP character-mapping to provide this feature. +-As a result, those implementations can only use single-byte line-drawing +-characters. +-\fI\%ncurses\fP 5.3 (2002) provided a table of Unicode values to solve ++Existing implementations of System\ V ++.I curses ++(AIX, HP-UX, Solaris) ++use only the ++.I \%acsc_chars ++.RB ( acsc ) ++character-mapping to provide this feature. ++As a result, ++those implementations can use only single-byte line-drawing characters. ++.I \%ncurses ++5.3 (2002) provided a table of Unicode values to solve + these problems. +-NetBSD curses incorporated that table in 2010. ++NetBSD ++.I curses ++incorporated that table in 2010. + .PP +-In this implementation, the Unicode values are used instead of the +-terminal description's \fBacsc\fP mapping as discussed in ++.I \%ncurses ++uses the Unicode values instead of the terminal type description's ++.I \%acsc_chars ++.RB ( acsc ) ++mapping as discussed in + \fB\%ncurses\fP(3X) for the environment variable +-\fINCURSES_NO_UTF8_ACS\fP. ++.IR \%NCURSES_NO_UTF8_ACS "." + In contrast, for the same cases, the line-drawing characters + described in \fB\%addch\fP(3X) will use only the ASCII default values. + .PP + Having Unicode available does not solve all of the problems with +-line-drawing for curses: ++line-drawing for ++.IR curses ":" + .bP + The closest Unicode equivalents to the +-VT100 graphics \fIS1\fP, \fIS3\fP, \fIS7\fP and \fIS9\fP ++VT100 graphics ++.IR S1 "," ++.IR S3 "," ++.IR S7 "," ++and ++.I S9 + frequently are not displayed at + the regular intervals which the terminal used. + .bP +-The \fIlantern\fP is a special case. ++The ++.I lantern ++is a special case. + It originated with the AT&T 4410 terminal in the early 1980s. + There is no accessible documentation depicting the lantern symbol + on the AT&T terminal. + .IP +-Lacking documentation, most readers assume that a \fIstorm lantern\fP ++Lacking documentation, most readers assume that a ++.I "storm lantern" + was intended. + But there are several possibilities, all with problems. + .IP +@@ -509,7 +650,9 @@ + and as a result are unavailable on many terminals. + They are not storm lanterns, in any case. + .IP +-Most \fIstorm lanterns\fP have a tapering glass chimney ++Most ++.I "storm lanterns" ++have a tapering glass chimney + (to guard against tipping); + some have a wire grid protecting the chimney. + .IP +@@ -553,15 +696,15 @@ + .I \%ncurses + adds the non-spacing character to the active complex character. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). +-The System\ V Interface Definition Version\ 4 ++X/Open Curses Issue\ 4 (1995) initially specified these functions. ++The System\ V Interface Definition (SVID) Version\ 4 + of the same year + specified functions named + .I \%waddwch ++(and the usual variants), ++.IR \%echowchar "," + and +-.I \%wechowchar +-(and the usual variants). ++.IR \%wechowchar "." + .\" SVID 4, vol 3., p. 475 + These were later additions to + .RI SVr4. x , +@@ -574,6 +717,29 @@ + .I \%wchar_t + instead of + .IR \%cchar_t "." ++SVID defined no ++.I \% WACS_ ++symbols. ++.PP ++X/Open Curses Issue\ 4 also defined many of the ++.I WACS_ ++constants, ++excepting ++.IR \%WACS_GEQUAL "," ++.IR \%WACS_LEQUAL "," ++.IR \%WACS_NEQUAL "," ++.IR \%WACS_PI "," ++.IR \%WACS_S3 "," ++.IR \%WACS_S7 "," ++and ++.IR \%WACS_STERLING ";" ++and those for drawing thick and double lines. ++.PP ++.I \%ncurses ++5.3 (2002) ++furnished the remaining ++.I WACS_ ++constants. + .SH SEE ALSO + \fB\%curs_addch\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_add_wchstr.3x +Prereq: 1.52 +--- ncurses-6.5-20250125+/man/curs_add_wchstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_add_wchstr.3x 2025-02-01 22:57:57.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_add_wchstr.3x,v 1.52 2025/01/19 00:49:39 tom Exp $ +-.TH curs_add_wchstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_add_wchstr.3x,v 1.55 2025/02/01 22:57:57 tom Exp $ ++.TH curs_add_wchstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -144,8 +144,9 @@ + X/Open Curses Issue\ 4 describes these functions. + It specifies no error conditions for them. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4. +-The System\ V Interface Definition Version\ 4 (1995), ++X/Open Curses Issue\ 4 (1995) initially specified these functions. ++The System\ V Interface Definition Version\ 4 ++of the same year + specified functions named + .I \%waddwchstr + and +Index: man/curs_addch.3x +Prereq: 1.113 +--- ncurses-6.5-20250125+/man/curs_addch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_addch.3x 2025-02-01 23:54:03.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_addch.3x,v 1.113 2025/01/19 00:49:39 tom Exp $ +-.TH curs_addch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_addch.3x,v 1.122 2025/02/01 23:54:03 tom Exp $ ++.TH curs_addch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -70,6 +70,41 @@ + .PP + \fBint echochar(const chtype \fIch\fP); + \fBint wechochar(WINDOW *\fIwin\fP, const chtype \fIch\fP); ++.PP ++\fI/* (integer) constants */\fP ++/*\fI .\|.\|. */ \fBACS_BLOCK;\fR ++/*\fI .\|.\|. */ \fBACS_BOARD;\fR ++/*\fI .\|.\|. */ \fBACS_BTEE;\fR ++/*\fI .\|.\|. */ \fBACS_BULLET;\fR ++/*\fI .\|.\|. */ \fBACS_CKBOARD;\fR ++/*\fI .\|.\|. */ \fBACS_DARROW;\fR ++/*\fI .\|.\|. */ \fBACS_DEGREE;\fR ++/*\fI .\|.\|. */ \fBACS_DIAMOND;\fR ++/*\fI .\|.\|. */ \fBACS_HLINE;\fR ++/*\fI .\|.\|. */ \fBACS_LANTERN;\fR ++/*\fI .\|.\|. */ \fBACS_LARROW;\fR ++/*\fI .\|.\|. */ \fBACS_LLCORNER;\fR ++/*\fI .\|.\|. */ \fBACS_LRCORNER;\fR ++/*\fI .\|.\|. */ \fBACS_LTEE;\fR ++/*\fI .\|.\|. */ \fBACS_PLMINUS;\fR ++/*\fI .\|.\|. */ \fBACS_PLUS;\fR ++/*\fI .\|.\|. */ \fBACS_RARROW;\fR ++/*\fI .\|.\|. */ \fBACS_RTEE;\fR ++/*\fI .\|.\|. */ \fBACS_S1;\fR ++/*\fI .\|.\|. */ \fBACS_S9;\fR ++/*\fI .\|.\|. */ \fBACS_TTEE;\fR ++/*\fI .\|.\|. */ \fBACS_UARROW;\fR ++/*\fI .\|.\|. */ \fBACS_ULCORNER;\fR ++/*\fI .\|.\|. */ \fBACS_URCORNER;\fR ++/*\fI .\|.\|. */ \fBACS_VLINE;\fR ++\fI/* extensions */\fP ++/*\fI .\|.\|. */ \fBACS_GEQUAL;\fR ++/*\fI .\|.\|. */ \fBACS_LEQUAL;\fR ++/*\fI .\|.\|. */ \fBACS_NEQUAL;\fR ++/*\fI .\|.\|. */ \fBACS_PI;\fR ++/*\fI .\|.\|. */ \fBACS_S3;\fR ++/*\fI .\|.\|. */ \fBACS_S7;\fR ++/*\fI .\|.\|. */ \fBACS_STERLING;\fR + .fi + .SH DESCRIPTION + .SS waddch +@@ -268,13 +303,18 @@ + .I curses + screen has not been initialized, + .bP ++(for functions taking a ++.I \%WINDOW ++pointer argument) + .I win +-is +-.IR NULL "," ++is a null pointer, + .bP + wrapping to a new line is impossible because \fB\%scrollok\fP(3X) has + not been called on + .I win ++(or ++.BR stdscr "," ++as applicable) + when a write to its bottom right location is attempted, + or + .bP +@@ -305,14 +345,35 @@ + .B \%echochar + may be implemented as macros. + .SH EXTENSIONS +-.SS TABSIZE +-SVr4 and other versions of +-.I curses +-implement the +-.B \%TABSIZE +-variable, +-but X/Open Curses does not specify it; +-see \fB\%curs_variables\fP(3X). ++The symbols ++.RI \%( ACS_S3 "," ++.IR \%ACS_S7 "," ++.IR \%ACS_LEQUAL "," ++.IR \%ACS_GEQUAL "," ++.IR \%ACS_PI "," ++.IR \%ACS_NEQUAL "," ++and ++.IR \%ACS_STERLING ")" ++were not documented in any publicly released System\ V ++.\" And did not exist yet as late as SVr4. ++.\" https://github.com/ryanwoodsmall/oldsysv/blob/master/\ ++.\" sysvr4/svr4/lib/xlibcurses/screen/curses.ed ++and are not standard. ++However, ++many publicly available ++.I \%term\%info ++entries include ++.I \%acs_chars ++.RB \%( acsc ) ++capabilities in which their key characters ++.RB ( pryz{|} ) ++are embedded, ++and a second-hand list of their character descriptions has come to ++light. ++The ++.I \%ncurses ++developers invented ACS-prefixed names for them. ++.\" in v1_9_5_950928_e227 + .SH PORTABILITY + Applications employing + .I \%ncurses +@@ -331,7 +392,7 @@ + locale. + .SS "ACS Symbols" + X/Open Curses states that the +-.B \%ACS_ ++.I \%ACS_ + definitions are + .I char + constants. +@@ -343,25 +404,25 @@ + defines the ACS symbols as constants; + others define them as elements of an array. + .IP +-This implementation uses an array, +-.BR \%acs_map , +-as did SVr4 +-.IR curses . +-NetBSD also uses an array, ++SVr4 used an array, ++.IR \%acs_map , ++as does ++.IR \%ncurses "." ++NetBSD ++.I curses ++also uses an array, + actually named +-.BR \%_acs_char , +-with a +-.B \%#define +-for compatibility. ++.IR \%_acs_char , ++with a \%\*(``#define\*('' for compatibility. + .bP + HP-UX + .I curses + equates some of the +-.B \%ACS_ ++.I \%ACS_ + symbols to the analogous +-.B \%WACS_ ++.I \%WACS_ + symbols as if the +-.B \%ACS_ ++.I \%ACS_ + symbols were wide characters + (see \fB\%curs_add_wch\fP(3X)). + The misdefined symbols are the arrows and others that are not used for +@@ -371,7 +432,7 @@ + (Issues\ 2 through 7) + has a typographical error + for the +-.B \%ACS_LANTERN ++.I \%ACS_LANTERN + symbol, equating its \*(``VT100+ Character\*('' to \*(``I\*('' + (capital I), + while the header files for SVr4 +@@ -391,37 +452,10 @@ + (AT&T PC6300 with EMOTS Terminal Emulator) + description uses lowercase i. + .PP +-Some ACS symbols +-.RB \%( ACS_S3 , +-.BR \%ACS_S7 , +-.BR \%ACS_LEQUAL , +-.BR \%ACS_GEQUAL , +-.BR \%ACS_PI , +-.BR \%ACS_NEQUAL , +-and +-.BR \%ACS_STERLING ) +-were not documented in any publicly released System\ V. +-.\" And did not exist yet as late as SVr4. +-.\" https://github.com/ryanwoodsmall/oldsysv/blob/master/\ +-.\" sysvr4/svr4/lib/xlibcurses/screen/curses.ed +-However, +-many publicly available +-.I \%term\%info +-entries include +-.B \%acsc +-capabilities in which their key characters +-.RB ( pryz{|} ) +-are embedded, +-and a second-hand list of their character descriptions has come to +-light. +-The +-.I \%ncurses +-developers invented ACS-prefixed names for them. +-.PP + The + .I displayed + values of +-.B \%ACS_ ++.I \%ACS_ + constants depend on + .bP + the +@@ -442,7 +476,7 @@ + environment variable in \fB\%ncurses\fP(3X). + .SS "Character Set" + X/Open Curses assumes that the parameter passed to +-.B \%waddch ++.I \%waddch + contains a single character. + That character may have been more than eight bits wide in an SVr3 or + SVr4 implementation, +@@ -454,7 +488,7 @@ + attributes and a color pair identifier into a + .I \%chtype + for passage to +-.B \%waddch ++.I \%waddch + is common. + A portable application uses only the macros discussed in + \fB\%curs_attr\fP(3X) to manipulate a +@@ -466,10 +500,10 @@ + holds an eight-bit character, + but the library allows a multibyte character sequence to be passed via a + succession of calls to +-.BR \%waddch "." ++.IR \%waddch "." + Other implementations do not; + a +-.B \%waddch ++.I \%waddch + call transmits exactly one character, + which may be rendered in one or more screen locations depending on + whether it is printable +@@ -477,7 +511,7 @@ + Depending on the locale, + .I \%ncurses + inspects the byte passed in each +-.B \%waddch ++.I \%waddch + call and checks whether the latest call continues a multibyte character. + When a character is + .IR complete "," +@@ -506,13 +540,33 @@ + .IR \%wadd_wch "." + .SH HISTORY + 4BSD (1980) +-.I curses + introduced +-.IR \%waddch "." ++.I \%waddch ++and its variants. + .PP + SVr3 (1987) +-added +-.IR \%wechochar "." ++added the ++.I \%echochar ++and ++.I \%wechochar ++functions and most of the ++.I ACS_ ++constants, ++except for ++.IR \%ACS_GEQUAL "," ++.IR \%ACS_LEQUAL "," ++.IR \%ACS_NEQUAL "," ++.IR \%ACS_PI "," ++.IR \%ACS_S3 "," ++.IR \%ACS_S7 "," ++and ++.IR \%ACS_STERLING "." ++.PP ++.I \%ncurses ++1.9.6 (1995) ++furnished the remaining ++.I ACS_ ++constants. + .SH SEE ALSO + \fB\%curs_add_wch\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_addchstr.3x +Prereq: 1.58 +--- ncurses-6.5-20250125+/man/curs_addchstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_addchstr.3x 2025-02-01 22:50:42.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_addchstr.3x,v 1.58 2025/01/19 00:49:39 tom Exp $ +-.TH curs_addchstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_addchstr.3x,v 1.60 2025/02/01 22:50:42 tom Exp $ ++.TH curs_addchstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -147,10 +147,7 @@ + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 473 + .SH HISTORY + SVr3.1 (1987) +-introduced +-.I \%waddchstr +-and +-.IR \%waddchnstr "." ++introduced these functions. + .SH SEE ALSO + \fB\%curs_add_wchstr\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_addstr.3x +Prereq: 1.65 +--- ncurses-6.5-20250125+/man/curs_addstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_addstr.3x 2025-02-01 22:48:11.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_addstr.3x,v 1.65 2025/01/19 00:49:39 tom Exp $ +-.TH curs_addstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_addstr.3x,v 1.67 2025/02/01 22:48:11 tom Exp $ ++.TH curs_addstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -133,7 +133,6 @@ + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 474 + .SH HISTORY + 4BSD (1980) +-.I curses + introduced + .I \%waddstr + along with its variants, +Index: man/curs_addwstr.3x +Prereq: 1.56 +--- ncurses-6.5-20250125+/man/curs_addwstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_addwstr.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_addwstr.3x,v 1.56 2025/01/19 00:49:39 tom Exp $ +-.TH curs_addwstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_addwstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp $ ++.TH curs_addwstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -142,8 +142,7 @@ + \*(``an integer value other than + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 478 + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 + of the same year + specified functions named +Index: man/curs_attr.3x +Prereq: 1.127 +--- ncurses-6.5-20250125+/man/curs_attr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_attr.3x 2025-02-01 23:59:36.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_attr.3x,v 1.127 2025/01/19 00:49:39 tom Exp $ +-.TH curs_attr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_attr.3x,v 1.133 2025/02/01 23:59:36 tom Exp $ ++.TH curs_attr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -362,6 +362,7 @@ + .BR \%chgat "," + .BR \%mvchgat "," + .BR \%mvwchgat "," ++.BR \%wchgat "," + and + .B \%color_set + are part of +@@ -380,7 +381,7 @@ + .B \%standend + may be implemented as macros. + .PP +-Color pair values be logically \*(``or\*(''-ed with attributes ++Color pair values may be logically \*(``or\*(''-ed with attributes + if the pair number is less than 256. + The alternate functions such as \fBcolor_set\fP can pass a color pair + value directly. +@@ -556,7 +557,6 @@ + .\" --------------------------------------------------------------------------- + .SH HISTORY + 4BSD (1980) +-.I curses + used a + .I char + to represent each cell of the terminal screen. +@@ -582,7 +582,8 @@ + .I curses + could do nothing with them. + .PP +-SVr2 (1984) provided an improved ++SVr2 (1984) ++provided an improved + .I curses + library, + introducing +@@ -621,7 +622,7 @@ + macro along with a color system; + see \fBcurs_color\fP(3X). + .PP +-X/Open Curses is largely based on SVr4 ++X/Open Curses Issue\ 4 (1995) is largely based on SVr4 + .IR curses "," + but recognized that the + .I \%wchar_t +@@ -648,13 +649,11 @@ + and + .IR \%wattr_set ")," + and some new +-.RI \%( color_set , +-.IR \%wcolor_set "," +-.IR \%chgat "," +-.IR \%wchgat "," +-.IR \%mvchgat "," ++.RI \%( chgat ++and its variants, ++.IR \%color_set "," + and +-.IR \%mvwchgat ")." ++.IR \%wcolor_set ")." + .PP + Different Unix systems used differently sized bit fields in + .I \%chtype +Index: man/curs_beep.3x +Prereq: 1.39 +--- ncurses-6.5-20250125+/man/curs_beep.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_beep.3x 2025-02-01 23:46:11.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_beep.3x,v 1.39 2025/01/19 00:49:39 tom Exp $ +-.TH curs_beep 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_beep.3x,v 1.42 2025/02/01 23:46:11 tom Exp $ ++.TH curs_beep 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .SH NAME + \fB\%beep\fP, + \fB\%flash\fP \- +@@ -97,13 +97,14 @@ + On SVr4 + .IR curses "," + they always return +-.BR OK "," ++.IR OK "," + and X/Open Curses specifies them as doing so. + .SH HISTORY ++SVr2 (1984) ++introduced + .I beep + and +-.I flash +-appeared in SVr2 (1984). ++.IR flash "." + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%terminfo\fP(5) +Index: man/curs_bkgrnd.3x +Prereq: 1.55 +--- ncurses-6.5-20250125+/man/curs_bkgrnd.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_bkgrnd.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_bkgrnd.3x,v 1.55 2025/01/19 00:49:39 tom Exp $ +-.TH curs_bkgrnd 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_bkgrnd.3x,v 1.57 2025/02/01 22:54:32 tom Exp $ ++.TH curs_bkgrnd 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -250,7 +250,7 @@ + .IR curses 's + non-wide functions for manipulating the window background. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4. ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + .SH SEE ALSO + \fB\%curs_bkgd\fP(3X) describes the corresponding functions in the + non-wide configuration of +Index: man/curs_border.3x +Prereq: 1.60 +--- ncurses-6.5-20250125+/man/curs_border.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_border.3x 2025-02-02 00:00:33.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_border.3x,v 1.60 2025/01/19 00:49:39 tom Exp $ +-.TH curs_border 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_border.3x,v 1.63 2025/02/02 00:00:33 tom Exp $ ++.TH curs_border 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -39,6 +39,11 @@ + .ie t .ds '' '' + .el .ds '' "" + .\} ++. ++.de bP ++.ie n .IP \(bu 4 ++.el .IP \(bu 2 ++.. + .SH NAME + \fB\%border\fP, + \fB\%wborder\fP, +@@ -57,90 +62,129 @@ + \fB#include <curses.h> + .PP + \fBint border(chtype \fIls\fP, chtype \fIrs\fP, chtype \fIts\fP, chtype \fIbs\fP, +- \fBchtype \fItl\fB, chtype \fItr\fB, chtype \fIbl\fB, chtype \fIbr\fB);\fR ++ \fBchtype \fItl\fB, chtype \fItr\fB, chtype \fIbl\fB, chtype \fIbr\fB);\fR + \fBint wborder(WINDOW *\fIwin\fB, chtype \fIls\fB, chtype \fIrs\fB,\fR +- \fBchtype \fIts\fB, chtype \fIbs\fB, chtype \fItl\fB, chtype \fItr\fB,\fR +- \fBchtype \fIbl\fB, chtype \fIbr\fB);\fR ++ \fBchtype \fIts\fB, chtype \fIbs\fB, chtype \fItl\fB, chtype \fItr\fB,\fR ++ \fBchtype \fIbl\fB, chtype \fIbr\fB);\fR + .PP + \fBint box(WINDOW *\fIwin\fB, chtype \fIverch\fB, chtype \fIhorch\fB);\fR + .PP + \fBint hline(chtype \fIch\fB, int \fIn\fB);\fR + \fBint whline(WINDOW *\fIwin\fB, chtype \fIch\fB, int \fIn\fB);\fR +-\fBint vline(chtype \fIch\fB, int \fIn\fB);\fR +-\fBint wvline(WINDOW *\fIwin\fB, chtype \fIch\fB, int \fIn\fB);\fR +-.PP + \fBint mvhline(int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR + \fBint mvwhline(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR ++.PP ++\fBint vline(chtype \fIch\fB, int \fIn\fB);\fR ++\fBint wvline(WINDOW *\fIwin\fB, chtype \fIch\fB, int \fIn\fB);\fR + \fBint mvvline(int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR + \fBint mvwvline(WINDOW *\fIwin\fB, int \fIy\fB, int \fIx\fB, chtype \fIch\fB, int \fIn\fB);\fR + .fi + .SH DESCRIPTION +-The \fBborder\fP, \fBwborder\fP and \fBbox\fP routines +-draw a box around the edges of a window. +-Other than the window, each argument is a character with attributes: +-.sp ++.B \%wborder ++and ++.B \%border ++draw a box at the edges of the specified window or ++.BR \%stdscr "," ++respectively. ++Each ++.I \%chtype ++argument corresponds to a geometric component of the border as follows: + .RS +-\fIls\fP \- left side, ++.I ls ++\- left side, + .br +-\fIrs\fP \- right side, ++.I rs ++\- right side, + .br +-\fIts\fP \- top side, ++.I ts ++\- top side, + .br +-\fIbs\fP \- bottom side, ++.I bs ++\- bottom side, + .br +-\fItl\fP \- top left-hand corner, ++.I tl ++\- top left-hand corner, + .br +-\fItr\fP \- top right-hand corner, ++.I tr ++\- top right-hand corner, + .br +-\fIbl\fP \- bottom left-hand corner, and ++.I bl ++\- bottom left-hand corner, and + .br +-\fIbr\fP \- bottom right-hand corner. ++.I br ++\- bottom right-hand corner. + .RE + .PP +-If any of these arguments is zero, then the corresponding +-default values (defined in \fBcurses.h\fP) are used instead: +-.sp ++If any ++.I \%chtype ++argument is ++.BR 0 "," ++then ++.I curses ++uses forms-drawing characters ++(see \fBaddch\fP(3X)) ++in the following correspondence: + .RS +-\fBACS_VLINE\fP, ++.BR \%ACS_VLINE "," + .br +-\fBACS_VLINE\fP, ++.BR \%ACS_VLINE "," + .br +-\fBACS_HLINE\fP, ++.BR \%ACS_HLINE "," + .br +-\fBACS_HLINE\fP, ++.BR \%ACS_HLINE "," + .br +-\fBACS_ULCORNER\fP, ++.BR \%ACS_ULCORNER "," + .br +-\fBACS_URCORNER\fP, ++.BR \%ACS_URCORNER "," + .br +-\fBACS_LLCORNER\fP, ++.BR \%ACS_LLCORNER "," ++and + .br +-\fBACS_LRCORNER\fP. ++.BR \%ACS_LRCORNER "." + .RE + .PP +-\fBbox(\fIwin\fB, \fIverch\fB, \fIhorch\fB)\fR is a shorthand +-for the following call: \fBwborder(\fIwin\fB,\fR \fIverch\fB,\fR +-\fIverch\fB,\fR \fIhorch\fB,\fR \fIhorch\fB, 0, 0, 0, 0)\fR. +-.PP +-The \fBhline\fP and \fBwhline\fP functions draw a horizontal (left to right) +-line using \fIch\fP starting at the current cursor position in the window. +-The +-current cursor position is not changed. +-The line is at most \fIn\fP characters +-long, or as many as fit into the window. +-.PP +-The \fBvline\fP and \fBwvline\fP functions draw a vertical (top to bottom) line +-using \fIch\fP starting at the current cursor position in the window. +-The +-current cursor position is not changed. +-The line is at most \fIn\fP characters +-long, or as many as fit into the window. ++.BI \%box( win "," ++.IB verch , ++.IB horch ) ++is shorthand for ++.RB \%\*(`` wborder(\c ++.IB win , ++.IB verch , ++.IB horch , ++.BR "0, 0, 0, 0)" "\*(''." ++.PP ++.B \%whline ++draws a horizontal line of ++.I ch ++from left to right, ++and ++.B \%wvline ++a vertical one from top to bottom, ++stopping once ++.I n ++characters have been drawn or upon reaching the boundary of ++.IR win "." ++These functions do not update the cursor position ++(beyond any motion directed by their \*(``mv\*('' variants). ++\fB\%ncurses\fP(3X) describes the variants of these functions. + .SH RETURN VALUE +-All routines return the integer \fBOK\fP. +-.PP +-This implementation returns ++These functions return ++.B OK ++on success and + .B ERR +-if the window pointer is null. ++on failure. ++.PP ++In ++.IR \%ncurses "," ++.bP ++these functions fail if the screen is not initialized; ++and ++.bP ++functions taking a ++.I \%WINDOW ++pointer argument fail if ++.I win ++is a null pointer. + .PP + Functions prefixed with \*(``mv\*('' first perform cursor movement and + fail if the position +@@ -148,13 +192,33 @@ + .IR x ) + is outside the window boundaries. + .SH NOTES +-.B \%border +-and ++Unusually, ++there is no ++.B \%wbox ++function; + .B \%box ++behaves as one would expect ++.B \%wbox ++to, ++accepting a ++.I \%WINDOW ++pointer argument. ++.PP ++.BR \%border "," ++.BR \%box "," ++.BR \%hline "," ++.BR \%mvhline "," ++.BR \%mvwhline "," ++.BR \%vline "," ++.BR \%mvvline "," ++and ++.B \%mvwvline + may be implemented as macros. + .PP +-The borders generated by these functions are \fIinside\fP borders (this +-is also true of SVr4 curses, though the fact is not documented). ++Borders drawn by these functions are ++.I interior ++borders. ++.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/libcurses/box.c + .SH PORTABILITY + These functions are described in X/Open Curses Issue\ 4. + It specifies no error conditions for them. +@@ -176,6 +240,42 @@ + in + .IR \%ncurses "," + it does not. ++.PP ++BSD ++.I curses ++drew boxes with ++.I horch ++in ++.I every ++character cell of the top and bottom lines of the window, ++whereas SVr3.1 and later ++.IR curses "," ++because its ++.I box ++wrapped ++.IR wborder "," ++used the default corner characters. ++.\" https://github.com/ryanwoodsmall/oldsysv/blob/master/sysvr3/31/\ ++.\" usr/src/lib/libcurses/screen/curses.ed#L454 ++.SH HISTORY ++4BSD (1980) ++introduced ++.IR box "," ++defining it as a function. ++.PP ++SVr3.1 (1987) ++added ++.I \%whline ++and ++.I \%wvline ++and their variants, ++as well as ++.I \%border ++and ++.IR \%wborder "," ++redefining ++.I \%box ++as a macro wrapping the latter. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_outopts\fP(3X) +Index: man/curs_border_set.3x +Prereq: 1.43 +--- ncurses-6.5-20250125+/man/curs_border_set.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_border_set.3x 2025-02-02 00:04:21.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_border_set.3x,v 1.43 2025/01/19 00:49:39 tom Exp $ +-.TH curs_border_set 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_border_set.3x,v 1.48 2025/02/02 00:04:21 tom Exp $ ++.TH curs_border_set 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -56,46 +56,33 @@ + .nf + \fB#include <curses.h> + .PP +-\fBint border_set( +- \fBconst cchar_t *\fIls\fB, const cchar_t *\fIrs\fP, +- \fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP, +- \fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP, +- \fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR +-.br +-\fBint wborder_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBconst cchar_t *\fIls\fB, const cchar_t *\fIrs\fP, +- \fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP, +- \fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP, +- \fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR +-\fBint box_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBconst cchar_t *\fIverch\fP, +- \fBconst cchar_t *\fIhorch\fB);\fR +-\fBint hline_set(\fP +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint whline_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint mvhline_set(\fP +- \fBint \fIy\fB, int \fIx\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint mvwhline_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBint \fIy\fB, int \fIx\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint vline_set(\fP +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint wvline_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint mvvline_set(\fP +- \fBint \fIy\fB, int \fIx\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR +-\fBint mvwvline_set(\fP +- \fBWINDOW *\fIwin\fP, +- \fBint \fIy\fB, int \fIx\fP, +- \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR ++\fBint border_set(const cchar_t *\fIls\fB, const cchar_t *\fIrs\fP, ++ \fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP, ++ \fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP, ++ \fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR ++.br ++\fBint wborder_set(\fBWINDOW *\fIwin\fP, ++ \fBconst cchar_t *\fIls\fB, const cchar_t *\fIrs\fP, ++ \fBconst cchar_t *\fIts\fB, const cchar_t *\fIbs\fP, ++ \fBconst cchar_t *\fItl\fB, const cchar_t *\fItr\fP, ++ \fBconst cchar_t *\fIbl\fB, const cchar_t *\fIbr\fB);\fR ++.PP ++\fBint box_set(\fBWINDOW *\fIwin\fP, \fBconst cchar_t *\fIverch\fP, ++ \fBconst cchar_t *\fIhorch\fB);\fR ++.PP ++\fBint hline_set(const cchar_t *\fIwch\fB, int \fIn\fB);\fR ++\fBint whline_set(WINDOW *\fIwin\fP, \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR ++\fBint mvhline_set(int \fIy\fB, int \fIx\fP, \fBconst cchar_t *\fIwch\fB,\fR ++ \fBint \fIn\fB);\fR ++\fBint mvwhline_set(WINDOW *\fIwin\fP, \fBint \fIy\fB, int \fIx\fP, ++ \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR ++.PP ++\fBint vline_set(const cchar_t *\fIwch\fB, int \fIn\fB);\fR ++\fBint wvline_set(WINDOW *\fIwin\fP, \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR ++\fBint mvvline_set(int \fIy\fB, int \fIx\fP, \fBconst cchar_t *\fIwch\fB,\fR ++ \fBint \fIn\fB);\fR ++\fBint mvwvline_set(WINDOW *\fIwin\fP, \fBint \fIy\fB, int \fIx\fP, ++ \fBconst cchar_t *\fIwch\fB, int \fIn\fB);\fR + .fi + .SH DESCRIPTION + The +@@ -197,7 +184,10 @@ + .B \%vline_set + may be implemented as macros. + .SH PORTABILITY +-These functions are described in X/Open Curses Issue\ 4. ++X/Open Curses Issue\ 4 describes these functions. ++It specifies no error conditions for them. ++.SH HISTORY ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_add_wch\fP(3X), +Index: man/curs_deleteln.3x +Prereq: 1.48 +--- ncurses-6.5-20250125+/man/curs_deleteln.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_deleteln.3x 2025-02-01 22:49:56.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_deleteln.3x,v 1.48 2025/01/19 00:49:39 tom Exp $ +-.TH curs_deleteln 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_deleteln.3x,v 1.51 2025/02/01 22:49:56 tom Exp $ ++.TH curs_deleteln 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -132,14 +132,17 @@ + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 490 + .SH HISTORY + 4BSD (1980) +-.I curses + introduced +-.I \%wdeleteln ++.IR \%deleteln "," ++.IR \%wdeleteln "," ++.IR \%insertln "," + and + .IR \%winsertln "." + .PP + SVr3.1 (1987) + added ++.I \%insdelln ++and + .IR \%winsdelln "." + .SH SEE ALSO + \fB\%curses\fP(3X) +Index: man/curs_get_wch.3x +Prereq: 1.59 +--- ncurses-6.5-20250125+/man/curs_get_wch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_get_wch.3x 2025-02-02 00:01:24.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_get_wch.3x,v 1.59 2025/01/19 00:49:39 tom Exp $ +-.TH curs_get_wch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_get_wch.3x,v 1.64 2025/02/02 00:01:24 tom Exp $ ++.TH curs_get_wch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -193,8 +193,9 @@ + .PP + Functions taking a + .I \%WINDOW +-pointer argument fail if the pointer is +-.IR NULL "." ++pointer argument fail if ++.I win ++is a null pointer. + .PP + Functions prefixed with \*(``mv\*('' first perform cursor movement and + fail if the position +@@ -248,17 +249,15 @@ + .PP + See the \*(``PORTABILITY\*('' section of \fB\%wgetch\fP(3X) regarding + the interaction of +-.B \%wget_wch ++.I \%wget_wch + with signal handlers. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 + of the same year + specified functions named + .I \%wgetwch +-(with the usual variants) +-and ++(with its variants) + .IR \%ungetwch "." + .\" SVID 4, vol 3., pp. 496-499 + These were later additions to +Index: man/curs_get_wstr.3x +Prereq: 1.64 +--- ncurses-6.5-20250125+/man/curs_get_wstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_get_wstr.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_get_wstr.3x,v 1.64 2025/01/19 00:49:39 tom Exp $ +-.TH curs_get_wstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_get_wstr.3x,v 1.68 2025/02/01 22:54:32 tom Exp $ ++.TH curs_get_wstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -98,7 +98,7 @@ + .IR WEOF ); + .bP + interprets the screen's erase and kill characters +-(see \fB\%erasechar\fP(3X) and \fB\%killchar\fP(3X)); ++(see \fB\%erasewchar\fP(3X) and \fB\%killwchar\fP(3X)); + .bP + recognizes function keys only if the screen's keypad option is enabled + (see \fB\%keypad\fP(3X)); +@@ -363,6 +363,28 @@ + for consistency with SVr4 + .IR curses 's + .IR \%wgetnstr . ++.SH HISTORY ++X/Open Curses Issue\ 4 (1995) initially specified these functions. ++The System\ V Interface Definition Version\ 4 ++of the same year ++specified functions named ++.I \%wgetwstr ++and ++.I \%wgetnwstr ++(and the usual variants). ++.\" SVID 4, vol 3., p. 500 ++These were later additions to ++.RI SVr4. x , ++not appearing in the first SVr4 (1989). ++Except in name, ++their declarations did not differ from X/Open's later ++.I \%wget_wstr ++and ++.I \%wgetn_wstr ++until ++X/Open Curses Issue 7 (2009) ++eventually changed the type of the buffer argument to a pointer to ++.IR \%wint_t "." + .SH SEE ALSO + \fB\%curs_getstr\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_getcchar.3x +Prereq: 1.53 +--- ncurses-6.5-20250125+/man/curs_getcchar.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_getcchar.3x 2025-02-01 23:46:11.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_getcchar.3x,v 1.53 2025/01/19 00:49:39 tom Exp $ +-.TH curs_getcchar 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_getcchar.3x,v 1.56 2025/02/01 23:46:11 tom Exp $ ++.TH curs_getcchar 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds ' \(aq + .\} +@@ -274,7 +274,7 @@ + attributes + (at least 15 bits' worth, + inferred from the count of specified +-.B WA_ ++.I WA_ + constants), + .\" See X/Open Curses Issue 7, p. 307. + .bP +@@ -344,8 +344,7 @@ + value; + doing so alters the library's ABI. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_attr\fP(3X), +Index: man/curs_getch.3x +Prereq: 1.114 +--- ncurses-6.5-20250125+/man/curs_getch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_getch.3x 2025-02-02 00:00:59.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_getch.3x,v 1.114 2025/01/19 00:49:39 tom Exp $ +-.TH curs_getch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_getch.3x,v 1.117 2025/02/02 00:00:59 tom Exp $ ++.TH curs_getch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -477,8 +477,9 @@ + .PP + Functions taking a + .I \%WINDOW +-pointer argument fail if the pointer is +-.IR NULL "." ++pointer argument fail if ++.I win ++is a null pointer. + .PP + Functions prefixed with \*(``mv\*('' first perform cursor movement and + fail if the position +@@ -648,16 +649,16 @@ + \*(``an integer value other than + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 494 + .PP +-.B \%wgetch ++.I \%wgetch + reads only single-byte characters. + .PP + The echo behavior of these functions on input of +-.B KEY_ ++.I KEY_ + or backspace characters is not documented in SVr4 + .IR curses "." + .PP + The behavior of +-.B \%wgetch ++.I \%wgetch + in the presence of signal handlers is not documented in SVr4 + .I curses + and is unspecified by X/Open Curses. +@@ -673,18 +674,18 @@ + .I curses + application prepares for two cases: + (a) signal receipt does not interrupt +-.BR \%wgetch ";" ++.IR \%wgetch ";" + or + (b) signal receipt interrupts +-.B \%wgetch ++.I \%wgetch + and causes it to return +-.B ERR ++.I ERR + with +-.B \%errno ++.I \%errno + set to +-.BR \%EINTR "." ++.IR \%EINTR "." + .PP +-.B \%KEY_MOUSE ++.I \%KEY_MOUSE + is mentioned in X/Open Curses, + along with a few related + .I \%term\%info +@@ -694,9 +695,9 @@ + .I \%ncurses + is an extension. + .PP +-.B \%KEY_RESIZE ++.I \%KEY_RESIZE + and +-.B \%has_key ++.I \%has_key + are extensions first implemented for + .IR \%ncurses "." + By 2022, +@@ -707,7 +708,7 @@ + .I curses + .\" https://web.archive.org/web/20200923185647/https://man.netbsd.org/curses_input.3 + had added them along with +-.BR \%KEY_MOUSE "." ++.IR \%KEY_MOUSE "." + .SH SEE ALSO + ECMA-6 \*(``7-bit coded Character Set\*('' + \%<https://\*:ecma\-international\*:.org/\ +Index: man/curs_getstr.3x +Prereq: 1.80 +--- ncurses-6.5-20250125+/man/curs_getstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_getstr.3x 2025-02-01 22:49:13.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_getstr.3x,v 1.80 2025/01/19 00:49:39 tom Exp $ +-.TH curs_getstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_getstr.3x,v 1.85 2025/02/01 22:49:13 tom Exp $ ++.TH curs_getstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -289,8 +289,7 @@ + .PP + without further detail. + It lied. +-In fact, +-the \*(``character\*('' value ++The \*(``character\*('' value + appended to the string + by those implementations + was predictable but not useful \(em +@@ -482,7 +481,6 @@ + .IR curses "." + .SH HISTORY + 4BSD (1980) +-.I curses + introduced + .I \%wgetstr + along with its variants. +@@ -492,11 +490,12 @@ + .IR \%wgetnstr "," + but none of its variants. + .PP +-X/Open Curses Issue\ 4 (1995) specified ++X/Open Curses Issue\ 4 (1995) ++specified + .IR \%getnstr "," +-.IR \%mvwgetnstr "," ++.IR \%mvgetnstr "," + and +-.IR \%mvgetnstr "." ++.IR \%mvwgetnstr "." + .SH SEE ALSO + \fB\%curs_get_wstr\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_getyx.3x +Prereq: 1.53 +--- ncurses-6.5-20250125+/man/curs_getyx.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_getyx.3x 2025-02-01 22:48:11.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_getyx.3x,v 1.53 2025/01/19 00:49:39 tom Exp $ +-.TH curs_getyx 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_getyx.3x,v 1.55 2025/02/01 22:48:11 tom Exp $ ++.TH curs_getyx 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -157,7 +157,6 @@ + macro hides this difference. + .SH HISTORY + 4BSD (1980) +-.I curses + introduced + .IR \%getyx "." + .PP +Index: man/curs_in_wch.3x +Prereq: 1.42 +--- ncurses-6.5-20250125+/man/curs_in_wch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_in_wch.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_in_wch.3x,v 1.42 2025/01/19 00:49:39 tom Exp $ +-.TH curs_in_wch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_in_wch.3x,v 1.44 2025/02/01 22:54:32 tom Exp $ ++.TH curs_in_wch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -104,8 +104,7 @@ + X/Open Curses Issue\ 4 describes these functions. + It specifies no error conditions for them. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 + of the same year + specified a function named +Index: man/curs_in_wchstr.3x +Prereq: 1.46 +--- ncurses-6.5-20250125+/man/curs_in_wchstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_in_wchstr.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_in_wchstr.3x,v 1.46 2025/01/19 00:49:39 tom Exp $ +-.TH curs_in_wchstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_in_wchstr.3x,v 1.48 2025/02/01 22:54:32 tom Exp $ ++.TH curs_in_wchstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -126,8 +126,7 @@ + X/Open Curses Issue\ 4 describes these functions. + It specifies no error conditions for them. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 + of the same year + specified a function named +Index: man/curs_initscr.3x +Prereq: 1.86 +--- ncurses-6.5-20250125+/man/curs_initscr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_initscr.3x 2025-02-02 00:01:55.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_initscr.3x,v 1.86 2025/01/19 00:49:39 tom Exp $ +-.TH curs_initscr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_initscr.3x,v 1.92 2025/02/02 00:01:55 tom Exp $ ++.TH curs_initscr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -219,7 +219,7 @@ + restores terminal modes (see \fB\%reset_shell_mode\fP(3X)). + .PP + Calling \fB\%refresh\fP(3X) or \fB\%doupdate\fP(3X) after a +-temporary escape causes ++temporary suspension causes + .I curses + to resume managing the terminal. + .SS isendwin +@@ -319,58 +319,214 @@ + In + .IR \%ncurses "," + .B \%set_term +-does not fail. ++does not fail, ++and ++.B \%initscr ++exits the application if it does not operate successfully. ++.SH NOTES ++.I \%ncurses ++establishes signal handlers when a function that initializes a ++.IR SCREEN "," ++either ++.B \%initscr ++or ++.BR \%newterm "," ++is first called. ++Applications that wish to handle the following signals themselves ++should set up their corresponding handlers ++.I after ++initializing the screen. ++.TP ++.I SIGINT ++.IR \%ncurses 's ++handler ++.I attempts ++to clean up the screen on exit. ++Although it ++.I usually ++works as expected, ++there are limitations. ++.RS ++.bP ++Walking the ++.I SCREEN ++list is unsafe, since all list management ++is done without any signal blocking. ++.bP ++When an application has been built with the ++.I \%_REENTRANT ++macro defined ++(and corresponding system support), ++.B \%set_term ++uses functions that could deadlock or misbehave in other ways. ++.bP ++.B \%endwin ++calls other functions, ++many of which use \fI\%stdio\fP(3) or other library functions that are ++clearly unsafe. ++.RE ++.TP ++.I SIGTERM ++.I \%ncurses ++uses the same handler as for ++.IR \%SIGINT "," ++with the same limitations. ++It is not mentioned in X/Open Curses, ++but is more suitable for this purpose than ++.I \%SIGQUIT ++(which is used in debugging). ++.TP ++.I SIGTSTP ++.IR \%ncurses 's ++handler manages the terminal-generated stop signal, ++used in job control. ++When resuming the process, ++.I \%ncurses ++discards pending input with \fB\%flushinp\fP(3X) ++and repaints the screen, ++assuming that it has been completely altered. ++It also updates the saved terminal modes with ++\fB\%def_shell_mode\fP(3X). ++.TP ++.I SIGWINCH ++.I \%ncurses ++handles changes to the terminal's window size, ++a phenomenon ignored in standardization efforts. ++It sets a (signal-safe) variable ++that is later tested by \fB\%wgetch\fP(3X) and \fB\%wget_wch\fP(3X). ++.RS ++.bP ++.B \%wgetch ++returns the key code ++.BR \%KEY_RESIZE "." ++.bP ++.B \%wget_wch ++returns ++.B \%KEY_CODE_YES ++and sets its ++.I wch ++parameter to ++.BR \%KEY_RESIZE "." ++.RE ++.IP ++At the same time, ++.I \%ncurses ++calls \fB\%resizeterm\fP(3X) ++to adjust the standard screen ++.BR \%stdscr "," ++and update global variables such as ++.B LINES ++and ++.BR COLS "." + .SH PORTABILITY + X/Open Curses Issue\ 4 describes these functions. + It specifies no error conditions for them. + .SS Differences + X/Open Curses specifies that portable applications must not +-call \fB\%initscr\fP more than once: ++call ++.I \%initscr ++more than once. + .bP +-The portable way to use \fB\%initscr\fP is once only, +-using \fB\%refresh\fP(3X) +-to restore the screen after \fB\%endwin\fP. ++The portable way to use ++.I \%initscr ++is once only, ++using ++.I \%refresh ++to restore the screen after ++.IR \%endwin "." + .bP +-This implementation allows using \fB\%initscr\fP after \fB\%endwin\fP. ++.I \%ncurses ++permits use of ++.I \%initscr ++after ++.IR \%endwin "." + .PP +-Old versions of curses, e.g., BSD 4.4, would return a null pointer +-from \fB\%initscr\fP when an error is detected, rather than exiting. +-It is safe but redundant to check the return value of \fB\%initscr\fP ++.I \%initscr ++in BSD, ++from its inception (1980) through the Net/2 release (1991) returned ++.I ERR ++cast to a ++.I \%WINDOW ++pointer when detecting an error. ++.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/libcurses/initscr.c ++.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=Net2/usr/src/lib/libcurses/initscr.c ++4.4BSD (1995) ++instead returned a null pointer. ++.\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4.4BSD/usr/src/lib/libcurses/initscr.c ++Neither exited the application. ++It is safe but redundant to check the return value of ++.I \%initscr + in X/Open Curses. + .PP +-Calling \fB\%endwin\fP does not dispose of the memory allocated in +-\fB\%initscr\fP or \fB\%newterm\fP. +-Deleting a \fISCREEN\fP provides a way to do this: +-.bP +-X/Open Curses does not say what happens to \fI\%WINDOW\fPs when +-\fB\%delscreen\fP +-\*(``frees storage associated with the \fISCREEN\fP\*('' ++Calling ++.I \%endwin ++does not dispose of the memory allocated by ++.I \%initscr ++or ++.IR \%newterm "." ++Deleting a ++.I SCREEN ++provides a way to do this. ++.bP ++X/Open Curses does not say what happens to ++.IR \%WINDOW s ++when ++.I \%delscreen ++\*(``frees storage associated with the ++.IR SCREEN "\*(''" + nor does the SVr4 documentation help, +-adding that it should be called after \fB\%endwin\fP if a \fISCREEN\fP ++adding that it should be called after ++.I \%endwin ++if a ++.I SCREEN + is no longer needed. + .bP +-However, \fI\%WINDOW\fPs are implicitly associated with a \fISCREEN\fP. +-so that it is reasonable to expect \fB\%delscreen\fP to deal with these. +-.bP +-SVr4 curses deletes the standard \fI\%WINDOW\fP structures +-\fB\%stdscr\fP and \fB\%curscr\fP as well as a work area \fB\%newscr\fP. +-SVr4 curses ignores other windows. ++However, ++.IR \%WINDOW s ++are implicitly associated with a ++.IR SCREEN "," ++so it is reasonable to expect ++.I \%delscreen ++to dispose of them. ++.bP ++SVr4 deletes the standard ++.I \%WINDOW ++structures ++.I \%stdscr ++and ++.I \%curscr ++as well as a work area ++.IR \%newscr "." ++It ignores other windows. + .bP + Since version 4.0 (1996), +-\fI\%ncurses\fP has maintained a list of all windows for each screen, +-using that information to delete those windows when \fB\%delscreen\fP is ++.I \%ncurses ++has maintained a list of all windows for each screen, ++using that information to delete those windows when ++.I \%delscreen ++is + called. + .bP +-NetBSD copied this feature of \fI\%ncurses\fP in 2001. ++NetBSD copied this feature of ++.I \%ncurses ++in 2001. + .I \%PDCurses + follows the SVr4 model, +-deleting only the standard \fI\%WINDOW\fP structures. ++deleting only the standard ++.I \%WINDOW ++structures. + .SS "High-level versus Low-level" + Different implementations may disagree regarding the level of some functions. +-For example, \fISCREEN\fP (returned by \fB\%newterm\fP) and +-\fI\%TERMINAL\fP (returned by \fB\%setupterm\fP(3X)) hold file ++For example, ++.I SCREEN ++(returned by ++.IR \%newterm ")" ++and ++.I \%TERMINAL ++(returned by \fB\%setupterm\fP(3X)) hold file + descriptors for the output stream. +-If an application switches screens using \fB\%set_term\fR, ++If an application switches screens using ++.IR \%set_term "," + or switches terminals using \fB\%set_curterm\fP(3X), + applications which use the output file descriptor can have different + behavior depending on which structure holds the corresponding descriptor. +@@ -380,21 +536,26 @@ + function uses the descriptor in + .IR \%TERMINAL "." + .I \%ncurses +-and SVr4 +-.I curses +-use the descriptor in ++and SVr4 use the descriptor in + .IR SCREEN "." + .bP +-NetBSD and \fI\%ncurses\fP use the descriptor +-in \fI\%TERMINAL\fP ++NetBSD and ++.I \%ncurses ++use the descriptor ++in ++.I \%TERMINAL + for terminal I/O modes, + e.g., + \fB\%def_shell_mode\fP(3X), + \fB\%def_prog_mode\fP(3X). +-SVr4 curses uses the descriptor in \fISCREEN\fP. ++SVr4 uses the descriptor in ++.IR SCREEN "." + .SS "Unset \fITERM\fP Variable" +-If the \fITERM\fP variable is missing or empty, \fB\%initscr\fP uses the +-value \*(``unknown\*('', ++If the ++.I TERM ++variable is missing or empty, ++.I \%initscr ++uses the value \*(``unknown\*('', + which normally corresponds to a terminal entry with the + .B \%generic + .RB ( gn ) +@@ -402,16 +563,19 @@ + Generic entries are detected by \fB\%setupterm\fP(3X) + and cannot be used for full-screen operation. + Other implementations may handle +-a missing/empty \fITERM\fP variable differently. ++a missing/empty ++.I TERM ++variable differently. + .SS "Signal Handlers" +-Quoting from X/Open Curses Issue\ 7, section 3.1.1: ++Quoting X/Open Curses Issue\ 7, ++section 3.1.1: + .RS 5 + .PP + Curses implementations may provide for special handling of the + \%SIGINT, + \%SIGQUIT, + and \%SIGTSTP signals if their disposition is \%SIG_DFL at the time +-.I \%initscr ++.IR \%initscr () + is called.\|.\|. + .PP + Any special handling for these signals may remain in effect for the +@@ -422,63 +586,9 @@ + with respect to signals.\|.\|. + .RE + .PP +-This implementation establishes signal handlers during initialization, +-e.g., \fB\%initscr\fP or \fB\%newterm\fP. +-Applications which must handle these signals should set up the corresponding +-handlers \fIafter\fP initializing the library: +-.TP 5 +-.B SIGINT +-The handler \fIattempts\fP to clean up the screen on exit. +-Although it \fIusually\fP works as expected, there are limitations: +-.RS 5 +-.bP +-Walking the \fISCREEN\fP list is unsafe, since all list management +-is done without any signal blocking. +-.bP +-On systems which have \fB\%REENTRANT\fP turned on, \fB\%set_term\fP uses +-functions which could deadlock or misbehave in other ways. +-.bP +-\fB\%endwin\fP calls other functions, +-many of which use \fI\%stdio\fP(3) or other library functions which are +-clearly unsafe. +-.RE +-.TP 5 +-.B SIGTERM +-This uses the same handler as \fB\%SIGINT\fP, with the same limitations. +-It is not mentioned in X/Open Curses, but is more suitable for this +-purpose than \fB\%SIGQUIT\fP (which is used in debugging). +-.TP 5 +-.B SIGTSTP +-This handles the \fIstop\fP signal, used in job control. +-When resuming the process, this implementation discards pending +-input with \fB\%flushinp\fP(3X), and repaints the screen +-assuming that it has been completely altered. +-It also updates the saved terminal modes with +-\fB\%def_shell_mode\fP(3X). +-.TP 5 +-.B SIGWINCH +-This handles the window-size changes which were ignored in +-the standardization efforts. +-The handler sets a (signal-safe) variable +-that is later tested by \fB\%wgetch\fP(3X) and \fB\%wget_wch\fP(3X). +-.RS +-.bP +-.B \%wgetch +-returns the key code +-.BR \%KEY_RESIZE "." +-.bP +-.B \%wget_wch +-returns +-.B \%KEY_CODE_YES +-and sets its +-.I wch +-parameter to +-.BR \%KEY_RESIZE "." +-.RE +-.IP +-At the same time, \fI\%ncurses\fP calls \fB\%resizeterm\fP to adjust the +-standard screen \fB\%stdscr\fP, +-and update other data such as \fBLINES\fP and \fBCOLS\fP. ++Section \*(``NOTES\*('' above discusses ++.IR \%ncurses 's ++signal handlers. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_kernel\fP(3X), +Index: man/curs_inopts.3x +Prereq: 1.89 +--- ncurses-6.5-20250125+/man/curs_inopts.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_inopts.3x 2025-02-02 00:02:25.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_inopts.3x,v 1.89 2025/01/19 00:49:39 tom Exp $ +-.TH curs_inopts 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_inopts.3x,v 1.93 2025/02/02 00:02:25 tom Exp $ ++.TH curs_inopts 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -111,7 +111,11 @@ + .I curses + offers configurable parameters permitting an application to control the + handling of input from the terminal. +-Some are global, ++Some, ++such as those affecting the terminal's ++.I mode ++or line discipline, ++are global, + applying to all windows; + others apply only to a specific window. + The library does not automatically apply such parameters to new or +@@ -135,19 +139,25 @@ + the terminal driver buffers typed characters, + not delivering them to an application + until a line feed or carriage return is typed. ++This canonical (\*(``cooked\*('') line discipline also supports ++software flow control, ++simple line editing functions ++(character and word erase, ++and whole-line erasure or \*(``kill\*(''), ++and job control. + .B \%cbreak + configures the terminal in + .IR "cbreak mode" "," + which disables line buffering +-and erase and kill character processing +-(the interrupt, ++and erase and kill character processing \(em ++the interrupt, + quit, + suspend, +-and flow control characters are unaffected) ++and flow control characters are unaffected \(em + and makes characters typed by the user immediately available to the + program. + .B \%nocbreak +-restores the terminal's canonical (\*(``cooked\*('') line discipline. ++restores canonical (\*(``cooked\*('') mode. + .PP + The state of the terminal is unknown to a + .I curses +@@ -299,9 +309,9 @@ + this is equivalent, + on POSIX systems, + to setting the CS7 flag on the terminal. +-The window argument, +-.IR win , +-is always ignored. ++.I curses ++ignores the window argument ++.IR win "." + If the + .I \%term\%info + string capabilities +@@ -371,8 +381,11 @@ + The default behavior is inherited from the terminal driver settings. + Calling + .B \%qiflush +-configures the terminal to flush the queues when any of these events +-occurs, ++configures the terminal to ++.I flush ++the queues ++(discarding their contents) ++when any of these events occurs, + giving the impression of faster response to user input, + but making the library's model of the screen contents incorrect. + Calling +@@ -424,12 +437,13 @@ + If + .I delay + is negative, +-a blocking read is used, ++.I curses ++uses a blocking read, + waiting indefinitely for input. + If + .I delay + is zero, +-a non-blocking read is used; ++the read is non-blocking; + an input character reading function returns + .B ERR + if no input is pending. +@@ -732,11 +746,9 @@ + 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. ++the library uses the later definition. + .SH HISTORY +-4BSD +-.I curses +-(1980) ++4BSD (1980) + introduced + .IR echo "," + .IR \%noecho "," +@@ -746,7 +758,8 @@ + and + .IR \%noraw "." \" also crmod and nocrmod, never standardized + .PP +-SVr2 (1984) featured a new terminal driver, ++SVr2 (1984) ++featured a new terminal driver, + extending the + .I curses + API to support it with +Index: man/curs_ins_wch.3x +Prereq: 1.43 +--- ncurses-6.5-20250125+/man/curs_ins_wch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_ins_wch.3x 2025-02-02 00:00:59.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_ins_wch.3x,v 1.43 2025/01/19 00:49:39 tom Exp $ +-.TH curs_ins_wch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_ins_wch.3x,v 1.46 2025/02/02 00:00:59 tom Exp $ ++.TH curs_ins_wch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -72,8 +72,9 @@ + .PP + Functions taking a + .I \%WINDOW +-pointer argument fail if the pointer is +-.IR NULL . ++pointer argument fail if ++.I win ++is a null pointer. + .PP + Functions prefixed with \*(``mv\*('' first perform cursor movement and + fail if the position +@@ -96,8 +97,7 @@ + X/Open Curses Issue\ 4 describes these functions. + It specifies no error conditions for them. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue\ 4 +-(1995). ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 + of the same year + specified a function named +Index: man/curs_ins_wstr.3x +Prereq: 1.56 +--- ncurses-6.5-20250125+/man/curs_ins_wstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_ins_wstr.3x 2025-02-01 22:54:32.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_ins_wstr.3x,v 1.56 2025/01/19 00:49:39 tom Exp $ +-.TH curs_ins_wstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_ins_wstr.3x,v 1.58 2025/02/01 22:54:32 tom Exp $ ++.TH curs_ins_wstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -183,7 +183,7 @@ + Nevertheless, + Issue\ 7 retains the language. + .SH HISTORY +-These functions were initially specified by X/Open Curses Issue 4. ++X/Open Curses Issue\ 4 (1995) initially specified these functions. + The System\ V Interface Definition Version\ 4 (1995), + specified functions named + .I \%winswstr +Index: man/curs_insch.3x +Prereq: 1.49 +--- ncurses-6.5-20250125+/man/curs_insch.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_insch.3x 2025-02-02 00:00:59.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_insch.3x,v 1.49 2025/01/19 00:49:39 tom Exp $ +-.TH curs_insch 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_insch.3x,v 1.51 2025/02/02 00:00:59 tom Exp $ ++.TH curs_insch 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -76,8 +76,9 @@ + .PP + Functions taking a + .I \%WINDOW +-pointer argument fail if the pointer is +-.IR NULL . ++pointer argument fail if ++.I win ++is a null pointer. + .PP + Functions prefixed with \*(``mv\*('' first perform cursor movement and + fail if the position +Index: man/curs_insstr.3x +Prereq: 1.68 +--- ncurses-6.5-20250125+/man/curs_insstr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_insstr.3x 2025-02-01 22:53:03.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_insstr.3x,v 1.68 2025/01/19 00:49:39 tom Exp $ +-.TH curs_insstr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_insstr.3x,v 1.70 2025/02/01 22:53:03 tom Exp $ ++.TH curs_insstr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -173,8 +173,8 @@ + since it makes this group of functions inconsistent. + No implementation of + .I curses +-documents this inconsistency, +-and Issue\ 7 removed it. ++manifests this inconsistency, ++and Issue\ 7 removed the claim. + .PP + Issue\ 4 states that the entire string is inserted if + .I n +@@ -196,7 +196,8 @@ + introduced + .I \%winsstr + and +-.IR \%winsnstr "." ++.I \%winsnstr ++and their variants. + .SH SEE ALSO + \fB\%curs_ins_wstr\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_instr.3x +Prereq: 1.68 +--- ncurses-6.5-20250125+/man/curs_instr.3x 2025-01-19 00:49:39.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_instr.3x 2025-02-01 22:54:06.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_instr.3x,v 1.68 2025/01/19 00:49:39 tom Exp $ +-.TH curs_instr 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_instr.3x,v 1.70 2025/02/01 22:54:06 tom Exp $ ++.TH curs_instr 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -207,6 +207,9 @@ + .SH HISTORY + SVr3.1 (1987) + introduced these functions. ++.IR winstr "," ++.IR winnstr "," ++and their variants. + .SH SEE ALSO + \fB\%curs_inwstr\fP(3X) describes comparable functions of the + .I \%ncurses +Index: man/curs_move.3x +Prereq: 1.54 +--- ncurses-6.5-20250125+/man/curs_move.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_move.3x 2025-02-01 22:50:42.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_move.3x,v 1.54 2025/01/19 00:51:10 tom Exp $ +-.TH curs_move 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_move.3x,v 1.57 2025/02/01 22:50:42 tom Exp $ ++.TH curs_move 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -101,9 +101,7 @@ + .IR ERR \*(''. \" Courier roman in source; SVID 4, vol. 3, p. 503 + .SH HISTORY + 4BSD (1980) +-.I curses +-introduced +-.IR \%wmove "." ++introduced these functions. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_refresh\fP(3X) +Index: man/curs_outopts.3x +Prereq: 1.78 +--- ncurses-6.5-20250125+/man/curs_outopts.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_outopts.3x 2025-02-01 22:49:13.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_outopts.3x,v 1.78 2025/01/19 00:51:10 tom Exp $ +-.TH curs_outopts 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_outopts.3x,v 1.81 2025/02/01 22:49:13 tom Exp $ ++.TH curs_outopts 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -218,20 +218,21 @@ + Use \fB\%curs_set\fP(3X) to make the cursor invisible. + .SH HISTORY + 4BSD (1980) +-.I curses + introduced + .IR \%clearok "," + .IR \%leaveok "," + and + .IR \%scrollok "." + .PP +-SVr2 (1984) supplied ++SVr2 (1984) ++supplied + .IR \%idlok "," + .IR \%setscrreg "," + and + .IR \%wsetscrreg "." + .PP +-SVr3.1 (1987) implemented ++SVr3.1 (1987) ++implemented + .I \%idcok + and + .IR \%immedok "." +Index: man/curs_scroll.3x +Prereq: 1.55 +--- ncurses-6.5-20250125+/man/curs_scroll.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_scroll.3x 2025-02-02 00:02:49.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_scroll.3x,v 1.55 2025/01/19 00:51:10 tom Exp $ +-.TH curs_scroll 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_scroll.3x,v 1.57 2025/02/02 00:02:49 tom Exp $ ++.TH curs_scroll 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -66,20 +66,12 @@ + .I i + becomes line + .IR i "\-1." +-The text of the top line in the window disappears and the bottom line +-is populated with the background character; +-see \fB\%bkgd\fP(3X) +-(wide-character API users: \fB\%bkgrnd\fP(3X)). +-As an optimization, +-if the scrolling region of the window is the entire screen, +-the physical screen may be scrolled at the same time; +-see \fB\%curscr\fP(3X). +-.PP +-.B \%scrl +-and + .B \%wscrl +-scrolls the specified window +-.I win ++and ++.B \%scrl ++scroll the specified window or ++.BR \%stdscr "," ++respectively, + up or down per the sign of + .IR n "." + .bP +@@ -98,9 +90,17 @@ + becomes + .I i + (scrolling down). +-\fB\%ncurses\fP(3X) describes the +-.B \%scrl +-variant of this function. ++.PP ++A line that scrolls beyond the window boundaries disappears; ++.I curses ++populates a new one emerging at the opposite boundary ++with the background character; ++see \fB\%bkgd\fP(3X) ++(wide-character API users: \fB\%bkgrnd\fP(3X)). ++As an optimization, ++if the scrolling region of the window is the entire screen, ++the physical screen may be scrolled at the same time; ++see \fB\%curscr\fP(3X). + .PP + The cursor does not move. + These functions perform no operation unless scrolling is enabled for the +@@ -112,18 +112,26 @@ + .B OK + upon success. + .PP +-.I \%ncurses +-returns ++In ++.IR \%ncurses "," ++they return + .B ERR +-if scrolling is not enabled in the window, +-for example with \fB\%scrollok\fP(3X), +-or if the +-.I \%WINDOW +-pointer is null. ++if ++.bP ++the ++.I curses ++screen has not been initialized, ++.bP ++.I win ++is a null pointer, ++or ++.bP ++scrolling is not enabled in the window ++(as by \fB\%scrollok\fP(3X)). + .SH NOTES +-.B \%scrl ++.B \%scroll + and +-.B \%wscrl ++.B \%scrl + may be implemented as macros. + .PP + Unusually, +@@ -160,6 +168,20 @@ + In + .IR \%ncurses "," + they do not. ++.SH HISTORY ++4BSD (1980) ++introduced ++.IR scroll "," ++defining it as a function. ++.PP ++SVr3.1 (1987) ++added ++.I \%scrl ++and ++.IR \%wscrl "," ++redefining ++.I \%scroll ++as a macro wrapping the latter. + .SH SEE ALSO + \fB\%curses\fP(3X), + \fB\%curs_outopts\fP(3X) +Index: man/curs_sp_funcs.3x +Prereq: 1.54 +--- ncurses-6.5-20250125+/man/curs_sp_funcs.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_sp_funcs.3x 2025-02-01 22:47:44.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_sp_funcs.3x,v 1.54 2025/01/19 00:51:10 tom Exp $ +-.TH curs_sp_funcs 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_sp_funcs.3x,v 1.57 2025/02/01 22:47:44 tom Exp $ ++.TH curs_sp_funcs 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -46,169 +46,169 @@ + .nf + \fB#include <curses.h> + .PP +-\fBint alloc_pair_sp(SCREEN* \fIsp\fP, int \fIfg\fP, int \fIbg\fP); +-\fBint assume_default_colors_sp(SCREEN* \fIsp\fP, int \fIfg\fP, int \fIbg\fP); +-\fBint baudrate_sp(SCREEN* \fIsp\fP); +-\fBint beep_sp(SCREEN* \fIsp\fP); +-\fBbool can_change_color_sp(SCREEN* \fIsp\fP); +-\fBint cbreak_sp(SCREEN* \fIsp\fP); +-\fBint color_content_sp(SCREEN* \fIsp\fP, short \fIcolor\fP, short* \fIr\fP, short* \fIg\fP, short* \fIb\fP); +-\fBint curs_set_sp(SCREEN* \fIsp\fP, int \fIvisibility\fP); +-\fBint def_prog_mode_sp(SCREEN* \fIsp\fP); +-\fBint def_shell_mode_sp(SCREEN* \fIsp\fP); +-.PP +-\fBint define_key_sp(SCREEN* \fIsp\fP, const char * \fIdefinition\fP, int \fIkeycode\fP); +-\fBint delay_output_sp(SCREEN* \fIsp\fP, int \fIms\fP); +-\fBint doupdate_sp(SCREEN* \fIsp\fP); +-\fBint echo_sp(SCREEN* \fIsp\fP); +-\fBint endwin_sp(SCREEN* \fIsp\fP); +-\fBchar erasechar_sp(SCREEN* \fIsp\fP); +-\fBint erasewchar_sp(SCREEN* \fIsp\fP, wchar_t *\fIwc\fP); ++\fBint alloc_pair_sp(SCREEN * \fIsp\fP, int \fIfg\fP, int \fIbg\fP); ++\fBint assume_default_colors_sp(SCREEN * \fIsp\fP, int \fIfg\fP, int \fIbg\fP); ++\fBint baudrate_sp(SCREEN * \fIsp\fP); ++\fBint beep_sp(SCREEN * \fIsp\fP); ++\fBbool can_change_color_sp(SCREEN * \fIsp\fP); ++\fBint cbreak_sp(SCREEN * \fIsp\fP); ++\fBint color_content_sp(SCREEN * \fIsp\fP, short \fIcolor\fP, short * \fIr\fP, short * \fIg\fP, short * \fIb\fP); ++\fBint curs_set_sp(SCREEN * \fIsp\fP, int \fIvisibility\fP); ++\fBint def_prog_mode_sp(SCREEN * \fIsp\fP); ++\fBint def_shell_mode_sp(SCREEN * \fIsp\fP); ++.PP ++\fBint define_key_sp(SCREEN * \fIsp\fP, const char * \fIdefinition\fP, int \fIkeycode\fP); ++\fBint delay_output_sp(SCREEN * \fIsp\fP, int \fIms\fP); ++\fBint doupdate_sp(SCREEN * \fIsp\fP); ++\fBint echo_sp(SCREEN * \fIsp\fP); ++\fBint endwin_sp(SCREEN * \fIsp\fP); ++\fBchar erasechar_sp(SCREEN * \fIsp\fP); ++\fBint erasewchar_sp(SCREEN * \fIsp\fP, wchar_t *\fIwc\fP); + \fBint extended_color_content_sp(SCREEN * \fIsp\fP, int \fIcolor\fP, int * \fIr\fP, int * \fIg\fP, int * \fIb\fP); +-\fBint extended_pair_content_sp(SCREEN* \fIsp\fP, int \fIpair\fP, int * \fIfg\fP, int * \fIbg\fP); +-\fBint extended_slk_color_sp(SCREEN* \fIsp\fP, int \fIpair\fP); ++\fBint extended_pair_content_sp(SCREEN * \fIsp\fP, int \fIpair\fP, int * \fIfg\fP, int * \fIbg\fP); ++\fBint extended_slk_color_sp(SCREEN * \fIsp\fP, int \fIpair\fP); + .PP +-\fBvoid filter_sp(SCREEN* \fIsp\fP); +-\fBint find_pair_sp(SCREEN* \fIsp\fP, int \fIfg\fP, int \fIbg\fP); +-\fBint flash_sp(SCREEN* \fIsp\fP); +-\fBint flushinp_sp(SCREEN* \fIsp\fP); +-\fBint free_pair_sp(SCREEN* \fIsp\fP, int \fIpair\fP); +-\fBint get_escdelay_sp(SCREEN* \fIsp\fP); +-\fBint getmouse_sp(SCREEN* \fIsp\fP, MEVENT* \fIevent\fP); +-\fBWINDOW* getwin_sp(SCREEN* \fIsp\fP, FILE* \fIfilep\fP); +-\fBint halfdelay_sp(SCREEN* \fIsp\fP, int \fItenths\fP); +-\fBbool has_colors_sp(SCREEN* \fIsp\fP); +-.PP +-\fBbool has_ic_sp(SCREEN* \fIsp\fP); +-\fBbool has_il_sp(SCREEN* \fIsp\fP); +-\fBint has_key_sp(SCREEN* \fIsp\fP, int \fIc\fP); +-\fBbool has_mouse_sp(SCREEN* \fIsp\fP); +-\fBint init_color_sp(SCREEN* \fIsp\fP, short \fIcolor\fP, short \fIr\fP, short \fIg\fP, short \fIb\fP); +-\fBint init_extended_color_sp(SCREEN* \fIsp\fP, int \fIcolor\fP, int \fIr\fP, int \fIg\fP, int \fIb\fP); +-\fBint init_extended_pair_sp(SCREEN* \fIsp\fP, int \fIpair\fP, int \fIfg\fP, int \fIbg\fP); +-\fBint init_pair_sp(SCREEN* \fIsp\fP, short \fIpair\fP, short \fIfg\fP, short \fIbg\fP); +-\fBint intrflush_sp(SCREEN* \fIsp\fP, WINDOW* \fIwin\fP, bool \fIbf\fP); +-\fBint is_cbreak_sp(SCREEN* \fIsp\fP); +-.PP +-\fBint is_echo_sp(SCREEN* \fIsp\fP); +-\fBint is_nl_sp(SCREEN* \fIsp\fP); +-\fBint is_raw_sp(SCREEN* \fIsp\fP); +-\fBbool is_term_resized_sp(SCREEN* \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); +-\fBbool isendwin_sp(SCREEN* \fIsp\fP); +-\fBint key_defined_sp(SCREEN* \fIsp\fP, const char *\fIdefinition\fP); +-\fBchar* keybound_sp(SCREEN* \fIsp\fP, int \fIkeycode\fP, int \fIcount\fP); +-\fBNCURSES_CONST char* keyname_sp(SCREEN* \fIsp\fP, int \fIc\fP); +-\fBint keyok_sp(SCREEN* \fIsp\fP, int \fIkeycode\fP, bool \fIenable\fP); +-\fBchar killchar_sp(SCREEN* \fIsp\fP); +-.PP +-\fBint killwchar_sp(SCREEN* \fIsp\fP, wchar_t *\fIwc\fP); +-\fBchar* longname_sp(SCREEN* \fIsp\fP); +-\fBint mcprint_sp(SCREEN* \fIsp\fP, char *\fIdata\fP, int \fIlen\fP); +-\fBint mouseinterval_sp(SCREEN* \fIsp\fP, int \fIerval\fP); +-\fBmmask_t mousemask_sp(SCREEN* \fIsp\fP, mmask_t \fInewmask\fP, mmask_t *\fIoldmask\fP); +-\fBint mvcur_sp(SCREEN* \fIsp\fP, int \fIoldrow\fP, int \fIoldcol\fP, int \fInewrow\fP, int \fInewcol\fP); +-\fBint napms_sp(SCREEN* \fIsp\fP, int \fIms\fP); +-\fBWINDOW* newpad_sp(SCREEN* \fIsp\fP, int \fInrows\fP, int \fIncols\fP); +-\fBSCREEN* new_prescr(void); +-\fBSCREEN* newterm_sp(SCREEN* \fIsp\fP, const char *\fItype\fP, FILE *\fIoutf\fP, FILE *\fIinfd\fP); +-.PP +-\fBWINDOW* newwin_sp(SCREEN* \fIsp\fP, int \fInlines\fP, int \fIncols\fP, int \fIbegin_y\fP, int \fIbegin_x\fP); +-\fBint nl_sp(SCREEN* \fIsp\fP); +-\fBint nocbreak_sp(SCREEN* \fIsp\fP); +-\fBint noecho_sp(SCREEN* \fIsp\fP); +-\fBvoid nofilter_sp(SCREEN* \fIsp\fP); +-\fBint nonl_sp(SCREEN* \fIsp\fP); +-\fBvoid noqiflush_sp(SCREEN* \fIsp\fP); +-\fBint noraw_sp(SCREEN* \fIsp\fP); +-\fBint pair_content_sp(SCREEN* \fIsp\fP, short \fIpair\fP, short* \fIfg\fP, short* \fIbg\fP); +-\fBvoid qiflush_sp(SCREEN* \fIsp\fP); +-.PP +-\fBint raw_sp(SCREEN* \fIsp\fP); +-\fBvoid reset_color_pairs_sp(SCREEN* \fIsp\fP); +-\fBint reset_prog_mode_sp(SCREEN* \fIsp\fP); +-\fBint reset_shell_mode_sp(SCREEN* \fIsp\fP); +-\fBint resetty_sp(SCREEN* \fIsp\fP); +-\fBint resize_term_sp(SCREEN* \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); +-\fBint resizeterm_sp(SCREEN* \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); +-\fBint ripoffline_sp(SCREEN* \fIsp\fP, int \fIline\fP, int (*\fIinit\fP)(WINDOW* \fIwin\fP, int \fIfmt\fP)); +-\fBint savetty_sp(SCREEN* \fIsp\fP); +-\fBint scr_init_sp(SCREEN* \fIsp\fP, const char *\fIfilename\fP); +-.PP +-\fBint scr_restore_sp(SCREEN* \fIsp\fP, const char *\fIfilename\fP); +-\fBint scr_set_sp(SCREEN* \fIsp\fP, const char *\fIfilename\fP); +-\fBint set_escdelay_sp(SCREEN* \fIsp\fP, int \fIms\fP); +-\fBint set_tabsize_sp(SCREEN* \fIsp\fP, int \fIcols\fP); +-\fBint slk_attrset_sp(SCREEN* \fIsp\fP, const chtype \fIa\fP); +-\fBint slk_attr_set_sp(SCREEN* \fIsp\fP, const attr_t \fIattrs\fP, short \fIpair\fP, void*\fIopts\fP); +-\fBint slk_attroff_sp(SCREEN* \fIsp\fP, const chtype \fIa\fP); +-\fBint slk_attron_sp(SCREEN* \fIsp\fP, const chtype \fIa\fP); +-\fBattr_t slk_attr_sp(SCREEN* \fIsp\fP); +-\fBint slk_clear_sp(SCREEN* \fIsp\fP); +-.PP +-\fBint slk_color_sp(SCREEN* \fIsp\fP, short \fIpair\fP); +-\fBint slk_init_sp(SCREEN* \fIsp\fP, int \fIfmt\fP); +-\fBchar* slk_label_sp(SCREEN* \fIsp\fP, int \fIlabnum\fP); +-\fBint slk_noutrefresh_sp(SCREEN* \fIsp\fP); +-\fBint slk_refresh_sp(SCREEN* \fIsp\fP); +-\fBint slk_restore_sp(SCREEN* \fIsp\fP); +-\fBint slk_set_sp(SCREEN* \fIsp\fP, int \fIlabnum\fP, const char * \fIlabel\fP, int \fIfmt\fP); +-\fBint slk_touch_sp(SCREEN* \fIsp\fP); +-\fBint start_color_sp(SCREEN* \fIsp\fP); +-\fBattr_t term_attrs_sp(SCREEN* \fIsp\fP); +-.PP +-\fBchtype termattrs_sp(SCREEN* \fIsp\fP); +-\fBchar* termname_sp(SCREEN* \fIsp\fP); +-\fBint typeahead_sp(SCREEN* \fIsp\fP, int \fIfd\fP); +-\fBint unget_wch_sp(SCREEN* \fIsp\fP, const wchar_t \fIwc\fP); +-\fBint ungetch_sp(SCREEN* \fIsp\fP, int \fIc\fP); +-\fBint ungetmouse_sp(SCREEN* \fIsp\fP, MEVENT* \fIevent\fP); +-\fBint use_default_colors_sp(SCREEN* \fIsp\fP); +-\fBvoid use_env_sp(SCREEN* \fIsp\fP, bool \fIbf\fP); +-\fBint use_legacy_coding_sp(SCREEN* \fIsp\fP, int \fIlevel\fP); ++\fBvoid filter_sp(SCREEN * \fIsp\fP); ++\fBint find_pair_sp(SCREEN * \fIsp\fP, int \fIfg\fP, int \fIbg\fP); ++\fBint flash_sp(SCREEN * \fIsp\fP); ++\fBint flushinp_sp(SCREEN * \fIsp\fP); ++\fBint free_pair_sp(SCREEN * \fIsp\fP, int \fIpair\fP); ++\fBint get_escdelay_sp(SCREEN * \fIsp\fP); ++\fBint getmouse_sp(SCREEN * \fIsp\fP, MEVENT * \fIevent\fP); ++\fBWINDOW * getwin_sp(SCREEN * \fIsp\fP, FILE * \fIfilep\fP); ++\fBint halfdelay_sp(SCREEN * \fIsp\fP, int \fItenths\fP); ++\fBbool has_colors_sp(SCREEN * \fIsp\fP); ++.PP ++\fBbool has_ic_sp(SCREEN * \fIsp\fP); ++\fBbool has_il_sp(SCREEN * \fIsp\fP); ++\fBint has_key_sp(SCREEN * \fIsp\fP, int \fIc\fP); ++\fBbool has_mouse_sp(SCREEN * \fIsp\fP); ++\fBint init_color_sp(SCREEN * \fIsp\fP, short \fIcolor\fP, short \fIr\fP, short \fIg\fP, short \fIb\fP); ++\fBint init_extended_color_sp(SCREEN * \fIsp\fP, int \fIcolor\fP, int \fIr\fP, int \fIg\fP, int \fIb\fP); ++\fBint init_extended_pair_sp(SCREEN * \fIsp\fP, int \fIpair\fP, int \fIfg\fP, int \fIbg\fP); ++\fBint init_pair_sp(SCREEN * \fIsp\fP, short \fIpair\fP, short \fIfg\fP, short \fIbg\fP); ++\fBint intrflush_sp(SCREEN * \fIsp\fP, WINDOW * \fIwin\fP, bool \fIbf\fP); ++\fBint is_cbreak_sp(SCREEN * \fIsp\fP); ++.PP ++\fBint is_echo_sp(SCREEN * \fIsp\fP); ++\fBint is_nl_sp(SCREEN * \fIsp\fP); ++\fBint is_raw_sp(SCREEN * \fIsp\fP); ++\fBbool is_term_resized_sp(SCREEN * \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); ++\fBbool isendwin_sp(SCREEN * \fIsp\fP); ++\fBint key_defined_sp(SCREEN * \fIsp\fP, const char *\fIdefinition\fP); ++\fBchar * keybound_sp(SCREEN * \fIsp\fP, int \fIkeycode\fP, int \fIcount\fP); ++\fBNCURSES_CONST char * keyname_sp(SCREEN * \fIsp\fP, int \fIc\fP); ++\fBint keyok_sp(SCREEN * \fIsp\fP, int \fIkeycode\fP, bool \fIenable\fP); ++\fBchar killchar_sp(SCREEN * \fIsp\fP); ++.PP ++\fBint killwchar_sp(SCREEN * \fIsp\fP, wchar_t *\fIwc\fP); ++\fBchar * longname_sp(SCREEN * \fIsp\fP); ++\fBint mcprint_sp(SCREEN * \fIsp\fP, char *\fIdata\fP, int \fIlen\fP); ++\fBint mouseinterval_sp(SCREEN * \fIsp\fP, int \fIerval\fP); ++\fBmmask_t mousemask_sp(SCREEN * \fIsp\fP, mmask_t \fInewmask\fP, mmask_t *\fIoldmask\fP); ++\fBint mvcur_sp(SCREEN * \fIsp\fP, int \fIoldrow\fP, int \fIoldcol\fP, int \fInewrow\fP, int \fInewcol\fP); ++\fBint napms_sp(SCREEN * \fIsp\fP, int \fIms\fP); ++\fBWINDOW * newpad_sp(SCREEN * \fIsp\fP, int \fInrows\fP, int \fIncols\fP); ++\fBSCREEN * new_prescr(void); ++\fBSCREEN * newterm_sp(SCREEN * \fIsp\fP, const char *\fItype\fP, FILE *\fIoutf\fP, FILE *\fIinf\fP); ++.PP ++\fBWINDOW * newwin_sp(SCREEN * \fIsp\fP, int \fInlines\fP, int \fIncols\fP, int \fIbegin_y\fP, int \fIbegin_x\fP); ++\fBint nl_sp(SCREEN * \fIsp\fP); ++\fBint nocbreak_sp(SCREEN * \fIsp\fP); ++\fBint noecho_sp(SCREEN * \fIsp\fP); ++\fBvoid nofilter_sp(SCREEN * \fIsp\fP); ++\fBint nonl_sp(SCREEN * \fIsp\fP); ++\fBvoid noqiflush_sp(SCREEN * \fIsp\fP); ++\fBint noraw_sp(SCREEN * \fIsp\fP); ++\fBint pair_content_sp(SCREEN * \fIsp\fP, short \fIpair\fP, short * \fIfg\fP, short * \fIbg\fP); ++\fBvoid qiflush_sp(SCREEN * \fIsp\fP); ++.PP ++\fBint raw_sp(SCREEN * \fIsp\fP); ++\fBvoid reset_color_pairs_sp(SCREEN * \fIsp\fP); ++\fBint reset_prog_mode_sp(SCREEN * \fIsp\fP); ++\fBint reset_shell_mode_sp(SCREEN * \fIsp\fP); ++\fBint resetty_sp(SCREEN * \fIsp\fP); ++\fBint resize_term_sp(SCREEN * \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); ++\fBint resizeterm_sp(SCREEN * \fIsp\fP, int \fIlines\fP, int \fIcolumns\fP); ++\fBint ripoffline_sp(SCREEN * \fIsp\fP, int \fIline\fP, int (*\fIinit\fP)(WINDOW * \fIwin\fP, int \fIfmt\fP)); ++\fBint savetty_sp(SCREEN * \fIsp\fP); ++\fBint scr_init_sp(SCREEN * \fIsp\fP, const char *\fIfilename\fP); ++.PP ++\fBint scr_restore_sp(SCREEN * \fIsp\fP, const char *\fIfilename\fP); ++\fBint scr_set_sp(SCREEN * \fIsp\fP, const char *\fIfilename\fP); ++\fBint set_escdelay_sp(SCREEN * \fIsp\fP, int \fIms\fP); ++\fBint set_tabsize_sp(SCREEN * \fIsp\fP, int \fIcols\fP); ++\fBint slk_attrset_sp(SCREEN * \fIsp\fP, const chtype \fIa\fP); ++\fBint slk_attr_set_sp(SCREEN * \fIsp\fP, const attr_t \fIattrs\fP, short \fIpair\fP, void *\fIopts\fP); ++\fBint slk_attroff_sp(SCREEN * \fIsp\fP, const chtype \fIa\fP); ++\fBint slk_attron_sp(SCREEN * \fIsp\fP, const chtype \fIa\fP); ++\fBattr_t slk_attr_sp(SCREEN * \fIsp\fP); ++\fBint slk_clear_sp(SCREEN * \fIsp\fP); ++.PP ++\fBint slk_color_sp(SCREEN * \fIsp\fP, short \fIpair\fP); ++\fBint slk_init_sp(SCREEN * \fIsp\fP, int \fIfmt\fP); ++\fBchar * slk_label_sp(SCREEN * \fIsp\fP, int \fIlabnum\fP); ++\fBint slk_noutrefresh_sp(SCREEN * \fIsp\fP); ++\fBint slk_refresh_sp(SCREEN * \fIsp\fP); ++\fBint slk_restore_sp(SCREEN * \fIsp\fP); ++\fBint slk_set_sp(SCREEN * \fIsp\fP, int \fIlabnum\fP, const char * \fIlabel\fP, int \fIfmt\fP); ++\fBint slk_touch_sp(SCREEN * \fIsp\fP); ++\fBint start_color_sp(SCREEN * \fIsp\fP); ++\fBattr_t term_attrs_sp(SCREEN * \fIsp\fP); ++.PP ++\fBchtype termattrs_sp(SCREEN * \fIsp\fP); ++\fBchar * termname_sp(SCREEN * \fIsp\fP); ++\fBint typeahead_sp(SCREEN * \fIsp\fP, int \fIfd\fP); ++\fBint unget_wch_sp(SCREEN * \fIsp\fP, const wchar_t \fIwc\fP); ++\fBint ungetch_sp(SCREEN * \fIsp\fP, int \fIc\fP); ++\fBint ungetmouse_sp(SCREEN * \fIsp\fP, MEVENT * \fIevent\fP); ++\fBint use_default_colors_sp(SCREEN * \fIsp\fP); ++\fBvoid use_env_sp(SCREEN * \fIsp\fP, bool \fIbf\fP); ++\fBint use_legacy_coding_sp(SCREEN * \fIsp\fP, int \fIlevel\fP); + \fBvoid use_tioctl_sp(SCREEN *\fIsp\fP, bool \fIbf\fP); + .PP +-\fBint vid_attr_sp(SCREEN* \fIsp\fP, attr_t \fIattrs\fP, short \fIpair\fP, void * \fIopts\fP); +-\fBint vid_puts_sp(SCREEN* \fIsp\fP, attr_t \fIattrs\fP, short \fIpair\fP, void * \fIopts\fP, NCURSES_SP_OUTC \fIputc\fP); +-\fBint vidattr_sp(SCREEN* \fIsp\fP, chtype \fIattrs\fP); +-\fBint vidputs_sp(SCREEN* \fIsp\fP, chtype \fIattrs\fP, NCURSES_SP_OUTC \fIputc\fP); +-\fBwchar_t* wunctrl_sp(SCREEN* \fIsp\fP, cchar_t *\fIwch\fP); ++\fBint vid_attr_sp(SCREEN * \fIsp\fP, attr_t \fIattrs\fP, short \fIpair\fP, void * \fIopts\fP); ++\fBint vid_puts_sp(SCREEN * \fIsp\fP, attr_t \fIattrs\fP, short \fIpair\fP, void * \fIopts\fP, NCURSES_SP_OUTC \fIputc\fP); ++\fBint vidattr_sp(SCREEN * \fIsp\fP, chtype \fIattrs\fP); ++\fBint vidputs_sp(SCREEN * \fIsp\fP, chtype \fIattrs\fP, NCURSES_SP_OUTC \fIputc\fP); ++\fBwchar_t * wunctrl_sp(SCREEN * \fIsp\fP, cchar_t *\fIwch\fP); + .PP + \fB#include <form.h> + .PP +-\fBFORM* new_form_sp(SCREEN* \fIsp\fP, FIELD **\fIfields\fP); ++\fBFORM * new_form_sp(SCREEN * \fIsp\fP, FIELD **\fIfields\fP); + .PP + \fB#include <menu.h> + .PP +-\fBMENU* new_menu_sp(SCREEN* \fIsp\fP, ITEM **\fIitems\fP); ++\fBMENU * new_menu_sp(SCREEN * \fIsp\fP, ITEM **\fIitems\fP); + .PP + \fB#include <panel.h> + .PP +-\fBPANEL* ceiling_panel(SCREEN* \fIsp\fP); +-\fBPANEL* ground_panel(SCREEN* \fIsp\fP); +-\fBvoid update_panels_sp(SCREEN* \fIsp\fP); ++\fBPANEL * ceiling_panel(SCREEN * \fIsp\fP); ++\fBPANEL * ground_panel(SCREEN * \fIsp\fP); ++\fBvoid update_panels_sp(SCREEN * \fIsp\fP); + .PP + \fB#include <term.h> + .PP +-\fBint del_curterm_sp(SCREEN* \fIsp\fP, TERMINAL *\fIoterm\fP); +-\fBint putp_sp(SCREEN* \fIsp\fP, const char *\fIstr\fP); +-\fBint restartterm_sp(SCREEN* \fIsp\fP, NCURSES_CONST char*\fIterm\fP, int \fIfiledes\fP, int *\fIerrret\fP); +-\fBTERMINAL* set_curterm_sp(SCREEN* \fIsp\fP, TERMINAL*\fInterm\fP); +-\fBint tgetent_sp(SCREEN* \fIsp\fP, char *\fIbp\fP, const char *\fIname\fP); +-\fBint tgetflag_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP); +-\fBint tgetnum_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP); +-\fBchar* tgetstr_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP, char **\fIarea\fP); +-\fBchar* tgoto_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP, int \fIcol\fP, int \fIrow\fP); +-\fBint tigetflag_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP); ++\fBint del_curterm_sp(SCREEN * \fIsp\fP, TERMINAL *\fIoterm\fP); ++\fBint putp_sp(SCREEN * \fIsp\fP, const char *\fIstr\fP); ++\fBint restartterm_sp(SCREEN * \fIsp\fP, NCURSES_CONST char *\fIterm\fP, int \fIfiledes\fP, int *\fIerrret\fP); ++\fBTERMINAL * set_curterm_sp(SCREEN * \fIsp\fP, TERMINAL *\fInterm\fP); ++\fBint tgetent_sp(SCREEN * \fIsp\fP, char *\fIbp\fP, const char *\fIname\fP); ++\fBint tgetflag_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP); ++\fBint tgetnum_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP); ++\fBchar * tgetstr_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP, char **\fIarea\fP); ++\fBchar * tgoto_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP, int \fIcol\fP, int \fIrow\fP); ++\fBint tigetflag_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP); + .PP +-\fBint tigetnum_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP); +-\fBchar* tigetstr_sp(SCREEN* \fIsp\fP, const char *\fIcapname\fP); ++\fBint tigetnum_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP); ++\fBchar * tigetstr_sp(SCREEN * \fIsp\fP, const char *\fIcapname\fP); + \fI/* tparm_sp may use 9 long parameters rather than being variadic */ +-\fBchar* tparm_sp(SCREEN* \fIsp\fP, const char *\fIstr\fP, ...); +-\fBint tputs_sp(SCREEN* \fIsp\fP, const char *\fIstr\fP, int \fIaffcnt\fP, NCURSES_SP_OUTC \fIputc\fP); ++\fBchar * tparm_sp(SCREEN * \fIsp\fP, const char *\fIstr\fP, ...); ++\fBint tputs_sp(SCREEN * \fIsp\fP, const char *\fIstr\fP, int \fIaffcnt\fP, NCURSES_SP_OUTC \fIputc\fP); + .PP + \fB#include <unctrl.h> + .PP +-\fBNCURSES_CONST char* unctrl_sp(SCREEN* \fIsp\fP, chtype \fIch\fP); ++\fBNCURSES_CONST char * unctrl_sp(SCREEN * \fIsp\fP, chtype \fIch\fP); + .fi + .SH DESCRIPTION + This implementation can be configured to provide a set of functions which +Index: man/curs_termattrs.3x +Prereq: 1.57 +--- ncurses-6.5-20250125+/man/curs_termattrs.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_termattrs.3x 2025-02-01 22:49:13.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_termattrs.3x,v 1.57 2025/01/19 00:51:10 tom Exp $ +-.TH curs_termattrs 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_termattrs.3x,v 1.59 2025/02/01 22:49:13 tom Exp $ ++.TH curs_termattrs 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -188,10 +188,12 @@ + .I \%termname + to 14 characters. + .SH HISTORY +-4BSD (1980) introduced ++4BSD (1980) ++introduced + .IR \%longname "." + .PP +-SVr2 (1984) added ++SVr2 (1984) ++added + .IR \%baudrate "," + .IR \%erasechar "," + .IR \%killchar "," +@@ -199,9 +201,11 @@ + and + .IR \%has_il "." + .PP +-SVr3 (1987) furnished ++SVr3 (1987) ++supplied + .IR \%termname "." +-SVr3.1 later that year supplied ++Later that year, ++SVr3.1 brought + .IR \%termattrs "." + .PP + X/Open Curses Issue\ 4 (1995) +Index: man/curs_termcap.3x +Prereq: 1.103 +--- ncurses-6.5-20250125+/man/curs_termcap.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_termcap.3x 2025-02-01 22:49:13.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_termcap.3x,v 1.103 2025/01/19 00:51:10 tom Exp $ +-.TH curs_termcap 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_termcap.3x,v 1.105 2025/02/01 22:49:13 tom Exp $ ++.TH curs_termcap 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -509,8 +509,7 @@ + .\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=3BSD/usr/man/man3/\ + .\" termlib.3 + .PP +-4BSD +-(November 1980) ++4BSD (November 1980) + renamed + .I termlib + to +Index: man/curs_util.3x +Prereq: 1.134 +--- ncurses-6.5-20250125+/man/curs_util.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_util.3x 2025-02-01 22:49:13.000000000 +0000 +@@ -28,8 +28,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_util.3x,v 1.134 2025/01/19 00:51:10 tom Exp $ +-.TH curs_util 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_util.3x,v 1.136 2025/02/01 22:49:13 tom Exp $ ++.TH curs_util 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -534,19 +534,20 @@ + is not provided by other implementations of curses. + .SH HISTORY + 4BSD (1980) +-defined +-.I \%unctrl +-(as a macro, ++introduced ++.IR \%unctrl "," ++defining it as a macro + in +-.IR \%unctrl.h ")." ++.IR \%unctrl.h "." + .PP +-SVr2 (1984) introduced ++SVr2 (1984) ++added + .IR \%delay_output "," + .IR \%flushinp "," + and + .IR \%keyname "." + .PP +-SVr3 (1987) added ++SVr3 (1987) supplied + .IR \%filter "." + Later that year, + SVr3.1 brought +Index: man/curs_window.3x +Prereq: 1.64 +--- ncurses-6.5-20250125+/man/curs_window.3x 2025-01-19 00:51:10.000000000 +0000 ++++ ncurses-6.5-20250201/man/curs_window.3x 2025-02-02 00:04:58.000000000 +0000 +@@ -27,8 +27,8 @@ + .\" authorization. * + .\"*************************************************************************** + .\" +-.\" $Id: curs_window.3x,v 1.64 2025/01/19 00:51:10 tom Exp $ +-.TH curs_window 3X 2025-01-18 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" ++.\" $Id: curs_window.3x,v 1.66 2025/02/02 00:04:58 tom Exp $ ++.TH curs_window 3X 2025-02-01 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls" + .ie \n(.g \{\ + .ds `` \(lq + .ds '' \(rq +@@ -61,17 +61,17 @@ + .nf + \fB#include <curses.h> + .PP +-\fBWINDOW * newwin( +- int \fInlines\fP, int \fIncols\fP, +- int \fIbegin_y\fP, int \fIbegin_x\fP); ++\fBWINDOW * newwin(\fR ++ \fBint \fInlines\fP, int \fIncols\fP, ++ \fBint \fIbegin_y\fP, int \fIbegin_x\fP); + \fBint delwin(WINDOW * \fIwin\fP); + \fBint mvwin(WINDOW * \fIwin\fP, int \fIy\fP, int \fIx\fP); + \fBWINDOW * subwin(WINDOW * \fIorig\fP, +- int \fInlines\fP, int \fIncols\fP, +- int \fIbegin_y\fP, int \fIbegin_x\fP); ++ \fBint \fInlines\fP, int \fIncols\fP, ++ \fBint \fIbegin_y\fP, int \fIbegin_x\fP); + \fBWINDOW * derwin(WINDOW * \fIorig\fP, +- int \fInlines\fP, int \fIncols\fP, +- int \fIbegin_y\fP, int \fIbegin_x\fP); ++ \fBint \fInlines\fP, int \fIncols\fP, ++ \fBint \fIbegin_y\fP, int \fIbegin_x\fP); + \fBint mvderwin(WINDOW * \fIwin\fP, int \fIpar_y\fP, int \fIpar_x\fP); + \fBWINDOW * dupwin(WINDOW * \fIwin\fP); + \fBvoid wsyncup(WINDOW * \fIwin\fP); +Index: man/man_db.renames.in +Prereq: 1.83 +--- ncurses-6.5-20250125+/man/man_db.renames.in 2025-01-19 01:00:28.000000000 +0000 ++++ ncurses-6.5-20250201/man/man_db.renames.in 2025-02-01 22:46:00.000000000 +0000 +@@ -26,7 +26,7 @@ + # use or other dealings in this Software without prior written # + # authorization. # + ############################################################################## +-# $Id: man_db.renames.in,v 1.83 2025/01/19 01:00:28 tom Exp $ ++# $Id: man_db.renames.in,v 1.84 2025/02/01 22:46:00 Branden.Robinson Exp $ + # Manual-page renamings for the man_db program + # + # Files: +@@ -221,6 +221,7 @@ + keyname.3x keyname.3ncurses + keypad.3x keypad.3ncurses + killchar.3x killchar.3ncurses ++killwchar.3x killwchar.3ncurses + leaveok.3x leaveok.3ncurses + longname.3x longname.3ncurses + meta.3x meta.3ncurses +Index: man/manhtml.aliases +Prereq: 1.46 +--- ncurses-6.5-20250125+/man/manhtml.aliases 2025-01-19 01:13:04.000000000 +0000 ++++ ncurses-6.5-20250201/man/manhtml.aliases 2025-02-02 00:58:13.000000000 +0000 +@@ -1,4 +1,4 @@ +-# $Id: manhtml.aliases,v 1.46 2025/01/19 01:13:04 tom Exp $ ++# $Id: manhtml.aliases,v 1.47 2025/02/02 00:58:13 tom Exp $ + #*************************************************************************** + # Copyright 2019-2024,2025 Thomas E. Dickey * + # Copyright 2013,2017 Free Software Foundation, Inc. * +@@ -73,6 +73,7 @@ + is_cbreak(3X) curs_inopts(3X) + is_scrollok(3X) curs_opaque(3X) + killchar(3X) curs_termattrs(3X) ++killwchar(3X) curs_termattrs(3X) + keyname(3X) curs_util(3X) + keypad(3X) curs_inopts(3X) + longname(3X) curs_termattrs(3X) +Index: ncurses/base/MKlib_gen.sh +Prereq: 1.77 +--- ncurses-6.5-20250125+/ncurses/base/MKlib_gen.sh 2024-12-29 10:49:59.000000000 +0000 ++++ ncurses-6.5-20250201/ncurses/base/MKlib_gen.sh 2025-02-01 22:09:10.000000000 +0000 +@@ -2,10 +2,10 @@ + # + # MKlib_gen.sh -- generate sources from curses.h macro definitions + # +-# ($Id: MKlib_gen.sh,v 1.77 2024/12/29 10:49:59 tom Exp $) ++# ($Id: MKlib_gen.sh,v 1.78 2025/02/01 22:09:10 tom Exp $) + # + ############################################################################## +-# Copyright 2018-2022,2024 Thomas E. Dickey # ++# Copyright 2018-2024,2025 Thomas E. Dickey # + # Copyright 1998-2016,2017 Free Software Foundation, Inc. # + # # + # Permission is hereby granted, free of charge, to any person obtaining a # +@@ -203,6 +203,8 @@ + s/^\(.*\) \(.*\) (\(.*\))\$/\1 call_\2 (\3)/ + } + s/\([^_]\)NCURSES_SP_NAME___\([a-zA-Z][a-zA-Z_]*\)/\1NCURSES_SP_NAME(\2)/g ++/call_NCURSES_SP_NAME/s,(0,(NULL, ++/call\(_NCURSES_SP_NAME\)\?_*\(delscreen\|ripoffline\|set_term\|vidputs\|vid_puts\)/s,0),NULL), + EOF + fi + +@@ -443,6 +445,7 @@ + print " */" + print "#define NCURSES_ATTR_T int" + print "#include <ncurses_cfg.h>" ++ print "#include <stdbool.h>" + print "" + print "#undef NCURSES_NOMACROS /* _this_ file uses macros */" + print "#define NCURSES_NOMACROS 1" +@@ -480,15 +483,30 @@ + sub(/^[0-9a-zA-Z_]+ /,"",value); + sub(/^[*][ \t]*/,"",value); + gsub("struct[ \t]*[0-9a-zA-Z_]+[ \t]*[*]","",value); ++ arg_l = index(value, "("); ++ arg_r = index(value, ")"); ++ if ( arg_l > 0 && arg_r > arg_l + 1 ) { ++ args = substr(value, arg_l + 1, arg_r - arg_l - 1); ++ gsub(/[0-9a-zA-Z_]+[ \t]*[*][ \t]*[0-9a-zA-Z_]+/,"NULL",args); ++ gsub(/ (bool|int|short|attr_t|chtype|wchar_t|NCURSES_BOOL|NCURSES_OUTC|NCURSES_OUTC_sp|va_list) /," ",args); ++ value = substr(value,0,arg_l) args substr(value,arg_r); ++ } + gsub(/[0-9a-zA-Z_]+[ \t]*[*][ \t]*/,"",value); + gsub(/ (const) /," ",value); +- gsub(/ (int|short|attr_t|chtype|wchar_t|NCURSES_BOOL|NCURSES_OUTC|NCURSES_OUTC_sp|va_list) /," ",value); ++ gsub(/ (bool|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[0-9]|z) /, " 0 ", value); + gsub(/ int[ \t]*[(][^)]+[)][(][^)]+[)]/, "0", value); ++ if ( index(value, "call_NCURSES_SP_NAME") > 0 ) { ++ sub("0","NULL", value); ++ } + printf " case %d: %s; break;\n", casenum++, value; + } else { ++ if ( index(value, "call_NCURSES_SP_NAME") > 0 ) { ++ printf "/* FIXME %s */\n", value; ++ sub("0","NULL", value); ++ } + print value; + } + } +Index: ncurses/tty/lib_mvcur.c +Prereq: 1.164 +--- ncurses-6.5-20250125+/ncurses/tty/lib_mvcur.c 2025-01-12 10:51:43.000000000 +0000 ++++ ncurses-6.5-20250201/ncurses/tty/lib_mvcur.c 2025-02-01 21:53:19.000000000 +0000 +@@ -160,7 +160,7 @@ + #define CUR SP_TERMTYPE + #endif + +-MODULE_ID("$Id: lib_mvcur.c,v 1.164 2025/01/12 10:51:43 tom Exp $") ++MODULE_ID("$Id: lib_mvcur.c,v 1.165 2025/02/01 21:53:19 tom Exp $") + + #define WANT_CHAR(sp, y, x) NewScreen(sp)->_line[y].text[x] /* desired state */ + +@@ -1338,7 +1338,7 @@ + * is winning. + */ + else if (sscanf(buf, "t %d", &n) == 1) { +- float cumtime = 0.0, perchar; ++ double cumtime = 0.0, perchar; + int speeds[] = + {2400, 9600, 14400, 19200, 28800, 38400, 0}; + +@@ -1384,14 +1384,14 @@ + * transmission both. Transmission time is an estimate + * assuming 9 bits/char, 8 bits + 1 stop bit. + */ +- float totalest = cumtime + xmits * 9 * 1e6 / speeds[i]; ++ double totalest = cumtime + (double) xmits * 9 * 1e6 / speeds[i]; + + /* + * Per-character optimization overhead in character transmits + * at the current speed. Round this to the nearest integer + * to figure COMPUTE_OVERHEAD for the speed. + */ +- float overhead = speeds[i] * perchar / 1e6; ++ double overhead = speeds[i] * perchar / 1e6; + + (void) + printf("%6d bps: %3.2f char-xmits overhead; total estimated time %15.2f\n", +Index: package/debian-mingw/changelog +--- ncurses-6.5-20250125+/package/debian-mingw/changelog 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/debian-mingw/changelog 2025-01-31 21:35:49.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6td (6.5+20250125) unstable; urgency=low ++ncurses6td (6.5+20250201) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 24 Jan 2025 15:34:16 -0500 ++ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 31 Jan 2025 16:35:49 -0500 + + ncurses6 (5.9+20131005) unstable; urgency=low + +Index: package/debian-mingw64/changelog +--- ncurses-6.5-20250125+/package/debian-mingw64/changelog 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/debian-mingw64/changelog 2025-01-31 21:35:49.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6td (6.5+20250125) unstable; urgency=low ++ncurses6td (6.5+20250201) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 24 Jan 2025 15:34:16 -0500 ++ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 31 Jan 2025 16:35:49 -0500 + + ncurses6 (5.9+20131005) unstable; urgency=low + +Index: package/debian/changelog +--- ncurses-6.5-20250125+/package/debian/changelog 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/debian/changelog 2025-01-31 21:35:49.000000000 +0000 +@@ -1,8 +1,8 @@ +-ncurses6td (6.5+20250125) unstable; urgency=low ++ncurses6td (6.5+20250201) unstable; urgency=low + + * latest weekly patch + +- -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 24 Jan 2025 15:34:16 -0500 ++ -- Thomas E. Dickey <dickey@invisible-island.net> Fri, 31 Jan 2025 16:35:49 -0500 + + ncurses6 (5.9+20120608) unstable; urgency=low + +Index: package/mingw-ncurses.nsi +Prereq: 1.686 +--- ncurses-6.5-20250125+/package/mingw-ncurses.nsi 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/mingw-ncurses.nsi 2025-01-31 21:35:49.000000000 +0000 +@@ -1,4 +1,4 @@ +-; $Id: mingw-ncurses.nsi,v 1.686 2025/01/24 20:34:16 tom Exp $
++; $Id: mingw-ncurses.nsi,v 1.687 2025/01/31 21:35:49 tom Exp $
+
+ ; TODO add examples
+ ; TODO bump ABI to 6
+@@ -10,7 +10,7 @@ + !define VERSION_MAJOR "6"
+ !define VERSION_MINOR "5"
+ !define VERSION_YYYY "2025"
+-!define VERSION_MMDD "0125"
++!define VERSION_MMDD "0201"
+ !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
+
+ !define MY_ABI "5"
+Index: package/mingw-ncurses.spec +--- ncurses-6.5-20250125+/package/mingw-ncurses.spec 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/mingw-ncurses.spec 2025-01-31 21:35:49.000000000 +0000 +@@ -3,7 +3,7 @@ + Summary: shared libraries for terminal handling + Name: mingw32-ncurses6 + Version: 6.5 +-Release: 20250125 ++Release: 20250201 + License: X11 + Group: Development/Libraries + URL: https://invisible-island.net/ncurses/ +Index: package/ncurses.spec +--- ncurses-6.5-20250125+/package/ncurses.spec 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/ncurses.spec 2025-01-31 21:35:49.000000000 +0000 +@@ -1,7 +1,7 @@ + Summary: shared libraries for terminal handling + Name: ncurses6 + Version: 6.5 +-Release: 20250125 ++Release: 20250201 + License: X11 + Group: Development/Libraries + URL: https://invisible-island.net/ncurses/ +Index: package/ncursest.spec +--- ncurses-6.5-20250125+/package/ncursest.spec 2025-01-24 20:34:16.000000000 +0000 ++++ ncurses-6.5-20250201/package/ncursest.spec 2025-01-31 21:35:49.000000000 +0000 +@@ -1,7 +1,7 @@ + Summary: Curses library with POSIX thread support. + Name: ncursest6 + Version: 6.5 +-Release: 20250125 ++Release: 20250201 + License: X11 + Group: Development/Libraries + Source: ncurses-%{version}-%{release}.tgz |