]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - Ada95/html/man/ncurses.3x.html
ncurses 5.0
[ncurses.git] / Ada95 / html / man / ncurses.3x.html
diff --git a/Ada95/html/man/ncurses.3x.html b/Ada95/html/man/ncurses.3x.html
new file mode 100644 (file)
index 0000000..164ae90
--- /dev/null
@@ -0,0 +1,701 @@
+<HTML>
+<BODY>
+<PRE>
+       <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
+
+
+</PRE>
+<H2>SYNOPSIS</H2><PRE>
+       <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
+
+
+</PRE>
+<H2>DESCRIPTION</H2><PRE>
+       The  <STRONG>ncurses</STRONG>  library  routines  give the user a terminal-
+       independent method  of  updating  character  screens  with
+       reasonable  optimization.   This  implementation  is ``new
+       curses'' (ncurses) and is  the  approved  replacement  for
+       4.4BSD classic curses, which has been discontinued.
+
+       The  <STRONG>ncurses</STRONG>  routines  emulate  the <STRONG><A HREF="ncurses.3x.html">curses(3X)</A></STRONG> library of
+       System V Release 4 UNIX, and the XPG4 curses standard (XSI
+       curses)  but the <STRONG>ncurses</STRONG> library is freely redistributable
+       in source form.  Differences  from  the  SVr4  curses  are
+       summarized  under  the  EXTENSIONS and BUGS sections below
+       and  described  in  detail  in  the  EXTENSIONS  and  BUGS
+       sections of individual man pages.
+
+       A  program  using  these  routines must be linked with the
+       <STRONG>-lncurses</STRONG> option, or (if it has been generated)  with  the
+       debugging  library  <STRONG>-lncurses_g</STRONG>.   (Your system integrator
+       may also have installed these libraries  under  the  names
+       <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.)  The ncurses_g library generates
+       trace logs (in  a  file  called  'trace'  in  the  current
+       directory) that describe curses actions.
+
+       The  <STRONG>ncurses</STRONG>  package supports: overall screen, window and
+       pad manipulation; output  to  windows  and  pads;  reading
+       terminal input; control over terminal and <STRONG>curses</STRONG> input and
+       output  options;   environment   query   routines;   color
+       manipulation;   use   of   soft   label   keys;   terminfo
+       capabilities;   and   access   to   low-level    terminal-
+       manipulation routines.
+
+       To initialize the routines, the routine <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>
+       must be called before any of the other routines that  deal
+       with  windows  and  screens  are used.  The routine <STRONG>endwin</STRONG>
+       must be called before exiting.  To get character-at-a-time
+       input  without  echoing (most interactive, screen oriented
+       programs want this),  the  following  sequence  should  be
+       used:
+
+             <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
+
+       Most programs would additionally use the sequence:
+
+             <STRONG>nonl();</STRONG>
+             <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
+             <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
+
+       defined,  must  be  output.  This can be done by executing
+       the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
+       <STRONG>TERM</STRONG>  has  been  exported.  <STRONG>tset(1)</STRONG> is usually responsible
+       for doing this.  [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
+
+       The  <STRONG>ncurses</STRONG>  library   permits   manipulation   of   data
+       structures,  called  <EM>windows</EM>,  which  can be thought of as
+       two-dimensional arrays of characters representing  all  or
+       part  of  a  CRT  screen.  A default window called <STRONG>stdscr</STRONG>,
+       which is the size of the  terminal  screen,  is  supplied.
+       Others may be created with <STRONG>newwin</STRONG>.
+
+       Note  that  <STRONG>curses</STRONG>  does  not  handle overlapping windows,
+       that's done by the <STRONG><A HREF="panel.3x.html">panel(3X)</A></STRONG> library. This means that  you
+       can  either  use  <STRONG>stdscr</STRONG>  or  divide the screen into tiled
+       windows and not using <STRONG>stdscr</STRONG> at all. Mixing the  two  will
+       result in unpredictable, and undesired, effects.
+
+       Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
+       These  data  structures  are  manipulated  with   routines
+       described  here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
+       Among which the most basic routines are  <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.
+       More  general versions of these routines are included with
+       names beginning with <STRONG>w</STRONG>, allowing the  user  to  specify  a
+       window.  The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.)
+
+       After using routines to manipulate a  window,  <STRONG>refresh</STRONG>  is
+       called,  telling <STRONG>curses</STRONG> to make the user's CRT screen look
+       like <STRONG>stdscr</STRONG>.  The characters in a window are  actually  of
+       type  <STRONG>chtype</STRONG>, (character and attribute data) so that other
+       information about the character may also  be  stored  with
+       each character.
+
+       Special  windows  called  <EM>pads</EM>  may  also  be manipulated.
+       These are windows which are not constrained to the size of
+       the  screen  and  whose  contents  need  not be completely
+       displayed.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG> for more information.
+
+       In addition to drawing characters  on  the  screen,  video
+       attributes  and  colors  may  be  supported,  causing  the
+       characters to show up in  such  modes  as  underlined,  in
+       reverse  video, or in color on terminals that support such
+       display enhancements.   Line  drawing  characters  may  be
+       specified  to be output.  On input, <STRONG>curses</STRONG> is also able to
+       translate arrow and function  keys  that  transmit  escape
+       sequences  into single values.  The video attributes, line
+       drawing characters, and input values use names, defined in
+       <STRONG><curses.h></STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
+
+       If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
+       if the program is executing in a window environment,  line
+       and  column  information  in the environment will override
+       of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
+
+       If the  environment  variable  <STRONG>TERMINFO</STRONG>  is  defined,  any
+       program   using   <STRONG>curses</STRONG>   checks  for  a  local  terminal
+       definition before checking in  the  standard  place.   For
+       example,  if  <STRONG>TERM</STRONG>  is  set  to <STRONG>att4424</STRONG>, then the compiled
+       terminal definition is found in
+
+             <STRONG>@DATADIR@/terminfo/a/att4424</STRONG>.
+
+       (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
+       creation  of  huge  directories.)  However, if <STRONG>TERMINFO</STRONG> is
+       set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
+
+             <STRONG>$HOME/myterms/a/att4424</STRONG>,
+
+       and if that fails, it then checks
+
+             <STRONG>@DATADIR@/terminfo/a/att4424</STRONG>.
+
+       This is useful for developing experimental definitions  or
+       when   write   permission  in  <STRONG>@DATADIR@/terminfo</STRONG>  is  not
+       available.
+
+       The integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined  in
+       <STRONG><curses.h></STRONG>  and will be filled in by <STRONG>initscr</STRONG> with the size
+       of the screen.  The constants  <STRONG>TRUE</STRONG>  and  <STRONG>FALSE</STRONG>  have  the
+       values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
+
+       The  <STRONG>curses</STRONG>  routines  also  define  the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
+       <STRONG>curscr</STRONG> which is used for certain low-level operations like
+       clearing  and  redrawing a screen containing garbage.  The
+       <STRONG>curscr</STRONG> can be used in only a few routines.
+
+
+   <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
+       Many <STRONG>curses</STRONG> routines  have  two  or  more  versions.   The
+       routines  prefixed  with <STRONG>w</STRONG> require a window argument.  The
+       routines prefixed with <STRONG>p</STRONG> require a  pad  argument.   Those
+       without a prefix generally use <STRONG>stdscr</STRONG>.
+
+       The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
+       to move to before performing the appropriate action.   The
+       <STRONG>mv</STRONG>  routines  imply  a call to <STRONG>move</STRONG> before the call to the
+       other routine.  The coordinate <EM>y</EM> always refers to the  row
+       (of  the  window), and <EM>x</EM> always refers to the column.  The
+       upper left-hand corner is always (0,0), not (1,1).
+
+       The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
+       and  <EM>x</EM>  and  <EM>y</EM> coordinates.  The window argument is always
+       specified before the coordinates.
+
+       <STRONG>WINDOW</STRONG>.
+
+       Option setting routines require a Boolean flag <EM>bf</EM> with the
+       value  <STRONG>TRUE</STRONG>  or  <STRONG>FALSE</STRONG>;  <EM>bf</EM>  is  always of type <STRONG>bool</STRONG>.  The
+       variables <EM>ch</EM> and <EM>attrs</EM> below are always  of  type  <STRONG>chtype</STRONG>.
+       The  types <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in
+       <STRONG><curses.h></STRONG>.  The type <STRONG>TERMINAL</STRONG>  is  defined  in  <STRONG><term.h></STRONG>.
+       All other arguments are integers.
+
+
+   <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
+       The following table lists each <STRONG>curses</STRONG> routine and the name
+       of the manual page on which  it  is  described.   Routines
+       flagged  with  `*'  are ncurses-specific, not described by
+       XPG4 or present in SVr4.
+
+       center tab(/); l l l l .  <STRONG>curses</STRONG> Routine Name/Manual  Page
+       Name  =  addch/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>  addchnstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>
+       addchstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>         addnstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>
+       addstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>              attr_get/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       attr_off/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>               attr_on/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       attr_set/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>               attroff/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       attron/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>                 attrset/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       baudrate/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>             beep/<STRONG><A HREF="curs_beep.3x.html">curs_beep(3X)</A></STRONG>
+       bkgd/<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3X)</A></STRONG>                   bkgdset/<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3X)</A></STRONG>
+       border/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>                 box/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+       can_change_color/<STRONG><A HREF="curs_color.3x.html">curs_color(3X)</A></STRONG>     cbreak/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       chgat/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>                   clear/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>
+       clearok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>           clrtobot/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>
+       clrtoeol/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>       color_content/<STRONG><A HREF="curs_color.3x.html">curs_color(3X)</A></STRONG>
+       color_set/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>           copywin/<STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3X)</A></STRONG>
+       curs_set/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>     def_prog_mode/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       def_shell_mode/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>  define_key/<STRONG><A HREF="define_key.3x.html">define_key(3X)</A></STRONG>*
+       del_curterm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>   delay_output/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>
+       delch/<STRONG><A HREF="curs_delch.3x.html">curs_delch(3X)</A></STRONG>            deleteln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>
+       delscreen/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>          delwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>
+       derwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>           doupdate/<STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3X)</A></STRONG>
+       dupwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>                echo/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       echochar/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>            endwin/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>
+       erase/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>          erasechar/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>
+       filter/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>                   flash/<STRONG><A HREF="curs_beep.3x.html">curs_beep(3X)</A></STRONG>
+       flushinp/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>             getbegyx/<STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3X)</A></STRONG>
+       getbkgd/<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3X)</A></STRONG>                 getch/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>
+       getmaxyx/<STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3X)</A></STRONG>           getmouse/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>*
+       getnstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>            getparyx/<STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3X)</A></STRONG>
+       getstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>              getsyx/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       getwin/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>                  getyx/<STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3X)</A></STRONG>
+       halfdelay/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>        has_colors/<STRONG><A HREF="curs_color.3x.html">curs_color(3X)</A></STRONG>
+       has_ic/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>        has_il/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>
+       has_key/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>*              hline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+       idcok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>              idlok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>
+       immedok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>                inch/<STRONG><A HREF="curs_inch.3x.html">curs_inch(3X)</A></STRONG>
+       initscr/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>             innstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       insch/<STRONG><A HREF="curs_insch.3x.html">curs_insch(3X)</A></STRONG>            insdelln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>
+       insertln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>         insnstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>
+       insstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>                instr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       intrflush/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>    is_linetouched/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG>
+       is_wintouched/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG>     isendwin/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>
+       keyname/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>                     keyok/<STRONG><A HREF="keyok.3x.html">keyok(3X)</A></STRONG>*
+       keypad/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>         killchar/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>
+       leaveok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>       longname/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>
+       mcprint/<STRONG><A HREF="curs_print.3x.html">curs_print(3X)</A></STRONG>*               meta/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       mouseinterval/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>*    mousemask/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>*
+       move/<STRONG><A HREF="curs_move.3x.html">curs_move(3X)</A></STRONG>                  mvaddch/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>
+       mvaddchnstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG> mvaddchstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>
+       mvaddnstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>         mvaddstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>
+       mvchgat/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>              mvcur/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       mvdelch/<STRONG><A HREF="curs_delch.3x.html">curs_delch(3X)</A></STRONG>            mvderwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>
+       mvgetch/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>           mvgetnstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>
+       mvgetstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>           mvhline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+       mvinch/<STRONG><A HREF="curs_inch.3x.html">curs_inch(3X)</A></STRONG>           mvinchnstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>
+       mvinchstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>         mvinnstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       mvinsch/<STRONG><A HREF="curs_insch.3x.html">curs_insch(3X)</A></STRONG>           mvinsnstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>
+       mvinsstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>            mvinstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       mvprintw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>            mvscanw/<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3X)</A></STRONG>
+       mvwaddch/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>     mvwaddchnstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>
+       mvwaddchstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>   mvwaddnstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>
+       mvwaddstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>           mvwchgat/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       mvwdelch/<STRONG><A HREF="curs_delch.3x.html">curs_delch(3X)</A></STRONG>            mvwgetch/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>
+       mvwgetnstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>       mvwgetstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>
+       mvwhline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>             mvwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>
+       mvwinch/<STRONG><A HREF="curs_inch.3x.html">curs_inch(3X)</A></STRONG>         mvwinchnstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>
+       mvwinchstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>       mvwinnstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       mvwinsch/<STRONG><A HREF="curs_insch.3x.html">curs_insch(3X)</A></STRONG>         mvwinsnstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>
+       mvwinsstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>          mvwinstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       mvwprintw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>          mvwscanw/<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3X)</A></STRONG>
+       mvwvline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>             napms/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       newpad/<STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG>               newterm/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>
+       newwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>                 nl/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>
+       nocbreak/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>           nodelay/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       noecho/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>               nonl/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>
+       noqiflush/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>            noraw/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       notimeout/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>         overlay/<STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3X)</A></STRONG>
+       overwrite/<STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3X)</A></STRONG>     pair_content/<STRONG><A HREF="curs_color.3x.html">curs_color(3X)</A></STRONG>
+       pechochar/<STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG>           pnoutrefresh/<STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG>
+       prefresh/<STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG>               printw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>
+       putp/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>                putwin/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>
+       qiflush/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>                raw/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>
+       redrawwin/<STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3X)</A></STRONG>        refresh/<STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3X)</A></STRONG>
+       reset_prog_mode/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       reset_shell_mode/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>   resetty/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       resizeterm/<STRONG><A HREF="resizeterm.3x.html">resizeterm(3X)</A></STRONG>*   restartterm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       ripoffline/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>         savetty/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       scanw/<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3X)</A></STRONG>            scr_dump/<STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3X)</A></STRONG>
+       scroll/<STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3X)</A></STRONG>           scrollok/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>
+       set_curterm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>    set_term/<STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3X)</A></STRONG>
+       setscrreg/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>          setsyx/<STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3X)</A></STRONG>
+       setterm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>      setupterm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       slk_attr/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>*           slk_attr_off/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_attr_on/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>         slk_attr_set/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_attroff/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>           slk_attron/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_attrset/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>            slk_clear/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_color/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>               slk_init/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_label/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>        slk_noutrefresh/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_refresh/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>          slk_restore/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       slk_set/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>                slk_touch/<STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>
+       standend/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>              standout/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       start_color/<STRONG><A HREF="curs_color.3x.html">curs_color(3X)</A></STRONG>             subpad/<STRONG><A HREF="curs_pad.3x.html">curs_pad(3X)</A></STRONG>
+       subwin/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>              syncok/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>
+       termattrs/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>   termname/<STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3X)</A></STRONG>
+       tgetent/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>         tgetflag/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>
+       tgetnum/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>          tgetstr/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>
+       tgoto/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>         tigetflag/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       tigetnum/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>      tigetstr/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       timeout/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>           touchline/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG>
+       touchwin/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG>            tparm/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       tputs/<STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3X)</A></STRONG>             tputs/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       typeahead/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>             unctrl/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>
+       ungetch/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>          ungetmouse/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>*
+       untouchwin/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG> use_default_colors/<STRONG><A HREF="dft_fgbg.3x.html">dft_fgbg(3X)</A></STRONG>*
+       use_env/<STRONG><A HREF="curs_util.3x.html">curs_util(3X)</A></STRONG>            vidattr/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>
+       vidputs/<STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3X)</A></STRONG>            vline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+       vw_printw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>          vw_scanw/<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3X)</A></STRONG>
+       vwprintw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>            vwscanw/<STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3X)</A></STRONG>
+       waddch/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>         waddchnstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>
+       waddchstr/<STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3X)</A></STRONG>       waddnstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>
+       waddstr/<STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3X)</A></STRONG>            wattr_get/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wattr_off/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>             wattr_on/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wattr_set/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>             wattroff/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wattron/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>               wattrset/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wbkgd/<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3X)</A></STRONG>                 wbkgdset/<STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3X)</A></STRONG>
+       wborder/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>               wchgat/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wclear/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>             wclrtobot/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>
+       wclrtoeol/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>          wcolor_set/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wcursyncup/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>           wdelch/<STRONG><A HREF="curs_delch.3x.html">curs_delch(3X)</A></STRONG>
+       wdeleteln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>       wechochar/<STRONG><A HREF="curs_addch.3x.html">curs_addch(3X)</A></STRONG>
+       wenclose/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>*             werase/<STRONG><A HREF="curs_clear.3x.html">curs_clear(3X)</A></STRONG>
+       wgetch/<STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG>             wgetnstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>
+       wgetstr/<STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3X)</A></STRONG>             whline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+       winch/<STRONG><A HREF="curs_inch.3x.html">curs_inch(3X)</A></STRONG>             winchnstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>
+       winchstr/<STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3X)</A></STRONG>           winnstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       winsch/<STRONG><A HREF="curs_insch.3x.html">curs_insch(3X)</A></STRONG>          winsdelln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>
+       winsertln/<STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3X)</A></STRONG>       winsnstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>
+       winsstr/<STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3X)</A></STRONG>              winstr/<STRONG><A HREF="curs_instr.3x.html">curs_instr(3X)</A></STRONG>
+       wmouse_trafo/<STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG>            wmove/<STRONG><A HREF="curs_move.3x.html">curs_move(3X)</A></STRONG>
+       wnoutrefresh/<STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3X)</A></STRONG>      wprintw/<STRONG><A HREF="curs_printw.3x.html">curs_printw(3X)</A></STRONG>
+       wscrl/<STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3X)</A></STRONG>          wsetscrreg/<STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3X)</A></STRONG>
+       wstandend/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>            wstandout/<STRONG><A HREF="curs_attr.3x.html">curs_attr(3X)</A></STRONG>
+       wsyncdown/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>          wsyncup/<STRONG><A HREF="curs_window.3x.html">curs_window(3X)</A></STRONG>
+       wtimeout/<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3X)</A></STRONG>           wtouchln/<STRONG><A HREF="curs_touch.3x.html">curs_touch(3X)</A></STRONG>
+       wvline/<STRONG><A HREF="curs_border.3x.html">curs_border(3X)</A></STRONG>
+
+
+</PRE>
+<H2>RETURN VALUE</H2><PRE>
+       Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
+       and  an  integer  value  other  than  <STRONG>ERR</STRONG>  upon successful
+       completion,  unless  otherwise  noted   in   the   routine
+       descriptions.
+
+       All  macros  return  the  value  of  the <STRONG>w</STRONG> version, except
+       <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>,  <STRONG>getyx</STRONG>,  <STRONG>getbegyx</STRONG>,  <STRONG>getmaxyx</STRONG>.   The
+       return  values  of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
+       and <STRONG>getmaxyx</STRONG> are undefined (<EM>i</EM>.<EM>e</EM>., these should not be used
+       as the right-hand side of assignment statements).
+
+       Routines that return pointers return <STRONG>NULL</STRONG> on error.
+
+
+</PRE>
+<H2>ENVIRONMENT</H2><PRE>
+       The   following   environment   symbols   are  useful  for
+       customizing the runtime behavior of the  <STRONG>ncurses</STRONG>  library.
+       The  most  important  ones  have been already discussed in
+       detail.
+
+       BAUDRATE
+            The debugging library checks this environment  symbol
+            when the application has redirected output to a file.
+            The symbol's numeric value is used for the  baudrate.
+            If  no value is found <STRONG>ncurses</STRONG> uses 9600.  This allows
+            testers to construct repeatable test-cases that  take
+            into account costs that depend on baudrate.
+
+       CC   When set, change occurrences of the command_character
+            (i.e., the <STRONG>cmdch</STRONG> capability) of the  loaded  terminfo
+            entries  to  the  value  of  this  symbol.   Very few
+            terminfo entries provide this feature.
+
+       COLUMNS
+            Specify  the  width  of  the  screen  in  characters.
+            Applications   running  in  a  windowing  environment
+            usually are able to obtain the width of the window in
+            which  they  are  executing.  If neither the $COLUMNS
+            value nor the terminal's screen  size  is  available,
+            <STRONG>ncurses</STRONG>  uses  the size which may be specified in the
+            terminfo database (i.e., the <STRONG>cols</STRONG> capability).
+
+            It is important that your application use  a  correct
+            size  for  the  screen.   However, this is not always
+            possible because your application may be running on a
+            host  which  does  not honor NAWS (Negotiations About
+
+            Either  COLUMNS  or  LINES  symbols  may be specified
+            independently.  This is mainly useful  to  circumvent
+            legacy  misfeatures  of  terminal descriptions, e.g.,
+            xterm which commonly specifies a 65 line screen.  For
+            best  results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified
+            in a terminal description for terminals which are run
+            as emulations.
+
+            Use the <STRONG>use_env</STRONG> function to disable this feature.
+
+       ESCDELAY
+            Specifies  the total time, in milliseconds, for which
+            ncurses will await  a  character  sequence,  e.g.,  a
+            function  key.  The default value, 1000 milliseconds,
+            is enough for most  uses.   However,  it  is  made  a
+            variable to accommodate unusual applications.
+
+            The most common instance where you may wish to change
+            this value is to work with slow hosts, e.g.,  running
+            on  a  network.   If  the host cannot read characters
+            rapidly enough, it will have the same  effect  as  if
+            the  terminal did not send characters rapidly enough.
+            The library will still see a timeout.
+
+            Note that  xterm  mouse  events  are  built  up  from
+            character sequences received from the xterm.  If your
+            application makes heavy use of multiple-clicking, you
+            may  wish  to lengthen this default value because the
+            timeout applies to the composed multi-click event  as
+            well as the individual clicks.
+
+       HOME Tells  <STRONG>ncurses</STRONG> where your home directory is.  That is
+            where  it  may  read  and  write  auxiliary  terminal
+            descriptions:
+
+            $HOME/.termcap
+            $HOME/.terminfo
+
+       LINES
+            Like  COLUMNS,  specify  the  height of the screen in
+            characters.  See COLUMNS for a detailed  description.
+
+       MOUSE_BUTTONS_123
+            This applies only to the OS/2 EMX port.  It specifies
+            the order of buttons on the mouse.   OS/2  numbers  a
+            3-button mouse inconsistently from other platforms:
+
+            1 = left
+            2 = right
+            3 = middle.
+
+            123  or  321.   If  it is not specified, <STRONG>ncurses</STRONG> uses
+            132.
+
+       NCURSES_NO_PADDING
+            Most of the terminal  descriptions  in  the  terminfo
+            database  are  written for real "hardware" terminals.
+            Many people use terminal emulators  which  run  in  a
+            windowing    environment    and    use   curses-based
+            applications.  Terminal emulators can  duplicate  all
+            of  the important aspects of a hardware terminal, but
+            they do not have the  same  limitations.   The  chief
+            limitation of a hardware terminal from the standpoint
+            of your application is the  management  of  dataflow,
+            i.e.,   timing.    Unless   a  hardware  terminal  is
+            interfaced into a terminal concentrator  (which  does
+            flow  control),  it (or your application) must manage
+            dataflow, preventing overruns.  The cheapest solution
+            (no  hardware cost) is for your program to do this by
+            pausing  after  operations  that  the  terminal  does
+            slowly, such as clearing the display.
+
+            As  a  result,  many terminal descriptions (including
+            the vt100) have delay times embedded.  You  may  wish
+            to  use  these  descriptions, but not want to pay the
+            performance penalty.
+
+            Set the NCURSES_NO_PADDING symbol to disable all  but
+            mandatory  padding.   Mandatory  padding is used as a
+            part of special control sequences such as <EM>flash</EM>.
+
+       NCURSES_NO_SETBUF
+            Normally  <STRONG>ncurses</STRONG>  enables  buffered  output   during
+            terminal  initialization.   This  is done (as in SVr4
+            curses)  for  performance   reasons.    For   testing
+            purposes,  both  of <STRONG>ncurses</STRONG> and certain applications,
+            this  feature  is   made   optional.    Setting   the
+            NCURSES_NO_SETBUF variable disables output buffering,
+            leaving the output  in  the  original  (usually  line
+            buffered) mode.
+
+       NCURSES_TRACE
+            During  initialization, the <STRONG>ncurses</STRONG> debugging library
+            checks the NCURSES_TRACE symbol.  If it  is  defined,
+            to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function,
+            using that value as the argument.
+
+            The argument values, which are defined  in  <STRONG>curses.h</STRONG>,
+            provide  several  types of information.  When running
+            with traces enabled, your application will write  the
+            file <STRONG>trace</STRONG> to the current directory.
+
+       TERM Denotes  your  terminal  type.  Each terminal type is
+            If the  <STRONG>ncurses</STRONG>  library  has  been  configured  with
+            <EM>termcap</EM>  support, <STRONG>ncurses</STRONG> will check for a terminal's
+            description in termcap form if it is not available in
+            the terminfo database.
+
+            The   TERMCAP   symbol  contains  either  a  terminal
+            description (with newlines stripped out), or  a  file
+            name  telling  where  the  information denoted by the
+            TERM symbol  exists.   In  either  case,  setting  it
+            directs  <STRONG>ncurses</STRONG>  to  ignore the usual place for this
+            information, e.g., /etc/termcap.
+
+       TERMINFO
+            Overrides the directory in which <STRONG>ncurses</STRONG> searches for
+            your terminal description.  This is the simplest, but
+            not the only way to change the list  of  directories.
+            The complete list of directories in order follows:
+
+            -  the last directory to which <STRONG>ncurses</STRONG> wrote, if any,
+               is searched first.
+
+            -  the directory specified by the TERMINFO symbol
+
+            -  $HOME/.terminfo
+
+            -  directories listed in the TERMINFO_DIRS symbol
+
+            -  one or more directories whose names are configured
+               and  compiled  into  the  ncurses  library,  e.g.,
+               @DATADIR@/terminfo
+
+       TERMINFO_DIRS
+            Specifies  a  list  of  directories  to  search   for
+            terminal  descriptions.   The  list  is  separated by
+            colons (i.e., ":").  All of the terminal descriptions
+            are  in  terminfo  form,  which  makes a subdirectory
+            named for the first  letter  of  the  terminal  names
+            therein.
+
+       TERMPATH
+            If  TERMCAP  does  not  hold a file name then <STRONG>ncurses</STRONG>
+            checks the  TERMPATH  symbol.   This  is  a  list  of
+            filenames  separated  by  colons (i.e., ":").  If the
+            TERMPATH symbol is not  set,  <STRONG>ncurses</STRONG>  looks  in  the
+            files   /etc/termcap,   /usr/share/misc/termcap   and
+            $HOME/.termcap, in that order.
+
+
+</PRE>
+<H2>FILES</H2><PRE>
+       @DATADIR@/tabset
+            directory containing  initialization  files  for  the
+            terminal   capability   database   @DATADIR@/terminfo
+            terminal capability database
+
+       <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and 3X pages whose  names  begin  "curs_"  for
+       detailed routine descriptions.
+
+
+</PRE>
+<H2>EXTENSIONS</H2><PRE>
+       The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
+       (<STRONG>-DUSE_GETCAP</STRONG>)  that   falls   back   to   the   old-style
+       /etc/termcap file if the terminal setup code cannot find a
+       terminfo entry corresponding to <STRONG>TERM</STRONG>.  Use of this feature
+       is  not  recommended, as it essentially includes an entire
+       termcap  compiler  in  the  <STRONG>ncurses</STRONG>   startup   code,   at
+       significant cost in core and startup cycles.
+
+       The  <STRONG>ncurses</STRONG>  library  includes  facilities  for capturing
+       mouse events on certain terminals (including  xterm).  See
+       the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG> manual page for details.
+
+       The  <STRONG>ncurses</STRONG> library includes facilities for responding to
+       window resizing events, e.g., when running  in  an  xterm.
+       See  the  <STRONG><A HREF="resizeterm.3x.html">resizeterm(3X)</A></STRONG>  and <STRONG><A HREF="wresize.3x.html">wresize(3X)</A></STRONG> manual pages for
+       details.  In addition, the library may be configured  with
+       a SIGWINCH handler.
+
+       The  <STRONG>ncurses</STRONG> library extends the fixed set of function key
+       capabilities of  terminals  by  allowing  the  application
+       designer  to  define  additional key sequences at runtime.
+       See the <STRONG><A HREF="define_key.3x.html">define_key(3X)</A></STRONG>  and  <STRONG><A HREF="keyok.3x.html">keyok(3X)</A></STRONG>  manual  pages  for
+       details.
+
+       The  <STRONG>ncurses</STRONG>  library  can  exploit  the  capabilities  of
+       terminals which implement the ISO-6429 SGR 39 and  SGR  49
+       controls, which allow an application to reset the terminal
+       to its original foreground and  background  colors.   From
+       the  users'  perspective,  the application is able to draw
+       colored  text  on  a  background  whose   color   is   set
+       independently,   providing   better   control  over  color
+       contrasts.  See the <STRONG><A HREF="use_default_colors.3x.html">use_default_colors(3X)</A></STRONG> manual page for
+       details.
+
+       The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
+       application output to a printer attached to  the  terminal
+       device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3X)</A></STRONG> manual page for details.
+
+
+</PRE>
+<H2>PORTABILITY</H2><PRE>
+       The   <STRONG>ncurses</STRONG>   library   is  intended  to  be  BASE-level
+       conformant with the XSI Curses standard.  Certain portions
+       of  the EXTENDED XSI Curses functionality (including color
+       support) are supported.  The following EXTENDED XSI Curses
+       calls  in  support  of wide (multibyte) characters are not
+       yet   implemented:   <STRONG>add_wch</STRONG>,   <STRONG>add_wchnstr</STRONG>,   <STRONG>add_wchstr</STRONG>,
+       <STRONG>addnwstr</STRONG>, <STRONG>addwstr</STRONG>, <STRONG>bkgrnd</STRONG>, <STRONG>bkgrndset</STRONG>, <STRONG>border_set</STRONG>, <STRONG>box_set</STRONG>,
+       <STRONG>echo_wchar</STRONG>,  <STRONG>erasewchar</STRONG>,  <STRONG>get_wch</STRONG>,  <STRONG>get_wstr</STRONG>,   <STRONG>getbkgrnd</STRONG>,
+       <STRONG>getcchar</STRONG>,   <STRONG>getn_wstr</STRONG>,   <STRONG>getwchtype</STRONG>,   <STRONG>hline_set</STRONG>,  <STRONG>in_wch</STRONG>,
+       <STRONG>killwchar</STRONG>,   <STRONG>mvadd_wch</STRONG>,    <STRONG>mvadd_wchnstr</STRONG>,    <STRONG>mvadd_wchstr</STRONG>,
+       <STRONG>mvaddnwstr</STRONG>, <STRONG>mvaddwstr</STRONG>, <STRONG>mvget_wch</STRONG>, <STRONG>mvget_wstr</STRONG>, <STRONG>mvgetn_wstr</STRONG>,
+       <STRONG>mvhline_set</STRONG>, <STRONG>mvin_wch</STRONG>, <STRONG>mvinnwstr</STRONG>, <STRONG>mvins_nwstr</STRONG>,  <STRONG>mvins_wch</STRONG>,
+       <STRONG>mvins_wstr</STRONG>, <STRONG>mvinwchnstr</STRONG>, <STRONG>mvinwchstr</STRONG>, <STRONG>mvinwchstr</STRONG>, <STRONG>mvinwstr</STRONG>,
+       <STRONG>mvvline_set</STRONG>,  <STRONG>mvwadd_wch</STRONG>,  <STRONG>mvwadd_wchnstr</STRONG>,  <STRONG>mvwadd_wchstr</STRONG>,
+       <STRONG>mvwaddnwstr</STRONG>,     <STRONG>mvwaddwstr</STRONG>,     <STRONG>mvwget_ch</STRONG>,    <STRONG>mvwget_wch</STRONG>,
+       <STRONG>mvwget_wstr</STRONG>,   <STRONG>mvwgetn_wstr</STRONG>,   <STRONG>mvwhline_set</STRONG>,    <STRONG>mvwin_wch</STRONG>,
+       <STRONG>mvwin_wchnstr</STRONG>,   <STRONG>mvwin_wchstr</STRONG>,  <STRONG>mvwinnwstr</STRONG>,  <STRONG>mvwins_nwstr</STRONG>,
+       <STRONG>mvwins_wch</STRONG>,   <STRONG>mvwins_wstr</STRONG>,    <STRONG>mvwinwchnstr</STRONG>.     <STRONG>mvwinwstr</STRONG>,
+       <STRONG>mvwvline_set</STRONG>, <STRONG>pecho_wchar</STRONG>, <STRONG>setcchar</STRONG>, <STRONG>slk_wset</STRONG>, <STRONG>term_attrs</STRONG>,
+       <STRONG>unget_wch</STRONG>,  <STRONG>vhline_set</STRONG>,  <STRONG>vid_attr</STRONG>,  <STRONG>vid_puts</STRONG>,   <STRONG>vline_set</STRONG>,
+       <STRONG>wadd_wch</STRONG>,  <STRONG>wadd_wchnstr</STRONG>, <STRONG>wadd_wchstr</STRONG>, <STRONG>waddnwstr</STRONG>, <STRONG>waddwstr</STRONG>,
+       <STRONG>waddwstr</STRONG>, <STRONG>wbkgrnd</STRONG>,  <STRONG>wbkgrndset</STRONG>,  <STRONG>wbkgrndset</STRONG>,  <STRONG>wborder_set</STRONG>,
+       <STRONG>wecho_wchar</STRONG>, <STRONG>wecho_wchar</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>wget_wstr</STRONG>, <STRONG>wgetbkgrnd</STRONG>,
+       <STRONG>wgetn_wstr</STRONG>, <STRONG>whline_set</STRONG>, <STRONG>win_wch</STRONG>, <STRONG>win_wchnstr</STRONG>,  <STRONG>win_wchstr</STRONG>,
+       <STRONG>winnwstr</STRONG>,  <STRONG>wins_nwstr</STRONG>,  <STRONG>wins_wch</STRONG>,  <STRONG>wins_wstr</STRONG>,  <STRONG>winwchnstr</STRONG>,
+       <STRONG>winwchstr</STRONG>, <STRONG>winwstr</STRONG>, <STRONG>wunctrl</STRONG>, <STRONG>wvline_set</STRONG>,
+
+       A small number of local differences (that  is,  individual
+       differences  between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
+       described in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library  man
+       pages.
+
+       The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present
+       in SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3X)</A></STRONG> manual page for  details.
+
+       The  routine  <STRONG>slk_attr</STRONG>  is  not  part  of  XPG4, nor is it
+       present in SVr4.  See the  <STRONG><A HREF="curs_slk.3x.html">curs_slk(3X)</A></STRONG>  manual  page  for
+       details.
+
+       The     routines    <STRONG>getmouse</STRONG>,    <STRONG>mousemask</STRONG>,    <STRONG>ungetmouse</STRONG>,
+       <STRONG>mouseinterval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse  interfacing
+       are  not  part of XPG4, nor are they present in SVr4.  See
+       the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3X)</A></STRONG> manual page for details.
+
+       The routine <STRONG>mcprint</STRONG> was not present in any previous curses
+       implementation.   See  the  <STRONG><A HREF="curs_print.3x.html">curs_print(3X)</A></STRONG> manual page for
+       details.
+
+       The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present
+       in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3X)</A></STRONG> manual page for details.
+
+       In  historic  curses  versions,  delays  embedded  in  the
+       capabilities  <STRONG>cr</STRONG>,  <STRONG>ind</STRONG>,  <STRONG>cub1</STRONG>,  <STRONG>ff</STRONG>   and   <STRONG>tab</STRONG>   activated
+       corresponding  delay bits in the UNIX tty driver.  In this
+       implementation, all padding is done by  NUL  sends.   This
+       method   is  slightly  more  expensive,  but  narrows  the
+       interface to the UNIX kernel significantly  and  increases
+       the package's portability correspondingly.
+
+       In  the  XSI  standard  and  SVr4 manual pages, many entry
+       points have prototype arguments of the for <STRONG>char</STRONG> <STRONG>*const</STRONG> (or
+       (see  section  3.5.4.1), these declarations are either (a)
+       meaningless,  or  (b)  meaningless   and   illegal.    The
+       declaration  <STRONG>const</STRONG>  <STRONG>char</STRONG>  <STRONG>*x</STRONG>  is  a  modifiable pointer to
+       unmodifiable data, but <STRONG>char</STRONG> <STRONG>*const</STRONG> <STRONG>x</STRONG>' is  an  unmodifiable
+       pointer to modifiable data.  Given that C passes arguments
+       by value, <STRONG><type></STRONG> <STRONG>*const</STRONG>  as  a  formal  type  is  at  best
+       dubious.    Some   compilers   choke  on  the  prototypes.
+       Therefore, in this implementation, they have been  changed
+       to <STRONG>const</STRONG> <STRONG><type></STRONG> <STRONG>*</STRONG> globally.
+
+
+</PRE>
+<H2>NOTES</H2><PRE>
+       The  header  file  <STRONG><curses.h></STRONG>  automatically  includes the
+       header files <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
+
+       If standard output from a <STRONG>ncurses</STRONG> program  is  re-directed
+       to  something  which  is not a tty, screen updates will be
+       directed to standard  error.   This  was  an  undocumented
+       feature of AT&T System V Release 3 curses.
+
+
+</PRE>
+<H2>AUTHORS</H2><PRE>
+       Zeyd  M.  Ben-Halim,  Eric  S.  Raymond, Thomas E. Dickey.
+       Based on pcurses by Pavel Curtis.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</PRE>
+</BODY>
+</HTML>