.\" authorization. *
.\"***************************************************************************
.\"
-.\" $Id: curs_variables.3x,v 1.34 2023/11/25 14:32:36 tom Exp $
-.TH curs_variables 3X 2023-11-25 "ncurses 6.4" "Library calls"
+.\" $Id: curs_variables.3x,v 1.35 2023/12/16 21:05:52 tom Exp $
+.TH curs_variables 3X 2023-12-16 "ncurses 6.4" "Library calls"
.ie \n(.g \{\
.ds `` \(lq
.ds '' \(rq
\fBint COLOR_PAIRS;
\fBint COLORS;
\fBint COLS;
-\fBint ESCDELAY;
\fBint LINES;
-\fBint TABSIZE;
\fBWINDOW * curscr;
-\fBWINDOW * newscr;
\fBWINDOW * stdscr;
+\fI/* extensions */
+\fBint ESCDELAY;
+\fBint TABSIZE;
+\fBWINDOW * newscr;
.fi
.SH DESCRIPTION
This page summarizes data types,
and variables provided by the \fIcurses\fP library.
Locate further discussion in \fB\%curses\fP(3X).
.PP
-Depending on \fIncurses\fP's build-time configuration,
+Depending on \fI\%ncurses\fP's build-time configuration,
the variables may instead be
macros (see \fB\%curs_threads\fP(3X) and \fB\%curs_opaque\fP(3X))
that provide read-only access to the library's state.
In either case,
applications should treat them as read-only to avoid
confusing the library.
-.SS bool, TRUE, FALSE
+.SS \fIbool\fP, TRUE, FALSE
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.
\fIcurses\fP and \fIterminfo\fP routines frequently return these
constant integral values indicating failure and success,
respectively.
-.SS chtype
+.SS \fIchtype\fP
The \fI\%chtype\fP integral type combines a
(\*(``narrow\*('',
8-bit)
\fB\%attron\fP(3X),
and
\fB\%inch\fP(3X).
-.SS cchar_t, attr_t
+.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\%curs_refresh\fP(3X) and
\fB\%curs_outopts\fP(3X).
.SS newscr
-\fIncurses\fP collects pending updates to the terminal screen in a
+\fI\%ncurses\fP collects pending updates to the terminal screen in a
\fI\%WINDOW\fP structure named \fB\%newscr\fP.
.PP
This object is referred to as the \*(``virtual screen\*('' in the
Either \fB\%initscr\fP(3X) or \fB\%newterm\fP(3X) initializes
\fIcurses\fP.
.PP
-If \fIncurses\fP is configured to provide separate \fIcurses\fP and
+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.
.SH PORTABILITY
the virtual screen with \fB\%addch\fP(3X) and
the physical screen with \fB\%mvcur\fP(3X).
.bP
-\fIncurses\fP uses the value of \fB\%TABSIZE\fP only to update the
+\fI\%ncurses\fP uses the value of \fB\%TABSIZE\fP only to update the
virtual screen.
It uses the terminal description's \*(``\fBit\fP\*(''
(\fB\%init_tabs\fP) capability for computing hardware tabs
For instance,
NetBSD \fIcurses\fP allows \fB\%TABSIZE\fP to be set through an
environment variable.
-\fIncurses\fP does not.
+\fI\%ncurses\fP does not.
.IP
NetBSD \fIcurses\fP does not support hardware tabs;
it uses the \fB\%init_tabs\fP capability and the \fB\%TABSIZE\fP
The default value for AIX's \fB\%ESCDELAY\fP equals 0.1 seconds.
.bP
AIX also enforces a limit of 10,000 seconds for \fB\%ESCDELAY\fP;
-\fIncurses\fP does not enforce any upper limit.
+\fI\%ncurses\fP does not enforce any upper limit.
.PP
-\fIncurses\fP has long used \fB\%ESCDELAY\fP with units of milliseconds,
+\fI\%ncurses\fP has long used \fB\%ESCDELAY\fP with units of
+milliseconds,
making it impossible to be completely compatible with AIX.
Consequently,
most users have decided either to override the value,