]> ncurses.scripts.mit.edu Git - ncurses.git/blob - doc/html/man/ncurses.3x.html
ncurses 5.8 - patch 20110319
[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-2010,2011 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.103 2011/02/05 23:21:29 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.8 (patch 20110226).
67
68        The <STRONG>ncurses</STRONG> library emulates the curses library of  System
69        V  Release  4  UNIX,  and  XPG4 (X/Open Portability Guide)
70        curses (also known as XSI curses).  XSI stands for  X/Open
71        System  Interfaces  Extension.   The  <STRONG>ncurses</STRONG>  library  is
72        freely redistributable in source form.   Differences  from
73        the  SVr4  curses  are summarized under the <STRONG>EXTENSIONS</STRONG> and
74        <STRONG>PORTABILITY</STRONG> sections below and described in detail in  the
75        respective  <STRONG>EXTENSIONS</STRONG>,  <STRONG>PORTABILITY</STRONG>  and <STRONG>BUGS</STRONG> sections of
76        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_free_and_exit       <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
313
314               _nc_freeall             <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
315               _nc_tracebits           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
316               _traceattr              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
317               _traceattr2             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
318               _tracechar              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
319               _tracechtype            <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
320               _tracechtype2           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
321               _tracedump              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
322               _tracef                 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
323               _tracemouse             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
324               add_wch                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
325               add_wchnstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
326               add_wchstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
327               addch                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
328               addchnstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
329               addchstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
330               addnstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
331               addnwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
332               addstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
333               addwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
334               assume_default_colors   <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
335               attr_get                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
336               attr_off                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
337               attr_on                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
338               attr_set                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
339               attroff                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
340               attron                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
341               attrset                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
342               baudrate                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
343               beep                    <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
344               bkgd                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
345               bkgdset                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
346               bkgrnd                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
347               bkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
348               border                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
349               border_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
350               box                     <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
351               box_set                 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
352               can_change_color        <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
353               cbreak                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
354               chgat                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
355               clear                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
356               clearok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
357               clrtobot                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
358               clrtoeol                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
359               color_content           <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
360               color_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
361               copywin                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
362               curs_set                <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
363               curses_version          <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
364               def_prog_mode           <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
365               def_shell_mode          <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
366               define_key              <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
367               del_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
368               delay_output            <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
369               delch                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
370               deleteln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
371               delscreen               <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
372               delwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
373               derwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
374               doupdate                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
375               dupwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
376               echo                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
377               echo_wchar              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
378               echochar                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
379
380               endwin                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
381               erase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
382               erasechar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
383               erasewchar              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
384               filter                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
385               flash                   <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
386               flushinp                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
387               get_wch                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
388               get_wstr                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
389               getattrs                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
390               getbegx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
391               getbegy                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
392               getbegyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
393               getbkgd                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
394               getbkgrnd               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
395               getcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
396               getch                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
397               getcurx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
398               getcury                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
399               getmaxx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
400               getmaxy                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
401               getmaxyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
402               getmouse                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
403               getn_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
404               getnstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
405               getparx                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
406               getpary                 <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
407               getparyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
408               getstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
409               getsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
410               getwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
411               getyx                   <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
412               halfdelay               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
413               has_colors              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
414               has_ic                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
415               has_il                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
416               has_key                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
417               hline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
418               hline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
419               idcok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
420               idlok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
421               immedok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
422               in_wch                  <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
423               in_wchnstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
424               in_wchstr               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
425               inch                    <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
426               inchnstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
427               inchstr                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
428               init_color              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
429               init_pair               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
430               initscr                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
431               innstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
432               innwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
433               ins_nwstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
434               ins_wch                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
435               ins_wstr                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
436               insch                   <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
437               insdelln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
438               insertln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
439               insnstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
440               insstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
441               instr                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
442               intrflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
443               inwstr                  <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
444               is_cleared              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
445
446               is_idcok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
447               is_idlok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
448               is_immedok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
449               is_keypad               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
450               is_leaveok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
451               is_linetouched          <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
452               is_nodelay              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
453               is_notimeout            <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
454               is_scrollok             <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
455               is_syncok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
456               is_term_resized         <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
457               is_wintouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
458               isendwin                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
459               key_defined             <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
460               key_name                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
461               keybound                <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
462               keyname                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
463               keyok                   <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
464               keypad                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
465               killchar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
466               killwchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
467               leaveok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
468               longname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
469               mcprint                 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
470               meta                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
471               mouse_trafo             <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
472               mouseinterval           <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
473               mousemask               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
474               move                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
475               mvadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
476               mvadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
477               mvadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
478               mvaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
479               mvaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
480               mvaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
481               mvaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
482               mvaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
483               mvaddstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
484               mvaddwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
485               mvchgat                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
486               mvcur                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
487               mvdelch                 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
488               mvderwin                <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
489               mvget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
490               mvget_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
491               mvgetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
492               mvgetn_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
493               mvgetnstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
494               mvgetstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
495               mvhline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
496               mvhline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
497               mvin_wch                <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
498               mvin_wchnstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
499               mvin_wchstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
500               mvinch                  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
501               mvinchnstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
502               mvinchstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
503               mvinnstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
504               mvinnwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
505               mvins_nwstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
506               mvins_wch               <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
507               mvins_wstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
508               mvinsch                 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
509               mvinsnstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
510               mvinsstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
511
512               mvinstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
513               mvinwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
514               mvprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
515               mvscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
516               mvvline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
517               mvvline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
518               mvwadd_wch              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
519               mvwadd_wchnstr          <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
520               mvwadd_wchstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
521               mvwaddch                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
522               mvwaddchnstr            <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
523               mvwaddchstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
524               mvwaddnstr              <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
525               mvwaddnwstr             <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
526               mvwaddstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
527               mvwaddwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
528               mvwchgat                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
529               mvwdelch                <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
530               mvwget_wch              <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
531               mvwget_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
532               mvwgetch                <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
533               mvwgetn_wstr            <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
534               mvwgetnstr              <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
535               mvwgetstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
536               mvwhline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
537               mvwhline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
538               mvwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
539               mvwin_wch               <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
540               mvwin_wchnstr           <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
541               mvwin_wchstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
542               mvwinch                 <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
543               mvwinchnstr             <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
544               mvwinchstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
545               mvwinnstr               <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
546               mvwinnwstr              <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
547               mvwins_nwstr            <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
548               mvwins_wch              <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
549               mvwins_wstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
550               mvwinsch                <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
551               mvwinsnstr              <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
552               mvwinsstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
553               mvwinstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
554               mvwinwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
555               mvwprintw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
556               mvwscanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
557               mvwvline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
558               mvwvline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
559               napms                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
560               newpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
561               newterm                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
562               newwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
563               nl                      <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
564               nocbreak                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
565               nodelay                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
566               noecho                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
567               nofilter                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
568               nonl                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
569               noqiflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
570               noraw                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
571               notimeout               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
572               overlay                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
573               overwrite               <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
574               pair_content            <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
575               pechochar               <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
576               pnoutrefresh            <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
577
578               prefresh                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
579               printw                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
580               putp                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
581               putwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
582               qiflush                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
583               raw                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
584               redrawwin               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
585               refresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
586               reset_prog_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
587               reset_shell_mode        <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
588               resetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
589               resizeterm              <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
590               restartterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
591               ripoffline              <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
592               savetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
593               scanw                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
594               scr_dump                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
595               scr_init                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
596               scr_restore             <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
597               scr_set                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
598               scrl                    <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
599               scroll                  <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
600               scrollok                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
601               set_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
602               set_term                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
603               setcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
604               setscrreg               <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
605               setsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
606               setterm                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
607               setupterm               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
608               slk_attr                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
609               slk_attr_off            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
610               slk_attr_on             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
611               slk_attr_set            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
612               slk_attroff             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
613               slk_attron              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
614               slk_attrset             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
615               slk_clear               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
616               slk_color               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
617               slk_init                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
618               slk_label               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
619               slk_noutrefresh         <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
620               slk_refresh             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
621               slk_restore             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
622               slk_set                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
623               slk_touch               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
624               standend                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
625               standout                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
626               start_color             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
627               subpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
628               subwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
629               syncok                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
630               term_attrs              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
631               termattrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
632               termname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
633               tgetent                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
634               tgetflag                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
635               tgetnum                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
636               tgetstr                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
637               tgoto                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
638               tigetflag               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
639               tigetnum                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
640               tigetstr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
641               timeout                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
642               touchline               <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
643
644               touchwin                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
645               tparm                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
646               tputs                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
647               tputs                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
648               trace                   <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
649               typeahead               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
650               unctrl                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
651               unget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
652               ungetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
653               ungetmouse              <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
654               untouchwin              <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
655               use_default_colors      <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
656               use_env                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
657               use_extended_names      <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
658               use_legacy_coding       <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
659               vid_attr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
660               vid_puts                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
661               vidattr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
662               vidputs                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
663               vline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
664               vline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
665               vw_printw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
666               vw_scanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
667               vwprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
668               vwscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
669               wadd_wch                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
670               wadd_wchnstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
671               wadd_wchstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
672               waddch                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
673               waddchnstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
674               waddchstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
675               waddnstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
676               waddnwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
677               waddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
678               waddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
679               wattr_get               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
680               wattr_off               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
681               wattr_on                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
682               wattr_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
683               wattroff                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
684               wattron                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
685               wattrset                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
686               wbkgd                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
687               wbkgdset                <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
688               wbkgrnd                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
689               wbkgrndset              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
690               wborder                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
691               wborder_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
692               wchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
693               wclear                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
694               wclrtobot               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
695               wclrtoeol               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
696               wcolor_set              <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
697               wcursyncup              <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
698               wdelch                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
699               wdeleteln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
700               wecho_wchar             <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
701               wechochar               <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
702               wenclose                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
703               werase                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
704               wget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
705               wget_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
706               wgetbkgrnd              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
707               wgetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
708               wgetn_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
709
710               wgetnstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
711               wgetstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
712               whline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
713               whline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
714               win_wch                 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
715               win_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
716               win_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
717               winch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
718               winchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
719               winchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
720               winnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
721               winnwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
722               wins_nwstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
723               wins_wch                <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
724               wins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
725               winsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
726               winsdelln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
727               winsertln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
728               winsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
729               winsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
730               winstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
731               winwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
732               wmouse_trafo            <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
733               wmove                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
734               wnoutrefresh            <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
735               wprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
736               wredrawln               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
737               wrefresh                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
738               wresize                 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
739               wscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
740               wscrl                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
741               wsetscrreg              <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
742               wstandend               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
743               wstandout               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
744               wsyncdown               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
745               wsyncup                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
746               wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
747               wtouchln                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
748               wunctrl                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
749               wvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
750               wvline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
751
752
753 </PRE>
754 <H2>RETURN VALUE</H2><PRE>
755        Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
756        and  an  integer value other than <STRONG>ERR</STRONG> upon successful com-
757        pletion, unless otherwise noted in  the  routine  descrip-
758        tions.
759
760        All  macros  return  the  value  of  the <STRONG>w</STRONG> version, except
761        <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>.  The
762        return  values  of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
763        and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
764        as the right-hand side of assignment statements).
765
766        Routines that return pointers return <STRONG>NULL</STRONG> on error.
767
768
769 </PRE>
770 <H2>ENVIRONMENT</H2><PRE>
771        The following environment symbols are useful for customiz-
772        ing the runtime behavior of the <STRONG>ncurses</STRONG> library.  The most
773        important ones have been already discussed in detail.
774
775        BAUDRATE
776             The  debugging library checks this environment symbol
777             when the application has redirected output to a file.
778             The  symbol's numeric value is used for the baudrate.
779             If no value is found, <STRONG>ncurses</STRONG> uses 9600.  This allows
780             testers  to construct repeatable test-cases that take
781             into account costs that depend on baudrate.
782
783        CC   When set, change occurrences of the command_character
784             (i.e.,  the  <STRONG>cmdch</STRONG> capability) of the loaded terminfo
785             entries to the value of this symbol.  Very  few  ter-
786             minfo entries provide this feature.
787
788             Because  this  name is also used in development envi-
789             ronments to represent the C compiler's name,  <STRONG>ncurses</STRONG>
790             ignores it if it does not happen to be a single char-
791             acter.
792
793        COLUMNS
794             Specify  the  width  of  the  screen  in  characters.
795             Applications  running in a windowing environment usu-
796             ally are able to obtain the width of  the  window  in
797             which  they  are  executing.   If neither the <STRONG>COLUMNS</STRONG>
798             value nor the terminal's screen  size  is  available,
799             <STRONG>ncurses</STRONG>  uses  the size which may be specified in the
800             terminfo database (i.e., the <STRONG>cols</STRONG> capability).
801
802             It is important that your application use  a  correct
803             size  for  the  screen.   This is not always possible
804             because your application may be  running  on  a  host
805             which  does not honor NAWS (Negotiations About Window
806             Size), or because  you  are  temporarily  running  as
807             another  user.  However, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG>
808             overrides  the  library's  use  of  the  screen  size
809             obtained from the operating system.
810
811             Either  <STRONG>COLUMNS</STRONG>  or  <STRONG>LINES</STRONG>  symbols  may be specified
812             independently.  This is mainly useful  to  circumvent
813             legacy  misfeatures  of  terminal descriptions, e.g.,
814             xterm which commonly specifies a 65 line screen.  For
815             best  results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified
816             in a terminal description for terminals which are run
817             as emulations.
818
819             Use the <STRONG>use_env</STRONG> function to disable all use of exter-
820             nal environment (including system calls) to determine
821             the screen size.
822
823        ESCDELAY
824             Specifies  the total time, in milliseconds, for which
825             ncurses will await  a  character  sequence,  e.g.,  a
826             function  key.  The default value, 1000 milliseconds,
827             is enough for most uses.  However, it is made a vari-
828             able to accommodate unusual applications.
829
830             The most common instance where you may wish to change
831             this value is to work with slow hosts, e.g.,  running
832             on  a  network.   If  the host cannot read characters
833             rapidly enough, it will have the same  effect  as  if
834             the  terminal did not send characters rapidly enough.
835             The library will still see a timeout.
836
837             Note that xterm mouse events are built up from  char-
838             acter  sequences  received  from  the xterm.  If your
839             application makes heavy use of multiple-clicking, you
840             may  wish  to lengthen this default value because the
841             timeout applies to the composed multi-click event  as
842             well as the individual clicks.
843
844             In  addition to the environment variable, this imple-
845             mentation provides a global variable  with  the  same
846             name.  Portable applications should not rely upon the
847             presence of ESCDELAY in either form, but setting  the
848             environment  variable rather than the global variable
849             does not create problems when compiling  an  applica-
850             tion.
851
852        HOME Tells  <STRONG>ncurses</STRONG> where your home directory is.  That is
853             where  it  may  read  and  write  auxiliary  terminal
854             descriptions:
855
856             $HOME/.termcap
857             $HOME/.terminfo
858
859        LINES
860             Like  COLUMNS,  specify  the  height of the screen in
861             characters.  See COLUMNS for a detailed  description.
862
863        MOUSE_BUTTONS_123
864             This applies only to the OS/2 EMX port.  It specifies
865             the order of buttons on the mouse.   OS/2  numbers  a
866             3-button mouse inconsistently from other platforms:
867
868             1 = left
869             2 = right
870             3 = middle.
871
872             This symbol lets you customize the mouse.  The symbol
873             must be three numeric digits 1-3 in any order,  e.g.,
874             123  or  321.   If  it is not specified, <STRONG>ncurses</STRONG> uses
875             132.
876
877        NCURSES_ASSUMED_COLORS
878             Override the compiled-in assumption that  the  termi-
879             nal's   default   colors   are   white-on-black  (see
880             <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>).  You may set the foreground  and
881             background  color  values with this environment vari-
882             able by proving a  2-element  list:  foreground,back-
883             ground.   For  example, to tell ncurses to not assume
884             anything about the colors, set this to  "-1,-1".   To
885             make  it  green-on-black, set it to "2,0".  Any posi-
886             tive value from zero to the terminfo <STRONG>max_colors</STRONG> value
887             is allowed.
888
889        NCURSES_GPM_TERMS
890             This  applies  only  to ncurses configured to use the
891             GPM interface.
892
893             If present, the environment variable is a list of one
894             or  more  terminal names against which the TERM envi-
895             ronment variable is matched.  Setting it to an  empty
896             value  disables the GPM interface; using the built-in
897             support for xterm, etc.
898
899             If the environment variable is absent,  ncurses  will
900             attempt to open GPM if TERM contains "linux".
901
902        NCURSES_NO_HARD_TABS
903             <STRONG>Ncurses</STRONG>  may  use tabs as part of the cursor movement
904             optimization.  In some cases,  your  terminal  driver
905             may  not handle these properly.  Set this environment
906             variable to disable the feature.  You can also adjust
907             your <STRONG>stty</STRONG> settings to avoid the problem.
908
909        NCURSES_NO_MAGIC_COOKIES
910             Some  terminals  use  a  magic-cookie  feature  which
911             requires special handling to  make  highlighting  and
912             other  video  attributes  display  properly.  You can
913             suppress the highlighting entirely for  these  termi-
914             nals by setting this environment variable.
915
916        NCURSES_NO_PADDING
917             Most  of  the  terminal  descriptions in the terminfo
918             database are written for real  "hardware"  terminals.
919             Many  people  use  terminal  emulators which run in a
920             windowing environment and use  curses-based  applica-
921             tions.   Terminal  emulators can duplicate all of the
922             important aspects of a hardware terminal, but they do
923             not  have the same limitations.  The chief limitation
924             of a hardware terminal from the  standpoint  of  your
925             application is the management of dataflow, i.e., tim-
926             ing.  Unless a hardware terminal is interfaced into a
927             terminal  concentrator  (which does flow control), it
928             (or your application) must manage dataflow,  prevent-
929             ing  overruns.   The  cheapest  solution (no hardware
930             cost) is for your program to do this by pausing after
931             operations  that  the  terminal  does slowly, such as
932             clearing the display.
933
934             As a result, many  terminal  descriptions  (including
935             the  vt100)  have delay times embedded.  You may wish
936             to use these descriptions, but not want  to  pay  the
937             performance penalty.
938
939             Set  the NCURSES_NO_PADDING symbol to disable all but
940             mandatory padding.  Mandatory padding is  used  as  a
941             part of special control sequences such as <EM>flash</EM>.
942
943        NCURSES_NO_SETBUF
944             Normally  <STRONG>ncurses</STRONG> enables buffered output during ter-
945             minal initialization.   This  is  done  (as  in  SVr4
946             curses)  for  performance  reasons.  For testing pur-
947             poses, both of <STRONG>ncurses</STRONG> and certain applications, this
948             feature    is    made    optional.     Setting    the
949             NCURSES_NO_SETBUF variable disables output buffering,
950             leaving  the  output  in  the  original (usually line
951             buffered) mode.
952
953        NCURSES_NO_UTF8_ACS
954             During initialization, the <STRONG>ncurses</STRONG> library checks for
955             special  cases where VT100 line-drawing (and the cor-
956             responding  alternate  character  set   capabilities)
957             described  in  the  terminfo are known to be missing.
958             Specifically, when running in  a  UTF-8  locale,  the
959             Linux  console  emulator  and  the GNU screen program
960             ignore these.  Ncurses checks  the  TERM  environment
961             variable  for  these.   For  other special cases, you
962             should set this  environment  variable.   Doing  this
963             tells  ncurses to use Unicode values which correspond
964             to the VT100 line-drawing glyphs.  That works for the
965             special cases cited, and is likely to work for termi-
966             nal emulators.
967
968             When setting this variable, you should set  it  to  a
969             nonzero  value.   Setting it to zero (or to a nonnum-
970             ber) disables  the  special  check  for  "linux"  and
971             "screen".
972
973             As   an  alternative  to  the  environment  variable,
974             ncurses checks for an  extended  terminfo  capability
975             <STRONG>U8</STRONG>.   This  is a numeric capability which can be com-
976             piled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>.  For example
977
978             # linux console, if patched to provide working
979             # VT100 shift-in/shift-out, with corresponding font.
980             linux-vt100|linux console with VT100 line-graphics,
981                                  U8#0, use=linux,
982
983             # uxterm with vt100Graphics resource set to false
984             xterm-utf8|xterm relying on UTF-8 line-graphics,
985                                  U8#1, use=xterm,
986
987             The name "U8" is chosen to be two characters, to per-
988             mit  it  to be used by applications that use ncurses'
989             termcap interface.
990
991        NCURSES_TRACE
992             During initialization, the <STRONG>ncurses</STRONG> debugging  library
993             checks  the  NCURSES_TRACE symbol.  If it is defined,
994             to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function,
995             using that value as the argument.
996
997             The  argument  values, which are defined in <STRONG>curses.h</STRONG>,
998             provide several types of information.   When  running
999             with  traces enabled, your application will write the
1000             file <STRONG>trace</STRONG> to the current directory.
1001
1002        TERM Denotes your terminal type.  Each  terminal  type  is
1003             distinct, though many are similar.
1004
1005        TERMCAP
1006             If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
1007             <EM>cap</EM> support, <STRONG>ncurses</STRONG>  will  check  for  a  terminal's
1008             description in termcap form if it is not available in
1009             the terminfo database.
1010
1011             The  TERMCAP  symbol  contains  either   a   terminal
1012             description  (with  newlines stripped out), or a file
1013             name telling where the  information  denoted  by  the
1014             TERM  symbol  exists.   In  either  case,  setting it
1015             directs <STRONG>ncurses</STRONG> to ignore the usual  place  for  this
1016             information, e.g., /etc/termcap.
1017
1018        TERMINFO
1019             Overrides the directory in which <STRONG>ncurses</STRONG> searches for
1020             your terminal description.  This is the simplest, but
1021             not  the  only way to change the list of directories.
1022             The complete list of directories in order follows:
1023
1024             <STRONG>o</STRONG>   the last directory to  which  <STRONG>ncurses</STRONG>  wrote,  if
1025                 any, is searched first
1026
1027             <STRONG>o</STRONG>   the directory specified by the TERMINFO symbol
1028
1029             <STRONG>o</STRONG>   $HOME/.terminfo
1030
1031             <STRONG>o</STRONG>   directories listed in the TERMINFO_DIRS symbol
1032
1033             <STRONG>o</STRONG>   one  or  more directories whose names are config-
1034                 ured and compiled into the ncurses library, e.g.,
1035                 /usr/share/terminfo
1036
1037        TERMINFO_DIRS
1038             Specifies  a list of directories to search for termi-
1039             nal descriptions.  The list is  separated  by  colons
1040             (i.e.,  ":") on Unix, semicolons on OS/2 EMX.  All of
1041             the terminal descriptions are in terminfo form, which
1042             makes  a  subdirectory  named for the first letter of
1043             the terminal names therein.
1044
1045        TERMPATH
1046             If TERMCAP does not hold a  file  name  then  <STRONG>ncurses</STRONG>
1047             checks  the TERMPATH symbol.  This is a list of file-
1048             names separated by spaces or colons  (i.e.,  ":")  on
1049             Unix, semicolons on OS/2 EMX.  If the TERMPATH symbol
1050             is not set, <STRONG>ncurses</STRONG> looks in the files  /etc/termcap,
1051             /usr/share/misc/termcap  and  $HOME/.termcap, in that
1052             order.
1053
1054        The library may be configured to disregard  the  following
1055        variables  when  the current user is the superuser (root),
1056        or if the application uses setuid or  setgid  permissions:
1057        $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
1058
1059
1060 </PRE>
1061 <H2>ALTERNATE CONFIGURATIONS</H2><PRE>
1062        Several  different  configurations are possible, depending
1063        on  the  configure  script  options  used  when   building
1064        <STRONG>ncurses</STRONG>.   There  are a few main options whose effects are
1065        visible to the applications developer using <STRONG>ncurses</STRONG>:
1066
1067        --disable-overwrite
1068             The standard include for <STRONG>ncurses</STRONG> is as noted in  <STRONG>SYN-</STRONG>
1069             <STRONG>OPSIS</STRONG>:
1070
1071             <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
1072
1073             This  option is used to avoid filename conflicts when
1074             <STRONG>ncurses</STRONG> is not the main implementation of  curses  of
1075             the  computer.   If  <STRONG>ncurses</STRONG>  is  installed disabling
1076             overwrite, it puts its  headers  in  a  subdirectory,
1077             e.g.,
1078
1079             <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
1080
1081             It  also  omits a symbolic link which would allow you
1082             to use <STRONG>-lcurses</STRONG> to build executables.
1083
1084        --enable-widec
1085             The configure script renames the library and (if  the
1086             <STRONG>--disable-overwrite</STRONG>  option  is used) puts the header
1087             files  in  a  different  subdirectory.   All  of  the
1088             library  names  have  a  "w"  appended to them, i.e.,
1089             instead of
1090
1091             <STRONG>-lncurses</STRONG>
1092
1093             you link with
1094
1095             <STRONG>-lncursesw</STRONG>
1096
1097             You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
1098             piling  for  the  wide-character  library  to use the
1099             extended (wide-character)  functions.   The  <STRONG>curses.h</STRONG>
1100             file   which  is  installed  for  the  wide-character
1101             library is designed to be compatible with the  normal
1102             library's header.  Only the size of the <STRONG>WINDOW</STRONG> struc-
1103             ture differs, and very few applications require  more
1104             than  a  pointer  to  <STRONG>WINDOW</STRONG>s.   If  the  headers are
1105             installed  allowing  overwrite,  the   wide-character
1106             library's  headers should be installed last, to allow
1107             applications to be built using  either  library  from
1108             the same set of headers.
1109
1110        --with-shared
1111
1112        --with-normal
1113
1114        --with-debug
1115
1116        --with-profile
1117             The  shared  and normal (static) library names differ
1118             by   their   suffixes,   e.g.,   <STRONG>libncurses.so</STRONG>    and
1119             <STRONG>libncurses.a</STRONG>.   The debug and profiling libraries add
1120             a "_g" and a "_p" to  the  root  names  respectively,
1121             e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1122
1123        --with-trace
1124             The  <STRONG>trace</STRONG>  function  normally  resides  in the debug
1125             library, but it is sometimes useful to configure this
1126             in  the  shared  library.   Configure  scripts should
1127             check for the function's existence rather than assum-
1128             ing it is always in the debug library.
1129
1130
1131 </PRE>
1132 <H2>FILES</H2><PRE>
1133        /usr/share/tabset
1134             directory  containing  initialization  files  for the
1135             terminal capability database /usr/share/terminfo ter-
1136             minal capability database
1137
1138
1139 </PRE>
1140 <H2>SEE ALSO</H2><PRE>
1141        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>  and  related  pages whose names begin "curs_"
1142        for detailed routine descriptions.
1143        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
1144
1145
1146 </PRE>
1147 <H2>EXTENSIONS</H2><PRE>
1148        The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
1149        (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
1150        cap file if the terminal setup code cannot find a terminfo
1151        entry  corresponding  to <STRONG>TERM</STRONG>.  Use of this feature is not
1152        recommended, as it essentially includes an entire  termcap
1153        compiler  in the <STRONG>ncurses</STRONG> startup code, at significant cost
1154        in core and startup cycles.
1155
1156        The <STRONG>ncurses</STRONG>  library  includes  facilities  for  capturing
1157        mouse  events on certain terminals (including xterm).  See
1158        the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1159
1160        The <STRONG>ncurses</STRONG> library includes facilities for responding  to
1161        window  resizing  events,  e.g., when running in an xterm.
1162        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
1163        details.   In addition, the library may be configured with
1164        a SIGWINCH handler.
1165
1166        The <STRONG>ncurses</STRONG> library extends the fixed set of function  key
1167        capabilities  of  terminals  by  allowing  the application
1168        designer to define additional key  sequences  at  runtime.
1169        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-
1170        ual pages for details.
1171
1172        The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
1173        nals  which  implement the ISO-6429 SGR 39 and SGR 49 con-
1174        trols, which allow an application to reset the terminal to
1175        its  original  foreground and background colors.  From the
1176        users' perspective, the application is able to  draw  col-
1177        ored  text  on  a  background  whose color is set indepen-
1178        dently, providing better  control  over  color  contrasts.
1179        See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
1180
1181        The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
1182        application output to a printer attached to  the  terminal
1183        device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1184
1185
1186 </PRE>
1187 <H2>PORTABILITY</H2><PRE>
1188        The  <STRONG>ncurses</STRONG>  library is intended to be BASE-level confor-
1189        mant with XSI Curses.  The EXTENDED XSI Curses functional-
1190        ity (including color support) is supported.
1191
1192        A  small  number of local differences (that is, individual
1193        differences between the XSI Curses and <STRONG>ncurses</STRONG> calls)  are
1194        described  in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library man
1195        pages.
1196
1197        This implementation also contains several extensions:
1198
1199        <STRONG>o</STRONG>   The routine <STRONG>has_key</STRONG> is not part of  XPG4,  nor  is  it
1200            present  in  SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page
1201            for details.
1202
1203        <STRONG>o</STRONG>   The routine <STRONG>slk_attr</STRONG> is not part of XPG4,  nor  is  it
1204            present in SVr4.  See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
1205            details.
1206
1207        <STRONG>o</STRONG>   The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mousein-</STRONG>
1208            <STRONG>terval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing are
1209            not part of XPG4, nor are they present in  SVr4.   See
1210            the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1211
1212        <STRONG>o</STRONG>   The  routine  <STRONG>mcprint</STRONG>  was not present in any previous
1213            curses implementation.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>  manual
1214            page for details.
1215
1216        <STRONG>o</STRONG>   The  routine  <STRONG>wresize</STRONG>  is  not part of XPG4, nor is it
1217            present in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page  for
1218            details.
1219
1220        <STRONG>o</STRONG>   The  WINDOW structure's internal details can be hidden
1221            from application programs.   See  <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>  for
1222            the discussion of <STRONG>is_scrollok</STRONG>, etc.
1223
1224        <STRONG>o</STRONG>   This implementation can be configured to provide rudi-
1225            mentary support for multi-threaded applications.   See
1226            <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for details.
1227
1228        <STRONG>o</STRONG>   This  implementation can also be configured to provide
1229            a set of functions which improve the ability to manage
1230            multiple  screens.  See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
1231
1232        In historic curses versions, delays embedded in the  capa-
1233        bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
1234        delay bits in the UNIX tty driver.   In  this  implementa-
1235        tion,  all  padding  is  done  by sending NUL bytes.  This
1236        method is slightly more expensive, but narrows the  inter-
1237        face  to  the  UNIX kernel significantly and increases the
1238        package's portability correspondingly.
1239
1240
1241 </PRE>
1242 <H2>NOTES</H2><PRE>
1243        The header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes  the
1244        header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
1245
1246        If  standard  output from a <STRONG>ncurses</STRONG> program is re-directed
1247        to something which is not a tty, screen  updates  will  be
1248        directed to standard error.  This was an undocumented fea-
1249        ture of AT&amp;T System V Release 3 curses.
1250
1251
1252 </PRE>
1253 <H2>AUTHORS</H2><PRE>
1254        Zeyd M. Ben-Halim, Eric  S.  Raymond,  Thomas  E.  Dickey.
1255        Based on pcurses by Pavel Curtis.
1256
1257
1258
1259                                                             <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1260 </PRE>
1261 <HR>
1262 <ADDRESS>
1263 Man(1) output converted with
1264 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
1265 </ADDRESS>
1266 </BODY>
1267 </HTML>