.\"***************************************************************************
-.\" Copyright 2018-2021,2023 Thomas E. Dickey *
+.\" Copyright 2018-2023,2024 Thomas E. Dickey *
.\" Copyright 2010-2015,2017 Free Software Foundation, Inc. *
.\" *
.\" Permission is hereby granted, free of charge, to any person obtaining a *
.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_variables.3x,v 1.40 2023/12/23 23:10:13 tom Exp $
-.TH curs_variables 3X 2023-12-23 "ncurses 6.4" "Library calls"
+.\" $Id: curs_variables.3x,v 1.47 2024/04/13 22:37:35 tom Exp $
+.TH curs_variables 3X 2024-04-13 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
.ie \n(.g \{\
.ds `` \(lq
.ds '' \(rq
.SS "TRUE, FALSE"
The \fIcurses\fP library defines \fBTRUE\fP and \fBFALSE\fP
to represent the values of the Boolean data type.
-.SS ERR, OK
+.SS "ERR, OK"
\fIcurses\fP and \fIterminfo\fP routines frequently return these
constant integral values indicating failure and success,
respectively.
.SH "PREDEFINED TYPES"
-.SS \fIbool\fP
+.SS "\fIbool\fP"
X/Open Issue 4 \fIcurses\fP (1996) preceded the ISO C99 and ISO C++98
standards,
each of which also defined a Boolean data type.
\fB\%ncurses\fP' configure script attempts to discover the
data type used by the system's C and C++ compilers,
to reuse for the \fIcurses\fP \fIbool\fP.
-.SS \fIchtype\fP
+.SS "\fIchtype\fP"
The \fI\%chtype\fP integral type combines a
(\*(``narrow\*('',
8-bit)
\fB\%attron\fP(3X),
and
\fB\%inch\fP(3X).
-.SS \fIcchar_t\fP, \fIattr_t\fP
+.SS "\fIcchar_t\fP, \fIattr_t\fP"
\fI\%chtype\fP is too small for the standard C library's wide-character
type,
\fIwchar_t\fP.
\fB\%attr_on\fP(3X),
and
\fB\%in_wch\fP(3X).
-.SS \fISCREEN\fP
+.SS "\fISCREEN\fP"
.I curses
manages a terminal device with this structure type;
see \fB\%initscr\fP(3X).
that is,
the number of columns and lines.
.SS ESCDELAY
-For \fIcurses\fP to distinguish an escape character corresponding to a
-user's press of an \*(``Escape\*('' key on the input device from one
-included in a control sequence used by a cursor movement or function
-key,
-the library waits to see if another key event occurs after the escape
-character.
-\fB\%ESCDELAY\fP
+For
+.I curses
+to distinguish the ESC character resulting from a user's press of the
+\*(``Escape\*('' key on the input device from one beginning an
+.I "escape sequence"
+(as commonly produced by function keys),
+it waits after the escape character to see if further characters are
+available on the input stream within a short interval.
+.B \%ESCDELAY
stores this interval in milliseconds.
+.PP
+If \fB\%keypad\fP(3X) is disabled for the
+.I curses
+window receiving input,
+a program must disambiguate escape sequences itself.
.SS TABSIZE
The \fIcurses\fP library converts a tab character to this number of
spaces as it adds a tab to a window;
Either \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X) initializes
\fIcurses\fP.
.PP
-If \fI\%ncurses\fP is configured to provide separate \fIcurses\fP and
-\fIterminfo\fP libraries,
-most of these variables reside in the \fIcurses\fP library.
+If
+.I \%ncurses
+is configured to provide separate
+.I curses
+and
+.I \%tinfo
+libraries,
+most of these variables reside in the former.
.SH PORTABILITY
The X/Open Curses standard documents all of the foregoing types and
symbols except for \fB\%newscr\fP,