]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - man/term_variables.3x
ncurses 6.4 - patch 20230917
[ncurses.git] / man / term_variables.3x
index 49a22938cf3003ce396633306aafd323f6509160..fe81b660531fb9acb01ebe691884fbc86fb2743c 100644 (file)
@@ -1,5 +1,6 @@
 .\"***************************************************************************
-.\" Copyright (c) 2011-2013,2015 Free Software Foundation, Inc.              *
+.\" Copyright 2019-2022,2023 Thomas E. Dickey                                *
+.\" Copyright 2010-2015,2017 Free Software Foundation, Inc.                  *
 .\"                                                                          *
 .\" Permission is hereby granted, free of charge, to any person obtaining a  *
 .\" copy of this software and associated documentation files (the            *
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: term_variables.3x,v 1.7 2015/12/05 18:43:25 tom Exp $
-.TH term_variables 3X ""
+.\" $Id: term_variables.3x,v 1.27 2023/09/16 23:38:39 tom Exp $
+.TH term_variables 3X 2023-09-16 "ncurses 6.4" "Library calls"
 .ds n 5
-.na
-.hy 0
+.ie \n(.g .ds `` \(lq
+.el       .ds `` ``
+.ie \n(.g .ds '' \(rq
+.el       .ds '' ''
+.ie n .ds CW R
+.el   \{
+.ie \n(.g .ds CW CR
+.el       .ds CW CW
+.\}
 .SH NAME
-\fBSP\fP,
-\fBacs_map\fP,
-\fBboolcodes\fP,
-\fBboolfnames\fP,
-\fBboolnames\fP,
-\fBcur_term\fP,
-\fBnumcodes\fP,
-\fBnumfnames\fP,
-\fBnumnames\fP,
-\fBstrcodes\fP,
-\fBstrfnames\fP,
-\fBstrnames\fP,
-\fBttytype\fP
-\- \fBcurses\fR terminfo global variables
-.ad
-.hy
+\fB\%SP\fP,
+\fB\%acs_map\fP,
+\fB\%boolcodes\fP,
+\fB\%boolfnames\fP,
+\fB\%boolnames\fP,
+\fB\%cur_term\fP,
+\fB\%numcodes\fP,
+\fB\%numfnames\fP,
+\fB\%numnames\fP,
+\fB\%strcodes\fP,
+\fB\%strfnames\fP,
+\fB\%strnames\fP,
+\fB\%ttytype\fP \-
+\fIterminfo\fR global variables
 .SH SYNOPSIS
 .nf
-\fB#include <curses.h>\fR
+\fB#include <curses.h>\fP
 .br
-\fB#include <term.h>\fR
+\fB#include <term.h>\fP
 .PP
-\fBchtype acs_map[];\fR
+\fBchtype acs_map[];\fP
 .sp
-\fBSCREEN * SP;\fR
+\fBSCREEN * SP;\fP
 .sp
-\fBTERMINAL * cur_term;\fR
+\fBTERMINAL * cur_term;\fP
 .sp
-\fBchar ttytype[];\fR
+\fBchar ttytype[];\fP
 .sp
-\fBNCURSES_CONST char * const * boolcodes;\fR
+\fBNCURSES_CONST char * const boolcodes[];\fP
 .br
-\fBNCURSES_CONST char * const * boolfnames;\fR
+\fBNCURSES_CONST char * const boolfnames[];\fP
 .br
-\fBNCURSES_CONST char * const * boolnames;\fR
+\fBNCURSES_CONST char * const boolnames[];\fP
 .sp
-\fBNCURSES_CONST char * const * numcodes;\fR
+\fBNCURSES_CONST char * const numcodes[];\fP
 .br
-\fBNCURSES_CONST char * const * numfnames;\fR
+\fBNCURSES_CONST char * const numfnames[];\fP
 .br
-\fBNCURSES_CONST char * const * numnames;\fR
+\fBNCURSES_CONST char * const numnames[];\fP
 .sp
-\fBNCURSES_CONST char * const * strcodes;\fR
+\fBNCURSES_CONST char * const strcodes[];\fP
 .br
-\fBNCURSES_CONST char * const * strfnames;\fR
+\fBNCURSES_CONST char * const strfnames[];\fP
 .br
-\fBNCURSES_CONST char * const * strnames;\fR
+\fBNCURSES_CONST char * const strnames[];\fP
 .br
 .fi
 .SH DESCRIPTION
@@ -87,7 +93,7 @@ low-level terminfo interface.
 A more complete description is given in the \fBcurs_terminfo\fP(3X) manual page.
 .PP
 Depending on the configuration, these may be actual variables,
-or macros (see \fBcurs_threads\fR(3X))
+or macros (see \fBcurs_threads\fP(3X))
 which provide read-only access to \fIcurses\fP's state.
 In either case, applications should treat them as read-only to avoid
 confusing the library.
@@ -97,7 +103,7 @@ the \fBacs_map\fP array holds information used to translate cells
 with the \fBA_ALTCHARSET\fP video attribute into line-drawing characters.
 .PP
 The encoding of the information in this array has changed periodically.
-Application developers need only know that it is used for the "ACS_"
+Application developers need only know that it is used for the \*(``ACS_\*(''
 constants in <curses.h>.
 .PP
 The comparable data for the wide-character library is a private variable.
@@ -110,8 +116,8 @@ and \fBdelscreen\fP(3X).
 It is possible to save a value of \fBcur_term\fP for subsequent
 use as a parameter to \fBset_term\fP, for switching between screens.
 Alternatively, one can save the return value from \fBnewterm\fP
-or \fBsetupterm\fP to reuse in \fBset_term\fP.
-.SS Terminfo Names
+or \fBsetupterm\fP(3X) to reuse in \fBset_term\fP.
+.SS Terminfo Lookup Tables
 The \fB@TIC@\fP(1) and \fB@INFOCMP@\fP(1) programs use lookup tables for
 the long and short names of terminfo capabilities,
 as well as the corresponding names for termcap capabilities.
@@ -119,7 +125,7 @@ These are available to other applications,
 although the hash-tables used by
 the terminfo and termcap functions are not available.
 .PP
-The long terminfo capability names use a "l" (ell) in their names:
+The long terminfo capability names use a \*(``f\*('' (eff) in their names:
 \fBboolfnames\fP,
 \fBnumfnames\fP, and
 \fBstrfnames\fP.
@@ -135,29 +141,34 @@ These are the corresponding names used for termcap descriptions:
 \fBstrcodes\fP.
 .\"
 .SS Terminal Type
+A terminal description begins with one or more terminal names
+separated by \*(``|\*('' (vertical bars).
 On initialization of the curses or terminfo interfaces,
-\fBsetupterm\fP copies the terminal name to the array \fBttytype\fP.
+\fBsetupterm\fP(3X) copies the terminal names to the array \fBttytype\fP.
 .\"
 .SS Terminfo Names
-.PP
 In addition to the variables, \fB<term.h>\fP also defines a symbol for each
 terminfo capability \fIlong name\fP.
 These are in terms of the symbol \fBCUR\fP,
 which is defined
 .PP
 .nf
-.ft CW
-#define CUR cur_term->type.
+.ft \*(CW
+#define CUR ((TERMTYPE *)(cur_term))->
 .fi
 .ft R
 .PP
 These symbols provide a faster method of accessing terminfo capabilities
-than using \fBtigetstr\fR(3X), etc.
+than using \fBtigetstr\fP(3X), etc.
+.PP
+The actual definition of \fBCUR\fP depends upon the implementation,
+but each terminfo library provides these long names defined to point
+into the current terminal description loaded into memory.
 .\"
 .SH NOTES
 The low-level terminfo interface is initialized using
 .hy 0
-\fBsetupterm\fR(3X).
+\fBsetupterm\fP(3X).
 .hy
 The upper-level curses interface uses the low-level terminfo interface,
 internally.
@@ -176,8 +187,8 @@ as described in the \fBTerminfo Names\fP section.
 Most, but not all, base the definition upon the \fBcur_term\fP variable.
 .SH SEE ALSO
 .hy 0
-\fBcurses\fR(3X),
-\fBcurs_terminfo\fR(3X),
-\fBcurs_threads\fR(3X),
-\fBterminfo\fR(\*n).
+\fBcurses\fP(3X),
+\fBcurs_terminfo\fP(3X),
+\fBcurs_threads\fP(3X),
+\fBterminfo\fP(\*n).
 .hy