ncurses 5.6 - patch 20081011
[ncurses.git] / doc / html / man / ncurses.3x.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2 <!-- 
3   * t
4   ****************************************************************************
5   * Copyright (c) 1998-2007,2008 Free Software Foundation, Inc.              *
6   *                                                                          *
7   * Permission is hereby granted, free of charge, to any person obtaining a  *
8   * copy of this software and associated documentation files (the            *
9   * "Software"), to deal in the Software without restriction, including      *
10   * without limitation the rights to use, copy, modify, merge, publish,      *
11   * distribute, distribute with modifications, sublicense, and/or sell       *
12   * copies of the Software, and to permit persons to whom the Software is    *
13   * furnished to do so, subject to the following conditions:                 *
14   *                                                                          *
15   * The above copyright notice and this permission notice shall be included  *
16   * in all copies or substantial portions of the Software.                   *
17   *                                                                          *
18   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
19   * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
20   * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
21   * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
22   * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
23   * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
24   * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
25   *                                                                          *
26   * Except as contained in this notice, the name(s) of the above copyright   *
27   * holders shall not be used in advertising or otherwise to promote the     *
28   * sale, use or other dealings in this Software without prior written       *
29   * authorization.                                                           *
30   ****************************************************************************
31   * @Id: ncurses.3x,v 1.91 2008/10/11 20:43:11 tom Exp @
32 -->
33 <HTML>
34 <HEAD>
35 <TITLE>ncurses 3x</TITLE>
36 <link rev=made href="mailto:bug-ncurses@gnu.org">
37 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
38 </HEAD>
39 <BODY>
40 <H1>ncurses 3x</H1>
41 <HR>
42 <PRE>
43 <!-- Manpage converted by man2html 3.0.1 -->
44 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                                                 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
45
46
47
48
49 </PRE>
50 <H2>NAME</H2><PRE>
51        <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
52
53
54 </PRE>
55 <H2>SYNOPSIS</H2><PRE>
56        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
57
58
59 </PRE>
60 <H2>DESCRIPTION</H2><PRE>
61        The  <STRONG>ncurses</STRONG>  library  routines  give the user a terminal-
62        independent method of updating character screens with rea-
63        sonable   optimization.    This  implementation  is  ``new
64        curses'' (ncurses) and is  the  approved  replacement  for
65        4.4BSD  classic curses, which has been discontinued.  This
66        describes <STRONG>ncurses</STRONG> version 5.6 (patch 20081011).
67
68        The <STRONG>ncurses</STRONG> library emulates  the  <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  library  of
69        System  V  Release  4  UNIX,  and XPG4 (X/Open Portability
70        Guide) curses (also known as XSI curses).  XSI stands  for
71        X/Open  System  Interfaces Extension.  The <STRONG>ncurses</STRONG> library
72        is freely redistributable  in  source  form.   Differences
73        from  the  SVr4 curses are summarized under the <STRONG>EXTENSIONS</STRONG>
74        and <STRONG>PORTABILITY</STRONG> sections below and described in detail  in
75        the  respective  <STRONG>EXTENSIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG> sections
76        of individual man pages.
77
78        The <STRONG>ncurses</STRONG> library also provides many useful  extensions,
79        i.e.,  features  which  cannot  be implemented by a simple
80        add-on library but which require access to  the  internals
81        of the library.
82
83        A  program  using  these  routines must be linked with the
84        <STRONG>-lncurses</STRONG> option, or (if it has been generated)  with  the
85        debugging  library  <STRONG>-lncurses_g</STRONG>.   (Your system integrator
86        may also have installed these libraries  under  the  names
87        <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.)  The ncurses_g library generates
88        trace logs (in a file called 'trace' in the current direc-
89        tory)  that describe curses actions.  See also the section
90        on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
91
92        The <STRONG>ncurses</STRONG> package supports: overall screen,  window  and
93        pad manipulation; output to windows and pads; reading ter-
94        minal input; control over terminal and  <STRONG>curses</STRONG>  input  and
95        output  options; environment query routines; color manipu-
96        lation; use of soft label keys; terminfo capabilities; and
97        access to low-level terminal-manipulation routines.
98
99        The  library uses the locale which the calling program has
100        initialized.  That is normally done with <STRONG>setlocale</STRONG>:
101
102              <STRONG>setlocale(LC_ALL,</STRONG> <STRONG>"");</STRONG>
103
104        If the locale is not initialized, the library assumes that
105        characters  are  printable  as in ISO-8859-1, to work with
106        certain legacy programs.  You should initialize the locale
107        and  not  rely on specific details of the library when the
108        locale has not been setup.
109
110        The function <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> must be called to initial-
111        ize the library before any of the other routines that deal
112        with windows and screens are  used.   The  routine  <STRONG>endwin</STRONG>
113        must be called before exiting.
114
115        To  get  character-at-a-time  input  without echoing (most
116        interactive, screen oriented programs want this), the fol-
117        lowing sequence should be used:
118
119              <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
120
121        Most programs would additionally use the sequence:
122
123              <STRONG>nonl();</STRONG>
124              <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
125              <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
126
127        Before  a <STRONG>curses</STRONG> program is run, the tab stops of the ter-
128        minal should be set and  its  initialization  strings,  if
129        defined,  must  be  output.  This can be done by executing
130        the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
131        <STRONG>TERM</STRONG>  has  been  exported.  <STRONG>tset(1)</STRONG> is usually responsible
132        for doing this.  [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
133
134        The <STRONG>ncurses</STRONG> library permits manipulation  of  data  struc-
135        tures,  called  <EM>windows</EM>,  which  can be thought of as two-
136        dimensional arrays of characters representing all or  part
137        of a CRT screen.  A default window called <STRONG>stdscr</STRONG>, which is
138        the size of the terminal screen, is supplied.  Others  may
139        be created with <STRONG>newwin</STRONG>.
140
141        Note  that  <STRONG>curses</STRONG>  does  not  handle overlapping windows,
142        that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library.  This means that you
143        can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win-
144        dows and not using <STRONG>stdscr</STRONG> at all.   Mixing  the  two  will
145        result in unpredictable, and undesired, effects.
146
147        Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
148        These  data  structures  are  manipulated  with   routines
149        described  here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
150        Among those, the most basic routines are <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.
151        More  general versions of these routines are included with
152        names beginning with <STRONG>w</STRONG>, allowing the  user  to  specify  a
153        window.   The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
154
155        After using routines to manipulate a  window,  <STRONG>refresh</STRONG>  is
156        called,  telling <STRONG>curses</STRONG> to make the user's CRT screen look
157        like <STRONG>stdscr</STRONG>.  The characters in a window are  actually  of
158        type  <STRONG>chtype</STRONG>, (character and attribute data) so that other
159        information about the character may also  be  stored  with
160        each character.
161
162        Special  windows  called  <EM>pads</EM>  may  also  be manipulated.
163        These are windows which are not constrained to the size of
164        the  screen and whose contents need not be completely dis-
165        played.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
166
167        In addition to drawing characters  on  the  screen,  video
168        attributes  and colors may be supported, causing the char-
169        acters to show up in such modes as underlined, in  reverse
170        video,  or in color on terminals that support such display
171        enhancements.  Line drawing characters may be specified to
172        be  output.   On  input,  <STRONG>curses</STRONG> is also able to translate
173        arrow and function keys  that  transmit  escape  sequences
174        into  single  values.   The video attributes, line drawing
175        characters,  and  input  values  use  names,  defined   in
176        <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
177
178        If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
179        if the program is executing in a window environment,  line
180        and  column  information  in the environment will override
181        information read by <EM>terminfo</EM>.  This would affect a program
182        running  in an AT&amp;T 630 layer, for example, where the size
183        of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
184
185        If the environment variable <STRONG>TERMINFO</STRONG> is defined, any  pro-
186        gram  using  <STRONG>curses</STRONG> checks for a local terminal definition
187        before checking in the standard place.   For  example,  if
188        <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini-
189        tion is found in
190
191              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
192
193        (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
194        creation  of  huge  directories.)  However, if <STRONG>TERMINFO</STRONG> is
195        set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
196
197              <STRONG>$HOME/myterms/a/att4424</STRONG>,
198
199        and if that fails, it then checks
200
201              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
202
203        This is useful for developing experimental definitions  or
204        when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
205        able.
206
207        The integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined  in
208        <STRONG>&lt;curses.h&gt;</STRONG>  and will be filled in by <STRONG>initscr</STRONG> with the size
209        of the screen.  The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
210        ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
211
212        The  <STRONG>curses</STRONG>  routines  also  define  the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
213        <STRONG>curscr</STRONG> which is used for certain low-level operations like
214        clearing  and  redrawing a screen containing garbage.  The
215        <STRONG>curscr</STRONG> can be used in only a few routines.
216
217    <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
218        Many <STRONG>curses</STRONG> routines have two or more versions.  The  rou-
219        tines prefixed with <STRONG>w</STRONG> require a window argument.  The rou-
220        tines prefixed with <STRONG>p</STRONG> require a pad argument.  Those with-
221        out a prefix generally use <STRONG>stdscr</STRONG>.
222
223        The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
224        to move to before performing the appropriate action.   The
225        <STRONG>mv</STRONG>  routines  imply  a call to <STRONG>move</STRONG> before the call to the
226        other routine.  The coordinate <EM>y</EM> always refers to the  row
227        (of  the  window), and <EM>x</EM> always refers to the column.  The
228        upper left-hand corner is always (0,0), not (1,1).
229
230        The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
231        and  <EM>x</EM>  and  <EM>y</EM> coordinates.  The window argument is always
232        specified before the coordinates.
233
234        In each case, <EM>win</EM> is the window affected, and <EM>pad</EM>  is  the
235        pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG>
236        <STRONG>DOW</STRONG>.
237
238        Option setting routines require a Boolean flag <EM>bf</EM> with the
239        value  <STRONG>TRUE</STRONG>  or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>.  Most of
240        the data types used in the library routines, such as  <STRONG>WIN-</STRONG>
241        <STRONG>DOW</STRONG>,  <STRONG>SCREEN</STRONG>,  <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in <STRONG>&lt;curses.h&gt;</STRONG>.
242        Types used for the terminfo routines such as <STRONG>TERMINAL</STRONG>  are
243        defined in <STRONG>&lt;term.h&gt;</STRONG>.
244
245        This  manual  page describes functions which may appear in
246        any configuration of the library.  There  are  two  common
247        configurations of the library:
248
249               ncurses
250                    the  "normal"  library,  which  handles  8-bit
251                    characters.  The normal (8-bit) library stores
252                    characters  combined with attributes in <STRONG>chtype</STRONG>
253                    data.
254
255                    Attributes alone (no corresponding  character)
256                    may  be  stored  in  <STRONG>chtype</STRONG>  or the equivalent
257                    <STRONG>attr_t</STRONG> data.  In  either  case,  the  data  is
258                    stored in something like an integer.
259
260                    Each  cell  (row  and  column)  in a <STRONG>WINDOW</STRONG> is
261                    stored as a <STRONG>chtype</STRONG>.
262
263               ncursesw
264                    the so-called "wide"  library,  which  handles
265                    multibyte   characters  (See  the  section  on
266                    <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>).  The "wide" library
267                    includes  all  of  the calls from the "normal"
268                    library.  It adds about one third  more  calls
269                    using data types which store multibyte charac-
270                    ters:
271
272                    <STRONG>cchar_t</STRONG>
273                         corresponds to <STRONG>chtype</STRONG>.  However it  is  a
274                         structure,  because  more  data is stored
275                         than can fit into an integer.  The  char-
276                         acters are large enough to require a full
277                         integer value - and  there  may  be  more
278                         than  one  character per cell.  The video
279                         attributes and color are stored in  sepa-
280                         rate fields of the structure.
281
282                         Each cell (row and column) in a <STRONG>WINDOW</STRONG> is
283                         stored as a <STRONG>cchar_t</STRONG>.
284
285                    <STRONG>wchar_t</STRONG>
286                         stores a "wide" character.  Like  <STRONG>chtype</STRONG>,
287                         this may be an integer.
288
289                    <STRONG>wint_t</STRONG>
290                         stores  a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same,
291                         though both may have the same size.
292
293                    The  "wide"  library  provides  new  functions
294                    which  are analogous to functions in the "nor-
295                    mal" library.  There is  a  naming  convention
296                    which  relates  many  of the normal/wide vari-
297                    ants: a "_w" is inserted into the  name.   For
298                    example, <STRONG>waddch</STRONG> becomes <STRONG>wadd_wch</STRONG>.
299
300
301    <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
302        The following table lists each <STRONG>curses</STRONG> routine and the name
303        of the manual page on which  it  is  described.   Routines
304        flagged  with  `*'  are ncurses-specific, not described by
305        XPG4 or present in SVr4.
306
307
308               <STRONG>curses</STRONG> Routine Name     Manual Page Name
309               --------------------------------------------
310               COLOR_PAIR              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
311               PAIR_NUMBER             <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
312               _nc_tracebits           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
313
314               _traceattr              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
315               _traceattr2             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
316               _tracechar              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
317               _tracechtype            <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
318               _tracechtype2           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
319               _tracedump              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
320               _tracef                 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
321               _tracemouse             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
322               add_wch                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
323               add_wchnstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
324               add_wchstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
325               addch                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
326               addchnstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
327               addchstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
328               addnstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
329               addnwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
330               addstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
331               addwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
332               assume_default_colors   <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
333               attr_get                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
334               attr_off                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
335               attr_on                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
336               attr_set                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
337               attroff                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
338               attron                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
339               attrset                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
340               baudrate                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
341               beep                    <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
342               bkgd                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
343               bkgdset                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
344               bkgrnd                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
345               bkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
346               border                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
347               border_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
348               box                     <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
349               box_set                 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
350               can_change_color        <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
351               cbreak                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
352               chgat                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
353               clear                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
354               clearok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
355               clrtobot                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
356               clrtoeol                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
357               color_content           <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
358               color_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
359               copywin                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
360               curs_set                <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
361               curses_version          <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
362               def_prog_mode           <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
363               def_shell_mode          <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
364               define_key              <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
365               del_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
366               delay_output            <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
367               delch                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
368               deleteln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
369               delscreen               <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
370               delwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
371               derwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
372               doupdate                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
373               dupwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
374               echo                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
375               echo_wchar              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
376               echochar                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
377               endwin                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
378               erase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
379
380               erasechar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
381               erasewchar              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
382               filter                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
383               flash                   <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
384               flushinp                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
385               get_wch                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
386               get_wstr                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
387               getattrs                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
388               getbegx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
389               getbegy                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
390               getbegyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
391               getbkgd                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
392               getbkgrnd               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
393               getcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
394               getch                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
395               getcurx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
396               getcury                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
397               getmaxx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
398               getmaxy                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
399               getmaxyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
400               getmouse                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
401               getn_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
402               getnstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
403               getparx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
404               getpary                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
405               getparyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
406               getstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
407               getsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
408               getwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
409               getyx                   <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
410               halfdelay               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
411               has_colors              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
412               has_ic                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
413               has_il                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
414               has_key                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
415               hline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
416               hline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
417               idcok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
418               idlok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
419               immedok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
420               in_wch                  <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
421               in_wchnstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
422               in_wchstr               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
423               inch                    <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
424               inchnstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
425               inchstr                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
426               init_color              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
427               init_pair               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
428               initscr                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
429               innstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
430               innwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
431               ins_nwstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
432               ins_wch                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
433               ins_wstr                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
434               insch                   <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
435               insdelln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
436               insertln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
437               insnstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
438               insstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
439               instr                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
440               intrflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
441               inwstr                  <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
442               is_cleared              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
443               is_idcok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
444               is_idlok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
445
446               is_immedok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
447               is_keypad               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
448               is_leaveok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
449               is_linetouched          <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
450               is_nodelay              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
451               is_notimeout            <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
452               is_scrollok             <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
453               is_syncok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
454               is_term_resized         <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
455               is_wintouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
456               isendwin                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
457               key_defined             <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
458               key_name                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
459               keybound                <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
460               keyname                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
461               keyok                   <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
462               keypad                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
463               killchar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
464               killwchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
465               leaveok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
466               longname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
467               mcprint                 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
468               meta                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
469               mouse_trafo             <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
470               mouseinterval           <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
471               mousemask               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
472               move                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
473               mvadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
474               mvadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
475               mvadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
476               mvaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
477               mvaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
478               mvaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
479               mvaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
480               mvaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
481               mvaddstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
482               mvaddwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
483               mvchgat                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
484               mvcur                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
485               mvdelch                 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
486               mvderwin                <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
487               mvget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
488               mvget_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
489               mvgetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
490               mvgetn_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
491               mvgetnstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
492               mvgetstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
493               mvhline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
494               mvhline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
495               mvin_wch                <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
496               mvin_wchnstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
497               mvin_wchstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
498               mvinch                  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
499               mvinchnstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
500               mvinchstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
501               mvinnstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
502               mvinnwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
503               mvins_nwstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
504               mvins_wch               <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
505               mvins_wstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
506               mvinsch                 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
507               mvinsnstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
508               mvinsstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
509               mvinstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
510               mvinwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
511
512               mvprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
513               mvscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
514               mvvline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
515               mvvline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
516               mvwadd_wch              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
517               mvwadd_wchnstr          <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
518               mvwadd_wchstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
519               mvwaddch                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
520               mvwaddchnstr            <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
521               mvwaddchstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
522               mvwaddnstr              <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
523               mvwaddnwstr             <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
524               mvwaddstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
525               mvwaddwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
526               mvwchgat                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
527               mvwdelch                <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
528               mvwget_wch              <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
529               mvwget_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
530               mvwgetch                <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
531               mvwgetn_wstr            <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
532               mvwgetnstr              <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
533               mvwgetstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
534               mvwhline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
535               mvwhline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
536               mvwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
537               mvwin_wch               <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
538               mvwin_wchnstr           <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
539               mvwin_wchstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
540               mvwinch                 <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
541               mvwinchnstr             <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
542               mvwinchstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
543               mvwinnstr               <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
544               mvwinnwstr              <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
545               mvwins_nwstr            <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
546               mvwins_wch              <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
547               mvwins_wstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
548               mvwinsch                <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
549               mvwinsnstr              <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
550               mvwinsstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
551               mvwinstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
552               mvwinwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
553               mvwprintw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
554               mvwscanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
555               mvwvline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
556               mvwvline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
557               napms                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
558               newpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
559               newterm                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
560               newwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
561               nl                      <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
562               nocbreak                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
563               nodelay                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
564               noecho                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
565               nofilter                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
566               nonl                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
567               noqiflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
568               noraw                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
569               notimeout               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
570               overlay                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
571               overwrite               <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
572               pair_content            <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
573               pechochar               <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
574               pnoutrefresh            <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
575               prefresh                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
576               printw                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
577
578               putp                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
579               putwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
580               qiflush                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
581               raw                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
582               redrawwin               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
583               refresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
584               reset_prog_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
585               reset_shell_mode        <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
586               resetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
587               resizeterm              <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
588               restartterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
589               ripoffline              <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
590               savetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
591               scanw                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
592               scr_dump                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
593               scr_init                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
594               scr_restore             <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
595               scr_set                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
596               scrl                    <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
597               scroll                  <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
598               scrollok                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
599               set_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
600               set_term                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
601               setcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
602               setscrreg               <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
603               setsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
604               setterm                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
605               setupterm               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
606               slk_attr                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
607               slk_attr_off            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
608               slk_attr_on             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
609               slk_attr_set            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
610               slk_attroff             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
611               slk_attron              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
612               slk_attrset             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
613               slk_clear               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
614               slk_color               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
615               slk_init                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
616               slk_label               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
617               slk_noutrefresh         <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
618               slk_refresh             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
619               slk_restore             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
620               slk_set                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
621               slk_touch               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
622               standend                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
623               standout                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
624               start_color             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
625               subpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
626               subwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
627               syncok                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
628               term_attrs              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
629               termattrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
630               termname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
631               tgetent                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
632               tgetflag                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
633               tgetnum                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
634               tgetstr                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
635               tgoto                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
636               tigetflag               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
637               tigetnum                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
638               tigetstr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
639               timeout                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
640               touchline               <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
641               touchwin                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
642               tparm                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
643
644               tputs                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
645               tputs                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
646               trace                   <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
647               typeahead               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
648               unctrl                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
649               unget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
650               ungetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
651               ungetmouse              <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
652               untouchwin              <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
653               use_default_colors      <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
654               use_env                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
655               use_extended_names      <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
656               use_legacy_coding       <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
657               vid_attr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
658               vid_puts                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
659               vidattr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
660               vidputs                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
661               vline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
662               vline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
663               vw_printw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
664               vw_scanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
665               vwprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
666               vwscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
667               wadd_wch                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
668               wadd_wchnstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
669               wadd_wchstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
670               waddch                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
671               waddchnstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
672               waddchstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
673               waddnstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
674               waddnwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
675               waddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
676               waddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
677               wattr_get               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
678               wattr_off               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
679               wattr_on                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
680               wattr_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
681               wattroff                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
682               wattron                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
683               wattrset                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
684               wbkgd                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
685               wbkgdset                <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
686               wbkgrnd                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
687               wbkgrndset              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
688               wborder                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
689               wborder_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
690               wchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
691               wclear                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
692               wclrtobot               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
693               wclrtoeol               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
694               wcolor_set              <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
695               wcursyncup              <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
696               wdelch                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
697               wdeleteln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
698               wecho_wchar             <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
699               wechochar               <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
700               wenclose                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
701               werase                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
702               wget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
703               wget_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
704               wgetbkgrnd              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
705               wgetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
706               wgetn_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
707               wgetnstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
708               wgetstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
709
710               whline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
711               whline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
712               win_wch                 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
713               win_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
714               win_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
715               winch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
716               winchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
717               winchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
718               winnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
719               winnwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
720               wins_nwstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
721               wins_wch                <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
722               wins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
723               winsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
724               winsdelln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
725               winsertln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
726               winsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
727               winsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
728               winstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
729               winwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
730               wmouse_trafo            <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
731               wmove                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
732               wnoutrefresh            <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
733               wprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
734               wredrawln               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
735               wrefresh                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
736               wresize                 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
737               wscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
738               wscrl                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
739               wsetscrreg              <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
740               wstandend               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
741               wstandout               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
742               wsyncdown               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
743               wsyncup                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
744               wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
745               wtouchln                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
746               wunctrl                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
747               wvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
748               wvline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
749
750
751 </PRE>
752 <H2>RETURN VALUE</H2><PRE>
753        Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
754        and  an  integer value other than <STRONG>ERR</STRONG> upon successful com-
755        pletion, unless otherwise noted in  the  routine  descrip-
756        tions.
757
758        All  macros  return  the  value  of  the <STRONG>w</STRONG> version, except
759        <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>.  The
760        return  values  of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
761        and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
762        as the right-hand side of assignment statements).
763
764        Routines that return pointers return <STRONG>NULL</STRONG> on error.
765
766
767 </PRE>
768 <H2>ENVIRONMENT</H2><PRE>
769        The following environment symbols are useful for customiz-
770        ing the runtime behavior of the <STRONG>ncurses</STRONG> library.  The most
771        important ones have been already discussed in detail.
772
773        BAUDRATE
774             The  debugging library checks this environment symbol
775             when the application has redirected output to a file.
776             The  symbol's numeric value is used for the baudrate.
777             If no value is found, <STRONG>ncurses</STRONG> uses 9600.  This allows
778             testers  to construct repeatable test-cases that take
779             into account costs that depend on baudrate.
780
781        CC   When set, change occurrences of the command_character
782             (i.e.,  the  <STRONG>cmdch</STRONG> capability) of the loaded terminfo
783             entries to the value of this symbol.  Very  few  ter-
784             minfo entries provide this feature.
785
786        COLUMNS
787             Specify  the  width  of  the  screen  in  characters.
788             Applications running in a windowing environment  usu-
789             ally  are  able  to obtain the width of the window in
790             which they are executing.   If  neither  the  <STRONG>COLUMNS</STRONG>
791             value  nor  the  terminal's screen size is available,
792             <STRONG>ncurses</STRONG> uses the size which may be specified  in  the
793             terminfo database (i.e., the <STRONG>cols</STRONG> capability).
794
795             It  is  important that your application use a correct
796             size for the screen.  This  is  not  always  possible
797             because  your  application  may  be running on a host
798             which does not honor NAWS (Negotiations About  Window
799             Size),  or  because  you  are  temporarily running as
800             another user.  However, setting <STRONG>COLUMNS</STRONG> and/or  <STRONG>LINES</STRONG>
801             overrides  the  library's  use  of  the  screen  size
802             obtained from the operating system.
803
804             Either <STRONG>COLUMNS</STRONG> or  <STRONG>LINES</STRONG>  symbols  may  be  specified
805             independently.   This  is mainly useful to circumvent
806             legacy misfeatures of  terminal  descriptions,  e.g.,
807             xterm which commonly specifies a 65 line screen.  For
808             best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be  specified
809             in a terminal description for terminals which are run
810             as emulations.
811
812             Use the <STRONG>use_env</STRONG> function to disable all use of exter-
813             nal environment (including system calls) to determine
814             the screen size.
815
816        ESCDELAY
817             Specifies the total time, in milliseconds, for  which
818             ncurses  will  await  a  character  sequence, e.g., a
819             function key.  The default value, 1000  milliseconds,
820             is enough for most uses.  However, it is made a vari-
821             able to accommodate unusual applications.
822
823             The most common instance where you may wish to change
824             this  value is to work with slow hosts, e.g., running
825             on a network.  If the  host  cannot  read  characters
826             rapidly  enough,  it  will have the same effect as if
827             the terminal did not send characters rapidly  enough.
828             The library will still see a timeout.
829
830             Note  that xterm mouse events are built up from char-
831             acter sequences received from  the  xterm.   If  your
832             application makes heavy use of multiple-clicking, you
833             may wish to lengthen this default value  because  the
834             timeout  applies to the composed multi-click event as
835             well as the individual clicks.
836
837             In addition to the environment variable, this  imple-
838             mentation  provides  a  global variable with the same
839             name.  Portable applications should not rely upon the
840             presence  of ESCDELAY in either form, but setting the
841             environment variable rather than the global  variable
842             does  not  create problems when compiling an applica-
843             tion.
844
845        HOME Tells <STRONG>ncurses</STRONG> where your home directory is.  That  is
846             where  it  may  read  and  write  auxiliary  terminal
847             descriptions:
848
849             $HOME/.termcap
850             $HOME/.terminfo
851
852        LINES
853             Like COLUMNS, specify the height  of  the  screen  in
854             characters.   See COLUMNS for a detailed description.
855
856        MOUSE_BUTTONS_123
857             This applies only to the OS/2 EMX port.  It specifies
858             the  order  of  buttons on the mouse.  OS/2 numbers a
859             3-button mouse inconsistently from other platforms:
860
861             1 = left
862             2 = right
863             3 = middle.
864
865             This symbol lets you customize the mouse.  The symbol
866             must  be three numeric digits 1-3 in any order, e.g.,
867             123 or 321.  If it is  not  specified,  <STRONG>ncurses</STRONG>  uses
868             132.
869
870        NCURSES_ASSUMED_COLORS
871             Override  the  compiled-in assumption that the termi-
872             nal's  default   colors   are   white-on-black   (see
873             <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>).   You may set the foreground and
874             background color values with this  environment  vari-
875             able  by  proving  a 2-element list: foreground,back-
876             ground.  For example, to tell ncurses to  not  assume
877             anything  about  the colors, set this to "-1,-1".  To
878             make it green-on-black, set it to "2,0".   Any  posi-
879             tive value from zero to the terminfo <STRONG>max_colors</STRONG> value
880             is allowed.
881
882        NCURSES_GPM_TERMS
883             This applies only to ncurses configured  to  use  the
884             GPM interface.
885
886             If present, the environment variable is a list of one
887             or more terminal names against which the  TERM  envi-
888             ronment  variable is matched.  Setting it to an empty
889             value disables the GPM interface; using the  built-in
890             support for xterm, etc.
891
892             If  the  environment variable is absent, ncurses will
893             attempt to open GPM if TERM contains "linux".
894
895        NCURSES_NO_HARD_TABS
896             <STRONG>Ncurses</STRONG> may use tabs as part of the  cursor  movement
897             optimization.   In  some  cases, your terminal driver
898             may not handle these properly.  Set this  environment
899             variable to disable the feature.  You can also adjust
900             your <STRONG>stty</STRONG> settings to avoid the problem.
901
902        NCURSES_NO_MAGIC_COOKIES
903             Some  terminals  use  a  magic-cookie  feature  which
904             requires  special  handling  to make highlighting and
905             other video attributes  display  properly.   You  can
906             suppress  the  highlighting entirely for these termi-
907             nals by setting this environment variable.
908
909        NCURSES_NO_PADDING
910             Most of the terminal  descriptions  in  the  terminfo
911             database  are  written for real "hardware" terminals.
912             Many people use terminal emulators  which  run  in  a
913             windowing    environment    and    use   curses-based
914             applications.  Terminal emulators can  duplicate  all
915             of  the important aspects of a hardware terminal, but
916             they do not have the  same  limitations.   The  chief
917             limitation of a hardware terminal from the standpoint
918             of your application is the  management  of  dataflow,
919             i.e.,  timing.   Unless a hardware terminal is inter-
920             faced into a terminal concentrator (which  does  flow
921             control),   it  (or  your  application)  must  manage
922             dataflow, preventing overruns.  The cheapest solution
923             (no  hardware cost) is for your program to do this by
924             pausing  after  operations  that  the  terminal  does
925             slowly, such as clearing the display.
926
927             As  a  result,  many terminal descriptions (including
928             the vt100) have delay times embedded.  You  may  wish
929             to  use  these  descriptions, but not want to pay the
930             performance penalty.
931
932             Set the NCURSES_NO_PADDING symbol to disable all  but
933             mandatory  padding.   Mandatory  padding is used as a
934             part of special control sequences such as <EM>flash</EM>.
935
936        NCURSES_NO_SETBUF
937             Normally <STRONG>ncurses</STRONG> enables buffered output during  ter-
938             minal  initialization.   This  is  done  (as  in SVr4
939             curses) for performance reasons.   For  testing  pur-
940             poses, both of <STRONG>ncurses</STRONG> and certain applications, this
941             feature    is    made    optional.     Setting    the
942             NCURSES_NO_SETBUF variable disables output buffering,
943             leaving the output  in  the  original  (usually  line
944             buffered) mode.
945
946        NCURSES_NO_UTF8_ACS
947             During initialization, the <STRONG>ncurses</STRONG> library checks for
948             special cases where VT100 line-drawing (and the  cor-
949             responding   alternate  character  set  capabilities)
950             described in the terminfo are known  to  be  missing.
951             Specifically,  when  running  in  a UTF-8 locale, the
952             Linux console emulator and  the  GNU  screen  program
953             ignore  these.   Ncurses  checks the TERM environment
954             variable for these.  For  other  special  cases,  you
955             should  set  this  environment  variable.  Doing this
956             tells ncurses to use Unicode values which  correspond
957             to the VT100 line-drawing glyphs.  That works for the
958             special cases cited, and is likely to work for termi-
959             nal emulators.
960
961             When  setting  this  variable, you should set it to a
962             nonzero value.  Setting it to zero (or to  a  nonnum-
963             ber) disables the special check for Linux and screen.
964
965        NCURSES_TRACE
966             During initialization, the <STRONG>ncurses</STRONG> debugging  library
967             checks  the  NCURSES_TRACE symbol.  If it is defined,
968             to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function,
969             using that value as the argument.
970
971             The  argument  values, which are defined in <STRONG>curses.h</STRONG>,
972             provide several types of information.   When  running
973             with  traces enabled, your application will write the
974             file <STRONG>trace</STRONG> to the current directory.
975
976        TERM Denotes your terminal type.  Each  terminal  type  is
977             distinct, though many are similar.
978
979        TERMCAP
980             If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
981             <EM>cap</EM> support, <STRONG>ncurses</STRONG>  will  check  for  a  terminal's
982             description in termcap form if it is not available in
983             the terminfo database.
984
985             The  TERMCAP  symbol  contains  either   a   terminal
986             description  (with  newlines stripped out), or a file
987             name telling where the  information  denoted  by  the
988             TERM  symbol  exists.   In  either  case,  setting it
989             directs <STRONG>ncurses</STRONG> to ignore the usual  place  for  this
990             information, e.g., /etc/termcap.
991
992        TERMINFO
993             Overrides the directory in which <STRONG>ncurses</STRONG> searches for
994             your terminal description.  This is the simplest, but
995             not  the  only way to change the list of directories.
996             The complete list of directories in order follows:
997
998             -  the last directory to which <STRONG>ncurses</STRONG> wrote, if any,
999                is searched first
1000
1001             -  the directory specified by the TERMINFO symbol
1002
1003             -  $HOME/.terminfo
1004
1005             -  directories listed in the TERMINFO_DIRS symbol
1006
1007             -  one or more directories whose names are configured
1008                and  compiled  into  the  ncurses  library,  e.g.,
1009                /usr/share/terminfo
1010
1011        TERMINFO_DIRS
1012             Specifies  a list of directories to search for termi-
1013             nal descriptions.  The list is  separated  by  colons
1014             (i.e.,  ":") on Unix, semicolons on OS/2 EMX.  All of
1015             the terminal descriptions are in terminfo form, which
1016             makes  a  subdirectory  named for the first letter of
1017             the terminal names therein.
1018
1019        TERMPATH
1020             If TERMCAP does not hold a  file  name  then  <STRONG>ncurses</STRONG>
1021             checks  the TERMPATH symbol.  This is a list of file-
1022             names separated by spaces or colons  (i.e.,  ":")  on
1023             Unix, semicolons on OS/2 EMX.  If the TERMPATH symbol
1024             is not set, <STRONG>ncurses</STRONG> looks in the files  /etc/termcap,
1025             /usr/share/misc/termcap  and  $HOME/.termcap, in that
1026             order.
1027
1028        The library may be configured to disregard  the  following
1029        variables  when  the current user is the superuser (root),
1030        or if the application uses setuid or  setgid  permissions:
1031        $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
1032
1033
1034 </PRE>
1035 <H2>ALTERNATE CONFIGURATIONS</H2><PRE>
1036        Several  different  configurations are possible, depending
1037        on  the  configure  script  options  used  when   building
1038        <STRONG>ncurses</STRONG>.   There  are a few main options whose effects are
1039        visible to the applications developer using <STRONG>ncurses</STRONG>:
1040
1041        --disable-overwrite
1042             The standard include for <STRONG>ncurses</STRONG> is as noted in  <STRONG>SYN-</STRONG>
1043             <STRONG>OPSIS</STRONG>:
1044
1045             <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
1046
1047             This  option is used to avoid filename conflicts when
1048             <STRONG>ncurses</STRONG> is not the main implementation of  curses  of
1049             the  computer.   If  <STRONG>ncurses</STRONG>  is  installed disabling
1050             overwrite, it puts its  headers  in  a  subdirectory,
1051             e.g.,
1052
1053             <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
1054
1055             It  also  omits a symbolic link which would allow you
1056             to use <STRONG>-lcurses</STRONG> to build executables.
1057
1058        --enable-widec
1059             The configure script renames the library and (if  the
1060             <STRONG>--disable-overwrite</STRONG>  option  is used) puts the header
1061             files  in  a  different  subdirectory.   All  of  the
1062             library  names  have  a  "w"  appended to them, i.e.,
1063             instead of
1064
1065             <STRONG>-lncurses</STRONG>
1066
1067             you link with
1068
1069             <STRONG>-lncursesw</STRONG>
1070
1071             You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
1072             piling  for  the  wide-character  library  to use the
1073             extended (wide-character)  functions.   The  <STRONG>curses.h</STRONG>
1074             file   which  is  installed  for  the  wide-character
1075             library is designed to be compatible with the  normal
1076             library's header.  Only the size of the <STRONG>WINDOW</STRONG> struc-
1077             ture differs, and very few applications require  more
1078             than  a  pointer  to  <STRONG>WINDOW</STRONG>s.   If  the  headers are
1079             installed  allowing  overwrite,  the   wide-character
1080             library's  headers should be installed last, to allow
1081             applications to be built using  either  library  from
1082             the same set of headers.
1083
1084        --with-shared
1085
1086        --with-normal
1087
1088        --with-debug
1089
1090        --with-profile
1091             The  shared  and normal (static) library names differ
1092             by their  suffixes,  e.g.,  <STRONG>libncurses.so</STRONG>  and  <STRONG>libn-</STRONG>
1093             <STRONG>curses.a</STRONG>.   The  debug  and profiling libraries add a
1094             "_g" and a "_p" to the root names respectively, e.g.,
1095             <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1096
1097        --with-trace
1098             The  <STRONG>trace</STRONG>  function  normally  resides  in the debug
1099             library, but it is sometimes useful to configure this
1100             in  the  shared  library.   Configure  scripts should
1101             check for the function's existence rather than assum-
1102             ing it is always in the debug library.
1103
1104
1105 </PRE>
1106 <H2>FILES</H2><PRE>
1107        /usr/share/tabset
1108             directory  containing  initialization  files  for the
1109             terminal capability database /usr/share/terminfo ter-
1110             minal capability database
1111
1112
1113 </PRE>
1114 <H2>SEE ALSO</H2><PRE>
1115        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>  and  related  pages whose names begin "curs_"
1116        for detailed routine descriptions.
1117
1118
1119 </PRE>
1120 <H2>EXTENSIONS</H2><PRE>
1121        The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
1122        (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
1123        cap file if the terminal setup code cannot find a terminfo
1124        entry  corresponding  to <STRONG>TERM</STRONG>.  Use of this feature is not
1125        recommended, as it essentially includes an entire  termcap
1126        compiler  in the <STRONG>ncurses</STRONG> startup code, at significant cost
1127        in core and startup cycles.
1128
1129        The <STRONG>ncurses</STRONG>  library  includes  facilities  for  capturing
1130        mouse  events on certain terminals (including xterm).  See
1131        the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1132
1133        The <STRONG>ncurses</STRONG> library includes facilities for responding  to
1134        window  resizing  events,  e.g., when running in an xterm.
1135        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
1136        details.   In addition, the library may be configured with
1137        a SIGWINCH handler.
1138
1139        The <STRONG>ncurses</STRONG> library extends the fixed set of function  key
1140        capabilities  of  terminals  by  allowing  the application
1141        designer to define additional key  sequences  at  runtime.
1142        See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> man-
1143        ual pages for details.
1144
1145        The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
1146        nals  which  implement the ISO-6429 SGR 39 and SGR 49 con-
1147        trols, which allow an application to reset the terminal to
1148        its  original  foreground and background colors.  From the
1149        users' perspective, the application is able to  draw  col-
1150        ored  text  on  a  background  whose color is set indepen-
1151        dently, providing better  control  over  color  contrasts.
1152        See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
1153
1154        The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
1155        application output to a printer attached to  the  terminal
1156        device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1157
1158
1159 </PRE>
1160 <H2>PORTABILITY</H2><PRE>
1161        The  <STRONG>ncurses</STRONG>  library is intended to be BASE-level confor-
1162        mant with XSI Curses.  The EXTENDED XSI Curses functional-
1163        ity (including color support) is supported.
1164
1165        A  small  number of local differences (that is, individual
1166        differences between the XSI Curses and <STRONG>ncurses</STRONG> calls)  are
1167        described  in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library man
1168        pages.
1169
1170        This implementation also contains several extensions:
1171
1172             The routine <STRONG>has_key</STRONG> is not part of XPG4,  nor  is  it
1173             present  in SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page
1174             for details.
1175
1176             The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor  is  it
1177             present  in  SVr4.   See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page
1178             for details.
1179
1180             The routines <STRONG>getmouse</STRONG>,  <STRONG>mousemask</STRONG>,  <STRONG>ungetmouse</STRONG>,  <STRONG>mou-</STRONG>
1181             <STRONG>seinterval</STRONG>,  and <STRONG>wenclose</STRONG> relating to mouse interfac-
1182             ing are not part of XPG4, nor  are  they  present  in
1183             SVr4.    See   the  <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>  manual  page  for
1184             details.
1185
1186             The routine <STRONG>mcprint</STRONG> was not present in  any  previous
1187             curses implementation.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual
1188             page for details.
1189
1190             The routine <STRONG>wresize</STRONG> is not part of XPG4,  nor  is  it
1191             present in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for
1192             details.
1193
1194             The WINDOW structure's internal details can be hidden
1195             from  application  programs.  See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for
1196             the discussion of <STRONG>is_scrollok</STRONG>, etc.
1197
1198        In historic curses versions, delays embedded in the  capa-
1199        bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
1200        delay bits in the UNIX tty driver.   In  this  implementa-
1201        tion,  all  padding  is  done  by sending NUL bytes.  This
1202        method is slightly more expensive, but narrows the  inter-
1203        face  to  the  UNIX kernel significantly and increases the
1204        package's portability correspondingly.
1205
1206
1207 </PRE>
1208 <H2>NOTES</H2><PRE>
1209        The header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes  the
1210        header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
1211
1212        If  standard  output from a <STRONG>ncurses</STRONG> program is re-directed
1213        to something which is not a tty, screen  updates  will  be
1214        directed to standard error.  This was an undocumented fea-
1215        ture of AT&amp;T System V Release 3 curses.
1216
1217
1218 </PRE>
1219 <H2>AUTHORS</H2><PRE>
1220        Zeyd M. Ben-Halim, Eric  S.  Raymond,  Thomas  E.  Dickey.
1221        Based on pcurses by Pavel Curtis.
1222
1223
1224
1225                                                             <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1226 </PRE>
1227 <HR>
1228 <ADDRESS>
1229 Man(1) output converted with
1230 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
1231 </ADDRESS>
1232 </BODY>
1233 </HTML>