# curs_variables 3x

    curs_variables(3x)                                   curs_variables(3x)

## NAME

           COLORS, COLOR_PAIRS, COLS, ESCDELAY, LINES, TABSIZE,
           curscr, newscr, stdscr - curses global variables

## SYNOPSIS

           #include <curses.h>

           int COLOR_PAIRS;
           int COLORS;
           int COLS;
           int ESCDELAY;
           int LINES;
           int TABSIZE;
           WINDOW * curscr;
           WINDOW * newscr;
           WINDOW * stdscr;

## DESCRIPTION

           This page summarizes variables provided by the curses  li-
           brary.   A more complete description is given in the curs-
           es(3x) manual page.

           Depending on the configuration, these may be actual  vari-
           ables,     or    macros    (see    curs_threads(3x)    and
           curs_opaque(3x)) which provide read-only access  to  curs-
           es's  state.   In  either  case, applications should treat
           them as read-only to avoid confusing the library.

### COLOR_PAIRS

           After initializing curses, this variable contains the num-
           ber of color pairs which the terminal can support.  Usual-
           ly the number of color pairs  will  be  the  product  COL-
           ORS*COLORS, however this is not always true:

           o   a  few  terminals  use HLS colors, which do not follow
               this rule

           o   terminals supporting a large number of colors are lim-
               ited  by  the number of color pairs that can be repre-
               sented in a signed short value.

### COLORS

           After initializing curses, this variable contains the num-
           ber of colors which the terminal can support.

### COLS

           After  initializing  curses,  this  variable  contains the
           width of the screen, i.e., the number of columns.

### ESCDELAY

           This variable holds the number of milliseconds to wait af-
           ter reading an escape character, to distinguish between an
           individual escape character entered on the  keyboard  from
           escape  sequences  sent  by cursor- and function-keys (see
           curses(3x).

### LINES

           After initializing  curses,  this  variable  contains  the
           height of the screen, i.e., the number of lines.

### TABSIZE

           This  variable  holds  the  number  of columns used by the
           curses library when converting a tab character  to  spaces
           as it adds the tab to a window (see curs_addch(3x).

### The Current Screen

           This implementation of curses uses a special window curscr
           to record its updates to the terminal screen.

### The New Screen

           This implementation of curses uses a special window newscr
           to  hold  updates  to  the terminal screen before applying
           them to curscr.

### The Standard Screen

           Upon initializing curses, a default window called  stdscr,
           which  is  the  size  of  the terminal screen, is created.
           Many curses functions use this window.

## NOTES

           The   curses   library   is   initialized   using   either
           curs_initscr(3x), or curs_initscr(3x).

           If  curses  is  configured to use separate curses/terminfo
           libraries, most of these variables reside  in  the  curses
           library.

## PORTABILITY

           ESCDELAY  and TABSIZE are extensions, not provided in most
           other implementations of curses.

           ESCDELAY is an extension in AIX curses:

           o   In AIX, the units for ESCDELAY are fifths  of  a  mil-
               lisecond.

           o   The default value for AIX's ESCDELAY is 0.1 seconds.

           o   AIX also enforces a limit of 10,000 seconds for ESCDE-
               LAY; this implementation currently has no upper limit.

           This implementation has long used ESCDELAY with  units  of
           milliseconds,  making  it impossible to be completely com-
           patible with AIX.  Likewise, most users have either decid-
           ed to override the value, or rely upon its default value.

## SEE ALSO

           curses(3x),       curs_opaque(3x),      curs_terminfo(3x),
           curs_threads(3x), term_variables(3x), terminfo(5).

                                                         curs_variables(3x)