ncurses 6.0 - patch 20170128
[ncurses.git] / doc / html / man / ncurses.3x.html
1 <!-- 
2   * t
3   ****************************************************************************
4   * Copyright (c) 1998-2015,2017 Free Software Foundation, Inc.              *
5   *                                                                          *
6   * Permission is hereby granted, free of charge, to any person obtaining a  *
7   * copy of this software and associated documentation files (the            *
8   * "Software"), to deal in the Software without restriction, including      *
9   * without limitation the rights to use, copy, modify, merge, publish,      *
10   * distribute, distribute with modifications, sublicense, and/or sell       *
11   * copies of the Software, and to permit persons to whom the Software is    *
12   * furnished to do so, subject to the following conditions:                 *
13   *                                                                          *
14   * The above copyright notice and this permission notice shall be included  *
15   * in all copies or substantial portions of the Software.                   *
16   *                                                                          *
17   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
18   * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
19   * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
20   * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
21   * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
22   * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
23   * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
24   *                                                                          *
25   * Except as contained in this notice, the name(s) of the above copyright   *
26   * holders shall not be used in advertising or otherwise to promote the     *
27   * sale, use or other dealings in this Software without prior written       *
28   * authorization.                                                           *
29   ****************************************************************************
30   * @Id: ncurses.3x,v 1.125 2017/01/07 19:25:15 tom Exp @
31 -->
32 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
33 <HTML>
34 <HEAD>
35 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
36 <meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts">
37 <TITLE>ncurses 3x</TITLE>
38 <link rev=made href="mailto:bug-ncurses@gnu.org">
39 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
40 </HEAD>
41 <BODY>
42 <H1 class="no-header">ncurses 3x</H1>
43 <PRE>
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><H2><a name="h2-NAME">NAME</a></H2><PRE>
50        <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
51
52
53 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
54        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
55
56
57 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
58        The  <STRONG>ncurses</STRONG>  library  routines  give the user a terminal-
59        independent method of updating character screens with rea-
60        sonable optimization.  This implementation is "new curses"
61        (ncurses) and is the approved replacement for 4.4BSD clas-
62        sic  curses,  which has been discontinued.  This describes
63        <STRONG>ncurses</STRONG> version 6.0 (patch 20170128).
64
65        The <STRONG>ncurses</STRONG> library emulates the curses library of  System
66        V  Release  4  UNIX,  and  XPG4 (X/Open Portability Guide)
67        curses (also known as XSI curses).  XSI stands for  X/Open
68        System  Interfaces  Extension.   The  <STRONG>ncurses</STRONG>  library  is
69        freely redistributable in source form.   Differences  from
70        the  SVr4  curses  are summarized under the <STRONG>EXTENSIONS</STRONG> and
71        <STRONG>PORTABILITY</STRONG> sections below and described in detail in  the
72        respective  <STRONG>EXTENSIONS</STRONG>,  <STRONG>PORTABILITY</STRONG>  and <STRONG>BUGS</STRONG> sections of
73        individual man pages.
74
75        The <STRONG>ncurses</STRONG> library also provides many useful  extensions,
76        i.e.,  features  which  cannot  be implemented by a simple
77        add-on library but which require access to  the  internals
78        of the library.
79
80        A  program  using  these  routines must be linked with the
81        <STRONG>-lncurses</STRONG> option, or (if it has been generated)  with  the
82        debugging  library  <STRONG>-lncurses_g</STRONG>.   (Your system integrator
83        may also have installed these libraries  under  the  names
84        <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.)  The ncurses_g library generates
85        trace logs (in a file called 'trace' in the current direc-
86        tory)  that describe curses actions.  See also the section
87        on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
88
89        The <STRONG>ncurses</STRONG> package supports: overall screen,  window  and
90        pad manipulation; output to windows and pads; reading ter-
91        minal input; control over terminal and  <STRONG>curses</STRONG>  input  and
92        output  options; environment query routines; color manipu-
93        lation; use of soft label keys; terminfo capabilities; and
94        access to low-level terminal-manipulation routines.
95
96
97 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
98        The  library uses the locale which the calling program has
99        initialized.  That is normally done with <STRONG>setlocale</STRONG>:
100
101              <STRONG>setlocale(LC_ALL,</STRONG> <STRONG>"");</STRONG>
102
103        If the locale is not initialized, the library assumes that
104        characters  are  printable  as in ISO-8859-1, to work with
105        certain legacy programs.  You should initialize the locale
106        and  not  rely on specific details of the library when the
107        locale has not been setup.
108
109        The function <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> must be called to initial-
110        ize the library before any of the other routines that deal
111        with windows and screens are used.  The routine <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG>
112        must be called before exiting.
113
114        To  get  character-at-a-time  input  without echoing (most
115        interactive, screen oriented programs want this), the fol-
116        lowing sequence should be used:
117
118              <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
119
120        Most programs would additionally use the sequence:
121
122              <STRONG>nonl();</STRONG>
123              <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
124              <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
125
126        Before  a <STRONG>curses</STRONG> program is run, the tab stops of the ter-
127        minal should be set and  its  initialization  strings,  if
128        defined,  must  be  output.  This can be done by executing
129        the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
130        <STRONG>TERM</STRONG>  has  been  exported.  <STRONG>tset(1)</STRONG> is usually responsible
131        for doing this.  [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
132
133
134 </PRE><H3><a name="h3-Datatypes">Datatypes</a></H3><PRE>
135        The <STRONG>ncurses</STRONG> library permits manipulation  of  data  struc-
136        tures,  called  <EM>windows</EM>,  which  can be thought of as two-
137        dimensional arrays of characters representing all or  part
138        of a CRT screen.  A default window called <STRONG>stdscr</STRONG>, which is
139        the size of the terminal screen, is supplied.  Others  may
140        be created with <STRONG>newwin</STRONG>.
141
142        Note  that  <STRONG>curses</STRONG>  does  not  handle overlapping windows,
143        that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library.  This means that you
144        can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win-
145        dows and not using <STRONG>stdscr</STRONG> at all.   Mixing  the  two  will
146        result in unpredictable, and undesired, effects.
147
148        Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
149        These  data  structures  are  manipulated  with   routines
150        described  here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
151        Among those, the most basic routines are <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.
152        More  general versions of these routines are included with
153        names beginning with <STRONG>w</STRONG>, allowing the  user  to  specify  a
154        window.  The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
155
156        After  using  routines to manipulate a window, <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>
157        is called, telling <STRONG>curses</STRONG> to make the  user's  CRT  screen
158        look like <STRONG>stdscr</STRONG>.  The characters in a window are actually
159        of type <STRONG>chtype</STRONG>, (character and  attribute  data)  so  that
160        other  information  about the character may also be stored
161        with each character.
162
163        Special windows  called  <EM>pads</EM>  may  also  be  manipulated.
164        These are windows which are not constrained to the size of
165        the screen and whose contents need not be completely  dis-
166        played.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
167
168        In  addition  to  drawing  characters on the screen, video
169        attributes and colors may be supported, causing the  char-
170        acters  to show up in such modes as underlined, in reverse
171        video, or in color on terminals that support such  display
172        enhancements.  Line drawing characters may be specified to
173        be output.  On input, <STRONG>curses</STRONG> is  also  able  to  translate
174        arrow  and  function  keys  that transmit escape sequences
175        into single values.  The video  attributes,  line  drawing
176        characters,   and  input  values  use  names,  defined  in
177        <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
178
179
180 </PRE><H3><a name="h3-Environment-variables">Environment variables</a></H3><PRE>
181        If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
182        if  the program is executing in a window environment, line
183        and column information in the  environment  will  override
184        information read by <EM>terminfo</EM>.  This would affect a program
185        running in an AT&amp;T 630 layer, for example, where the  size
186        of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
187
188        If  the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro-
189        gram using <STRONG>curses</STRONG> checks for a local  terminal  definition
190        before  checking  in  the standard place.  For example, if
191        <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini-
192        tion is found in
193
194              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
195
196        (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
197        creation of huge directories.)  However,  if  <STRONG>TERMINFO</STRONG>  is
198        set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
199
200              <STRONG>$HOME/myterms/a/att4424</STRONG>,
201
202        and if that fails, it then checks
203
204              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
205
206        This  is useful for developing experimental definitions or
207        when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
208        able.
209
210        The  integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined in
211        <STRONG>&lt;curses.h&gt;</STRONG> and will be filled in by <STRONG>initscr</STRONG> with the  size
212        of the screen.  The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
213        ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
214
215        The <STRONG>curses</STRONG> routines also  define  the  <STRONG>WINDOW</STRONG>  <STRONG>*</STRONG>  variable
216        <STRONG>curscr</STRONG> which is used for certain low-level operations like
217        clearing and redrawing a screen containing  garbage.   The
218        <STRONG>curscr</STRONG> can be used in only a few routines.
219
220
221 </PRE><H3><a name="h3-Routine-and-Argument-Names">Routine and Argument Names</a></H3><PRE>
222        Many  <STRONG>curses</STRONG> routines have two or more versions.  The rou-
223        tines prefixed with <STRONG>w</STRONG> require a window argument.  The rou-
224        tines prefixed with <STRONG>p</STRONG> require a pad argument.  Those with-
225        out a prefix generally use <STRONG>stdscr</STRONG>.
226
227        The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
228        to  move to before performing the appropriate action.  The
229        <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the  call  to  the
230        other  routine.  The coordinate <EM>y</EM> always refers to the row
231        (of the window), and <EM>x</EM> always refers to the  column.   The
232        upper left-hand corner is always (0,0), not (1,1).
233
234        The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
235        and <EM>x</EM> and <EM>y</EM> coordinates.  The window  argument  is  always
236        specified before the coordinates.
237
238        In  each  case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the
239        pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG>
240        <STRONG>DOW</STRONG>.
241
242        Option setting routines require a Boolean flag <EM>bf</EM> with the
243        value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>.   Most  of
244        the  data types used in the library routines, such as <STRONG>WIN-</STRONG>
245        <STRONG>DOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined  in  <STRONG>&lt;curses.h&gt;</STRONG>.
246        Types  used for the terminfo routines such as <STRONG>TERMINAL</STRONG> are
247        defined in <STRONG>&lt;term.h&gt;</STRONG>.
248
249        This manual page describes functions which may  appear  in
250        any  configuration  of  the library.  There are two common
251        configurations of the library:
252
253           <EM>ncurses</EM>
254                the "normal" library, which handles 8-bit  charac-
255                ters.   The  normal (8-bit) library stores charac-
256                ters combined with attributes in <STRONG>chtype</STRONG> data.
257
258                Attributes alone (no corresponding character)  may
259                be stored in <STRONG>chtype</STRONG> or the equivalent <STRONG>attr_t</STRONG> data.
260                In either case, the data is  stored  in  something
261                like an integer.
262
263                Each  cell  (row and column) in a <STRONG>WINDOW</STRONG> is stored
264                as a <STRONG>chtype</STRONG>.
265
266           <EM>ncursesw</EM>
267                the so-called "wide" library, which handles multi-
268                byte characters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CON-</STRONG>
269                <STRONG>FIGURATIONS</STRONG>).  The "wide" library includes all  of
270                the  calls  from  the  "normal"  library.  It adds
271                about one third more calls using data types  which
272                store multibyte characters:
273
274                <STRONG>cchar_t</STRONG>
275                     corresponds  to  <STRONG>chtype</STRONG>.   However  it  is  a
276                     structure, because more data is  stored  than
277                     can  fit into an integer.  The characters are
278                     large enough to require a full integer  value
279                     -  and  there  may be more than one character
280                     per cell.  The video attributes and color are
281                     stored in separate fields of the structure.
282
283                     Each  cell  (row  and  column) in a <STRONG>WINDOW</STRONG> is
284                     stored as a <STRONG>cchar_t</STRONG>.
285
286                <STRONG>wchar_t</STRONG>
287                     stores a "wide" character.  Like <STRONG>chtype</STRONG>, this
288                     may be an integer.
289
290                <STRONG>wint_t</STRONG>
291                     stores  a  <STRONG>wchar_t</STRONG>  or  <STRONG>WEOF</STRONG>  - not the same,
292                     though both may have the same size.
293
294                The "wide" library provides  new  functions  which
295                are   analogous   to  functions  in  the  "normal"
296                library.   There  is  a  naming  convention  which
297                relates  many  of the normal/wide variants: a "_w"
298                is inserted into the name.   For  example,  <STRONG>waddch</STRONG>
299                becomes <STRONG>wadd_wch</STRONG>.
300
301
302 </PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
303        The following table lists each <STRONG>curses</STRONG> routine and the name
304        of the manual page on which  it  is  described.   Routines
305        flagged  with  `*'  are ncurses-specific, not described by
306        XPG4 or present in SVr4.
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               _nc_freeall             <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
314               _nc_tracebits           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
315               _traceattr              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
316               _traceattr2             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
317               _tracechar              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
318
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               endwin                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
380               erase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
381               erasechar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
382               erasewchar              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
383               filter                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
384               flash                   <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
385
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               is_idcok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
446               is_idlok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
447               is_immedok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
448               is_keypad               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
449               is_leaveok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
450               is_linetouched          <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
451               is_nodelay              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
452
453               is_notimeout            <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
454               is_pad                  <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
455               is_scrollok             <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
456               is_subwin               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
457               is_syncok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
458               is_term_resized         <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
459               is_wintouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
460               isendwin                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
461               key_defined             <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
462               key_name                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
463               keybound                <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
464               keyname                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
465               keyok                   <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
466               keypad                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
467               killchar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
468               killwchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
469               leaveok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
470               longname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
471               mcprint                 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
472               meta                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
473               mouse_trafo             <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
474               mouseinterval           <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
475               mousemask               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
476               move                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
477               mvadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
478               mvadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
479               mvadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
480               mvaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
481               mvaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
482               mvaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
483               mvaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
484               mvaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
485               mvaddstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
486               mvaddwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
487               mvchgat                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
488               mvcur                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
489               mvdelch                 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
490               mvderwin                <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
491               mvget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
492               mvget_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
493               mvgetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
494               mvgetn_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
495               mvgetnstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
496               mvgetstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
497               mvhline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
498               mvhline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
499               mvin_wch                <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
500               mvin_wchnstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
501               mvin_wchstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
502               mvinch                  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
503               mvinchnstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
504               mvinchstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
505               mvinnstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
506               mvinnwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
507               mvins_nwstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
508               mvins_wch               <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
509               mvins_wstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
510               mvinsch                 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
511               mvinsnstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
512               mvinsstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
513               mvinstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
514               mvinwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
515               mvprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
516               mvscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
517               mvvline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
518               mvvline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
519
520               mvwadd_wch              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
521               mvwadd_wchnstr          <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
522               mvwadd_wchstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
523               mvwaddch                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
524               mvwaddchnstr            <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
525               mvwaddchstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
526               mvwaddnstr              <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
527               mvwaddnwstr             <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
528               mvwaddstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
529               mvwaddwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
530               mvwchgat                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
531               mvwdelch                <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
532               mvwget_wch              <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
533               mvwget_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
534               mvwgetch                <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
535               mvwgetn_wstr            <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
536               mvwgetnstr              <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
537               mvwgetstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
538               mvwhline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
539               mvwhline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
540               mvwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
541               mvwin_wch               <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
542               mvwin_wchnstr           <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
543               mvwin_wchstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
544               mvwinch                 <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
545               mvwinchnstr             <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
546               mvwinchstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
547               mvwinnstr               <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
548               mvwinnwstr              <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
549               mvwins_nwstr            <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
550               mvwins_wch              <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
551               mvwins_wstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
552               mvwinsch                <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
553               mvwinsnstr              <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
554               mvwinsstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
555               mvwinstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
556               mvwinwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
557               mvwprintw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
558               mvwscanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
559               mvwvline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
560               mvwvline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
561               napms                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
562               newpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
563               newterm                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
564               newwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
565               nl                      <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
566               nocbreak                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
567               nodelay                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
568               noecho                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
569               nofilter                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
570               nonl                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
571               noqiflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
572               noraw                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
573               notimeout               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
574               overlay                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
575               overwrite               <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
576               pair_content            <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
577               pechochar               <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
578               pnoutrefresh            <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
579               prefresh                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
580               printw                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
581               putp                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
582               putwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
583               qiflush                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
584               raw                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
585               redrawwin               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
586
587               refresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
588               reset_prog_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
589               reset_shell_mode        <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
590               resetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
591               resize_term             <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
592               resizeterm              <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
593               restartterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
594               ripoffline              <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
595               savetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
596               scanw                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
597               scr_dump                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
598               scr_init                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
599               scr_restore             <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
600               scr_set                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
601               scrl                    <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
602               scroll                  <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
603               scrollok                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
604               set_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
605               set_term                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
606               setcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
607               setscrreg               <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
608               setsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
609               setterm                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
610               setupterm               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
611               slk_attr                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
612               slk_attr_off            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
613               slk_attr_on             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
614               slk_attr_set            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
615               slk_attroff             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
616               slk_attron              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
617               slk_attrset             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
618               slk_clear               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
619               slk_color               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
620               slk_init                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
621               slk_label               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
622               slk_noutrefresh         <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
623               slk_refresh             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
624               slk_restore             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
625               slk_set                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
626               slk_touch               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
627               standend                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
628               standout                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
629               start_color             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
630               subpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
631               subwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
632               syncok                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
633               term_attrs              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
634               termattrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
635               termname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
636               tgetent                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
637               tgetflag                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
638               tgetnum                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
639               tgetstr                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
640               tgoto                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
641               tigetflag               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
642               tigetnum                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
643               tigetstr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
644               tiparm                  <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>*
645               timeout                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
646               touchline               <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
647               touchwin                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
648               tparm                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
649               tputs                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
650               tputs                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
651               trace                   <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
652               typeahead               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
653
654               unctrl                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
655               unget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
656               ungetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
657               ungetmouse              <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
658               untouchwin              <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
659               use_default_colors      <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
660               use_env                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
661               use_extended_names      <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
662               use_legacy_coding       <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
663               use_tioctl              <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
664               vid_attr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
665               vid_puts                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
666               vidattr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
667               vidputs                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
668               vline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
669               vline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
670               vw_printw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
671               vw_scanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
672               vwprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
673               vwscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
674               wadd_wch                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
675               wadd_wchnstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
676               wadd_wchstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
677               waddch                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
678               waddchnstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
679               waddchstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
680               waddnstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
681               waddnwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
682               waddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
683               waddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
684               wattr_get               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
685               wattr_off               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
686               wattr_on                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
687               wattr_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
688               wattroff                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
689               wattron                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
690               wattrset                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
691               wbkgd                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
692               wbkgdset                <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
693               wbkgrnd                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
694               wbkgrndset              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
695               wborder                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
696               wborder_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
697               wchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
698               wclear                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
699               wclrtobot               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
700               wclrtoeol               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
701               wcolor_set              <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
702               wcursyncup              <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
703               wdelch                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
704               wdeleteln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
705               wecho_wchar             <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
706               wechochar               <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
707               wenclose                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
708               werase                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
709               wget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
710               wget_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
711               wgetbkgrnd              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
712               wgetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
713               wgetdelay               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
714               wgetn_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
715               wgetnstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
716               wgetparent              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
717               wgetscrreg              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
718               wgetstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
719               whline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
720
721               whline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
722               win_wch                 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
723               win_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
724               win_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
725               winch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
726               winchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
727               winchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
728               winnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
729               winnwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
730               wins_nwstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
731               wins_wch                <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
732               wins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
733               winsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
734               winsdelln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
735               winsertln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
736               winsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
737               winsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
738               winstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
739               winwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
740               wmouse_trafo            <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
741               wmove                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
742               wnoutrefresh            <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
743               wprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
744               wredrawln               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
745               wrefresh                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
746               wresize                 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
747               wscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
748               wscrl                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
749               wsetscrreg              <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
750               wstandend               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
751               wstandout               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
752               wsyncdown               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
753               wsyncup                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
754               wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
755               wtouchln                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
756               wunctrl                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
757               wvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
758               wvline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
759
760
761 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
762        Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
763        and  an  integer value other than <STRONG>ERR</STRONG> upon successful com-
764        pletion, unless otherwise noted in  the  routine  descrip-
765        tions.
766
767        As a general rule, routines check for null pointers passed
768        as parameters, and handle this as an error.
769
770        All macros return the  value  of  the  <STRONG>w</STRONG>  version,  except
771        <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>.  The
772        return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>,  <STRONG>getyx</STRONG>,  <STRONG>getbegyx</STRONG>,
773        and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
774        as the right-hand side of assignment statements).
775
776        Routines that return pointers return <STRONG>NULL</STRONG> on error.
777
778
779 </PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
780        The following environment symbols are useful for customiz-
781        ing the runtime behavior of the <STRONG>ncurses</STRONG> library.  The most
782        important ones have been already discussed in detail.
783
784    <STRONG>CC</STRONG>
785        When set,  change  occurrences  of  the  command_character
786        (i.e.,  the  <STRONG>cmdch</STRONG>  capability)  of  the  loaded  terminfo
787        entries to the value of this variable.  Very few  terminfo
788        entries provide this feature.
789
790        Because this name is also used in development environments
791        to represent the C compiler's name, <STRONG>ncurses</STRONG> ignores it  if
792        it does not happen to be a single character.
793
794
795 </PRE><H3><a name="h3-BAUDRATE">BAUDRATE</a></H3><PRE>
796        The  debugging  library  checks  this environment variable
797        when the application has redirected output to a file.  The
798        variable's  numeric value is used for the baudrate.  If no
799        value is found, <STRONG>ncurses</STRONG> uses 9600.  This allows testers to
800        construct  repeatable  test-cases  that  take into account
801        costs that depend on baudrate.
802
803
804 </PRE><H3><a name="h3-COLUMNS">COLUMNS</a></H3><PRE>
805        Specify the width of the screen in  characters.   Applica-
806        tions  running in a windowing environment usually are able
807        to obtain the width of the window in which they  are  exe-
808        cuting.   If  neither the <STRONG>COLUMNS</STRONG> value nor the terminal's
809        screen size is available, <STRONG>ncurses</STRONG> uses the size which  may
810        be  specified  in  the  terminfo  database (i.e., the <STRONG>cols</STRONG>
811        capability).
812
813        It is important that your application use a  correct  size
814        for  the screen.  This is not always possible because your
815        application may be running on a host which does not  honor
816        NAWS  (Negotiations About Window Size), or because you are
817        temporarily running as  another  user.   However,  setting
818        <STRONG>COLUMNS</STRONG>  and/or  <STRONG>LINES</STRONG>  overrides the library's use of the
819        screen size obtained from the operating system.
820
821        Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified  indepen-
822        dently.   This  is mainly useful to circumvent legacy mis-
823        features of terminal descriptions, e.g., xterm which  com-
824        monly specifies a 65 line screen.  For best results, <STRONG>lines</STRONG>
825        and <STRONG>cols</STRONG> should not be specified in a terminal description
826        for terminals which are run as emulations.
827
828        Use  the  <STRONG>use_env</STRONG>  function to disable all use of external
829        environment (but not including system calls) to  determine
830        the  screen  size.   Use the <STRONG>use_tioctl</STRONG> function to update
831        <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen  size  obtained  from
832        system calls or the terminal database.
833
834
835 </PRE><H3><a name="h3-ESCDELAY">ESCDELAY</a></H3><PRE>
836        Specifies  the  total  time,  in  milliseconds,  for which
837        ncurses will await a character sequence, e.g., a  function
838        key.   The default value, 1000 milliseconds, is enough for
839        most uses.  However, it is made a variable to  accommodate
840        unusual applications.
841
842        The most common instance where you may wish to change this
843        value is to work with slow hosts, e.g., running on a  net-
844        work.   If the host cannot read characters rapidly enough,
845        it will have the same effect as if the  terminal  did  not
846        send  characters  rapidly  enough.  The library will still
847        see a timeout.
848
849        Note that xterm mouse events are built up  from  character
850        sequences  received  from  the xterm.  If your application
851        makes heavy use of  multiple-clicking,  you  may  wish  to
852        lengthen this default value because the timeout applies to
853        the composed multi-click event as well as  the  individual
854        clicks.
855
856        In  addition to the environment variable, this implementa-
857        tion provides a global variable with the same name.   Por-
858        table  applications  should  not rely upon the presence of
859        ESCDELAY in either form, but setting the environment vari-
860        able rather than the global variable does not create prob-
861        lems when compiling an application.
862
863
864 </PRE><H3><a name="h3-HOME">HOME</a></H3><PRE>
865        Tells <STRONG>ncurses</STRONG> where your home directory is.  That is where
866        it may read and write auxiliary terminal descriptions:
867
868        $HOME/.termcap
869        $HOME/.terminfo
870
871
872 </PRE><H3><a name="h3-LINES">LINES</a></H3><PRE>
873        Like  COLUMNS, specify the height of the screen in charac-
874        ters.  See COLUMNS for a detailed description.
875
876
877 </PRE><H3><a name="h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></H3><PRE>
878        This applies only to the OS/2 EMX port.  It specifies  the
879        order  of  buttons  on the mouse.  OS/2 numbers a 3-button
880        mouse inconsistently from other platforms:
881
882        1 = left
883        2 = right
884        3 = middle.
885
886        This variable lets you customize the mouse.  The  variable
887        must  be  three numeric digits 1-3 in any order, e.g., 123
888        or 321.  If it is not specified, <STRONG>ncurses</STRONG> uses 132.
889
890
891 </PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></H3><PRE>
892        Override the compiled-in assumption  that  the  terminal's
893        default   colors   are  white-on-black  (see  <STRONG>default_col-</STRONG>
894        <STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG>).  You may set the foreground and background color
895        values  with this environment variable by proving a 2-ele-
896        ment list: foreground,background.  For  example,  to  tell
897        ncurses  to not assume anything about the colors, set this
898        to "-1,-1".  To make it green-on-black, set it  to  "2,0".
899        Any  positive  value  from zero to the terminfo <STRONG>max_colors</STRONG>
900        value is allowed.
901
902
903 </PRE><H3><a name="h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></H3><PRE>
904        This applies only to the MinGW port of ncurses.
905
906        The <STRONG>Console2</STRONG> program's handling of the  Microsoft  Console
907        API call <STRONG>CreateConsoleScreenBuffer</STRONG> is defective.  Applica-
908        tions which use this will hang.  However, it  is  possible
909        to  simulate  the  action  of this call by mapping coordi-
910        nates, explicitly saving and restoring the original screen
911        contents.   Setting the environment variable <STRONG>NCGDB</STRONG> has the
912        same effect.
913
914
915 </PRE><H3><a name="h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></H3><PRE>
916        This applies only to ncurses configured  to  use  the  GPM
917        interface.
918
919        If  present,  the environment variable is a list of one or
920        more terminal names against  which  the  TERM  environment
921        variable  is  matched.   Setting it to an empty value dis-
922        ables the GPM interface; using the  built-in  support  for
923        xterm, etc.
924
925        If  the  environment  variable  is  absent,  ncurses  will
926        attempt to open GPM if TERM contains "linux".
927
928
929 </PRE><H3><a name="h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></H3><PRE>
930        <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement  opti-
931        mization.   In  some  cases,  your terminal driver may not
932        handle these properly.  Set this environment  variable  to
933        disable  the  feature.  You can also adjust your <STRONG>stty</STRONG> set-
934        tings to avoid the problem.  NCURSES_NO_MAGIC_COOKIE  Some
935        terminals  use  a magic-cookie feature which requires spe-
936        cial  handling  to  make  highlighting  and  other   video
937        attributes  display  properly.  You can suppress the high-
938        lighting entirely for  these  terminals  by  setting  this
939        environment variable.
940
941
942 </PRE><H3><a name="h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></H3><PRE>
943        Most of the terminal descriptions in the terminfo database
944        are written for real "hardware"  terminals.   Many  people
945        use  terminal  emulators which run in a windowing environ-
946        ment and use curses-based applications.   Terminal  emula-
947        tors can duplicate all of the important aspects of a hard-
948        ware terminal, but they do not have the same  limitations.
949        The  chief  limitation  of  a  hardware  terminal from the
950        standpoint  of  your  application  is  the  management  of
951        dataflow,  i.e.,  timing.   Unless  a hardware terminal is
952        interfaced into a terminal concentrator (which  does  flow
953        control),  it  (or your application) must manage dataflow,
954        preventing overruns.  The cheapest solution  (no  hardware
955        cost)  is  for  your  program  to do this by pausing after
956        operations that the terminal does slowly, such as clearing
957        the display.
958
959        As  a  result,  many  terminal descriptions (including the
960        vt100) have delay times embedded.  You  may  wish  to  use
961        these  descriptions,  but  not want to pay the performance
962        penalty.
963
964        Set the NCURSES_NO_PADDING environment variable to disable
965        all but mandatory padding.  Mandatory padding is used as a
966        part of special control sequences such as <EM>flash</EM>.
967
968
969 </PRE><H3><a name="h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></H3><PRE>
970        This setting is obsolete.  Before changes
971
972           <STRONG>o</STRONG>   started with 5.9 patch 20120825 and
973
974           <STRONG>o</STRONG>   continued though 5.9 patch 20130126
975
976        <STRONG>ncurses</STRONG> enabled buffered output during  terminal  initial-
977        ization.   This  was  done (as in SVr4 curses) for perfor-
978        mance reasons.  For testing purposes, both of <STRONG>ncurses</STRONG>  and
979        certain  applications,  this  feature  was  made optional.
980        Setting the  NCURSES_NO_SETBUF  variable  disabled  output
981        buffering,  leaving  the  output  in the original (usually
982        line buffered) mode.
983
984        In the current implementation, ncurses  performs  its  own
985        buffering  and  does not require this workaround.  It does
986        not modify the buffering of the standard output.
987
988        The reason for the change was to  make  the  behavior  for
989        interrupts and other signals more robust.  One drawback is
990        that certain nonconventional programs would  mix  ordinary
991        stdio  calls  with ncurses calls and (usually) work.  This
992        is no longer possible  since  ncurses  is  not  using  the
993        buffered  standard  output but its own output (to the same
994        file descriptor).  As a special case, the low-level  calls
995        such  as  <STRONG>putp</STRONG>  still  use the standard output.  But high-
996        level curses calls do not.
997
998
999 </PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></H3><PRE>
1000        During initialization, the <STRONG>ncurses</STRONG> library checks for spe-
1001        cial cases where VT100 line-drawing (and the corresponding
1002        alternate character set  capabilities)  described  in  the
1003        terminfo are known to be missing.  Specifically, when run-
1004        ning in a UTF-8 locale, the Linux console emulator and the
1005        GNU  screen program ignore these.  Ncurses checks the TERM
1006        environment variable for these.  For other special  cases,
1007        you  should  set  this  environment  variable.  Doing this
1008        tells ncurses to use Unicode values  which  correspond  to
1009        the VT100 line-drawing glyphs.  That works for the special
1010        cases cited, and is likely to work for terminal emulators.
1011
1012        When setting this variable, you should set it to a nonzero
1013        value.   Setting  it  to zero (or to a nonnumber) disables
1014        the special check for "linux" and "screen".
1015
1016        As an alternative to  the  environment  variable,  ncurses
1017        checks  for an extended terminfo capability <STRONG>U8</STRONG>.  This is a
1018        numeric capability which can  be  compiled  using  <STRONG>tic</STRONG> <STRONG>-x</STRONG>.
1019        For example
1020
1021           # linux console, if patched to provide working
1022           # VT100 shift-in/shift-out, with corresponding font.
1023           linux-vt100|linux console with VT100 line-graphics,
1024                   U8#0, use=linux,
1025
1026           # uxterm with vt100Graphics resource set to false
1027           xterm-utf8|xterm relying on UTF-8 line-graphics,
1028                   U8#1, use=xterm,
1029
1030        The name "U8" is chosen to be two characters, to permit it
1031        to be used  by  applications  that  use  ncurses'  termcap
1032        interface.
1033
1034
1035 </PRE><H3><a name="h3-NCURSES_TRACE">NCURSES_TRACE</a></H3><PRE>
1036        During   initialization,  the  <STRONG>ncurses</STRONG>  debugging  library
1037        checks the NCURSES_TRACE environment variable.  If  it  is
1038        defined, to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> func-
1039        tion, using that value as the argument.
1040
1041        The argument values, which are defined in  <STRONG>curses.h</STRONG>,  pro-
1042        vide  several  types  of  information.   When running with
1043        traces enabled, your application will write the file <STRONG>trace</STRONG>
1044        to the current directory.
1045
1046        See <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> for more information.
1047
1048
1049 </PRE><H3><a name="h3-TERM">TERM</a></H3><PRE>
1050        Denotes  your  terminal  type.  Each terminal type is dis-
1051        tinct, though many are similar.
1052
1053        <STRONG>TERM</STRONG> is commonly set by terminal emulators to help  appli-
1054        cations  find  a  workable  terminal description.  Some of
1055        those  choose  a  popular  approximation,  e.g.,   "ansi",
1056        "vt100",  "xterm"  rather  than  an exact fit.  Not infre-
1057        quently, your application will  have  problems  with  that
1058        approach, e.g., incorrect function-key definitions.
1059
1060        If  you  set <STRONG>TERM</STRONG> in your environment, it has no effect on
1061        the operation of the terminal emulator.  It  only  affects
1062        the  way applications work within the terminal.  Likewise,
1063        as a general rule (<STRONG>xterm</STRONG> being a rare exception), terminal
1064        emulators  which  allow you to specify <STRONG>TERM</STRONG> as a parameter
1065        or configuration value do not  change  their  behavior  to
1066        match that setting.
1067
1068
1069 </PRE><H3><a name="h3-TERMCAP">TERMCAP</a></H3><PRE>
1070        If  the  <STRONG>ncurses</STRONG>  library has been configured with <EM>termcap</EM>
1071        support, <STRONG>ncurses</STRONG> will check for a  terminal's  description
1072        in  termcap  form  if  it is not available in the terminfo
1073        database.
1074
1075        The TERMCAP environment variable contains either a  termi-
1076        nal  description  (with  newlines stripped out), or a file
1077        name telling where the information  denoted  by  the  TERM
1078        environment  variable  exists.  In either case, setting it
1079        directs <STRONG>ncurses</STRONG> to ignore the usual place for this  infor-
1080        mation, e.g., /etc/termcap.
1081
1082
1083 </PRE><H3><a name="h3-TERMINFO">TERMINFO</a></H3><PRE>
1084        Overrides the directory in which <STRONG>ncurses</STRONG> searches for your
1085        terminal description.  This is the simplest, but  not  the
1086        only  way to change the list of directories.  The complete
1087        list of directories in order follows:
1088
1089           <STRONG>o</STRONG>   the last directory to which <STRONG>ncurses</STRONG> wrote, if  any,
1090               is searched first
1091
1092           <STRONG>o</STRONG>   the directory specified by the TERMINFO environment
1093               variable
1094
1095           <STRONG>o</STRONG>   $HOME/.terminfo
1096
1097           <STRONG>o</STRONG>   directories listed in the TERMINFO_DIRS environment
1098               variable
1099
1100           <STRONG>o</STRONG>   one  or more directories whose names are configured
1101               and compiled into the ncurses library, i.e.,
1102
1103              <STRONG>o</STRONG>   /usr/local/ncurses/share/ter-
1104                  minfo:/usr/share/terminfo  (corresponding to the
1105                  TERMINFO_DIRS variable)
1106
1107              <STRONG>o</STRONG>   /usr/share/terminfo (corresponding to  the  TER-
1108                  MINFO variable)
1109
1110
1111 </PRE><H3><a name="h3-TERMINFO_DIRS">TERMINFO_DIRS</a></H3><PRE>
1112        Specifies  a  list  of  directories to search for terminal
1113        descriptions.  The list is separated by colons (i.e., ":")
1114        on Unix, semicolons on OS/2 EMX.
1115
1116        All  of  the  terminal  descriptions are in terminfo form.
1117        Normally these are stored in a directory tree, using  sub-
1118        directories  named  by  the  first  letter of the terminal
1119        names therein.
1120
1121        If <STRONG>ncurses</STRONG> is built with  a  hashed  database,  then  each
1122        entry in this list can also be the path of the correspond-
1123        ing database file.
1124
1125        If <STRONG>ncurses</STRONG> is built with a  support  for  reading  termcap
1126        files directly, then an entry in this list may be the path
1127        of a termcap file.
1128
1129
1130 </PRE><H3><a name="h3-TERMPATH">TERMPATH</a></H3><PRE>
1131        If TERMCAP does not hold a file name then  <STRONG>ncurses</STRONG>  checks
1132        the  TERMPATH  environment  variable.   This  is a list of
1133        filenames separated by spaces or  colons  (i.e.,  ":")  on
1134        Unix, semicolons on OS/2 EMX.
1135
1136        If  the  TERMPATH environment variable is not set, <STRONG>ncurses</STRONG>
1137        looks in the files  /etc/termcap,  /usr/share/misc/termcap
1138        and $HOME/.termcap, in that order.
1139
1140        The  library  may be configured to disregard the following
1141        variables when the current user is the  superuser  (root),
1142        or if the application uses setuid or setgid permissions:
1143
1144        $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
1145
1146
1147 </PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
1148        Several  different  configurations are possible, depending
1149        on  the  configure  script  options  used  when   building
1150        <STRONG>ncurses</STRONG>.   There  are a few main options whose effects are
1151        visible to the applications developer using <STRONG>ncurses</STRONG>:
1152
1153        --disable-overwrite
1154             The standard include for <STRONG>ncurses</STRONG> is as noted in  <STRONG>SYN-</STRONG>
1155             <STRONG>OPSIS</STRONG>:
1156
1157           <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
1158
1159             This  option is used to avoid filename conflicts when
1160             <STRONG>ncurses</STRONG> is not the main implementation of  curses  of
1161             the  computer.   If  <STRONG>ncurses</STRONG>  is  installed disabling
1162             overwrite, it puts its  headers  in  a  subdirectory,
1163             e.g.,
1164
1165           <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
1166
1167             It  also  omits a symbolic link which would allow you
1168             to use <STRONG>-lcurses</STRONG> to build executables.
1169
1170        --enable-widec
1171             The configure script renames the library and (if  the
1172             <STRONG>--disable-overwrite</STRONG>  option  is used) puts the header
1173             files  in  a  different  subdirectory.   All  of  the
1174             library  names  have  a  "w"  appended to them, i.e.,
1175             instead of
1176
1177           <STRONG>-lncurses</STRONG>
1178
1179             you link with
1180
1181           <STRONG>-lncursesw</STRONG>
1182
1183             You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
1184             piling  for  the  wide-character  library  to use the
1185             extended (wide-character)  functions.   The  <STRONG>curses.h</STRONG>
1186             file   which  is  installed  for  the  wide-character
1187             library is designed to be compatible with the  normal
1188             library's header.  Only the size of the <STRONG>WINDOW</STRONG> struc-
1189             ture differs, and very few applications require  more
1190             than  a  pointer  to  <STRONG>WINDOW</STRONG>s.   If  the  headers are
1191             installed  allowing  overwrite,  the   wide-character
1192             library's  headers should be installed last, to allow
1193             applications to be built using  either  library  from
1194             the same set of headers.
1195
1196        --with-pthread
1197             The configure script renames the library.  All of the
1198             library names have a "t" appended to them (before any
1199             "w" added by <STRONG>--enable-widec</STRONG>).
1200
1201             The  global  variables  such as <STRONG>LINES</STRONG> are replaced by
1202             macros to allow read-only access.  At the same  time,
1203             setter-functions  are  provided  to set these values.
1204             Some applications (very few) may require  changes  to
1205             work with this convention.
1206
1207        --with-shared
1208
1209        --with-normal
1210
1211        --with-debug
1212
1213        --with-profile
1214             The  shared  and normal (static) library names differ
1215             by their  suffixes,  e.g.,  <STRONG>libncurses.so</STRONG>  and  <STRONG>libn-</STRONG>
1216             <STRONG>curses.a</STRONG>.   The  debug  and profiling libraries add a
1217             "_g" and a "_p" to the root names respectively, e.g.,
1218             <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1219
1220        --with-trace
1221             The  <STRONG>trace</STRONG>  function  normally  resides  in the debug
1222             library, but it is sometimes useful to configure this
1223             in  the  shared  library.   Configure  scripts should
1224             check for the function's existence rather than assum-
1225             ing it is always in the debug library.
1226
1227
1228 </PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
1229        /usr/share/tabset
1230             directory  containing  initialization  files  for the
1231             terminal capability database /usr/share/terminfo ter-
1232             minal capability database
1233
1234
1235 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
1236        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>  and  related  pages whose names begin "curs_"
1237        for detailed routine descriptions.
1238        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
1239
1240
1241 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
1242        The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
1243        (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
1244        cap file if the terminal setup code cannot find a terminfo
1245        entry  corresponding  to <STRONG>TERM</STRONG>.  Use of this feature is not
1246        recommended, as it essentially includes an entire  termcap
1247        compiler  in the <STRONG>ncurses</STRONG> startup code, at significant cost
1248        in core and startup cycles.
1249
1250        The <STRONG>ncurses</STRONG>  library  includes  facilities  for  capturing
1251        mouse  events on certain terminals (including xterm).  See
1252        the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1253
1254        The <STRONG>ncurses</STRONG> library includes facilities for responding  to
1255        window  resizing  events,  e.g., when running in an xterm.
1256        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
1257        details.   In addition, the library may be configured with
1258        a SIGWINCH handler.
1259
1260        The <STRONG>ncurses</STRONG> library extends the fixed set of function  key
1261        capabilities  of  terminals  by  allowing  the application
1262        designer to define additional key  sequences  at  runtime.
1263        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-
1264        ual pages for details.
1265
1266        The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
1267        nals  which  implement the ISO-6429 SGR 39 and SGR 49 con-
1268        trols, which allow an application to reset the terminal to
1269        its  original  foreground and background colors.  From the
1270        users' perspective, the application is able to  draw  col-
1271        ored  text  on  a  background  whose color is set indepen-
1272        dently, providing better  control  over  color  contrasts.
1273        See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
1274
1275        The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
1276        application output to a printer attached to  the  terminal
1277        device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1278
1279
1280 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
1281        The  <STRONG>ncurses</STRONG>  library is intended to be BASE-level confor-
1282        mant with XSI Curses.  The EXTENDED XSI Curses functional-
1283        ity (including color support) is supported.
1284
1285        A  small  number of local differences (that is, individual
1286        differences between the XSI Curses and <STRONG>ncurses</STRONG> calls)  are
1287        described  in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library man
1288        pages.
1289
1290        Unlike other implementations, this one  checks  parameters
1291        such  as  pointers to WINDOW structures to ensure they are
1292        not null.  The main reason for providing this behavior  is
1293        to guard against programmer error.  The standard interface
1294        does not provide a way for the library to tell an applica-
1295        tion  which  of  several  possible  errors  were detected.
1296        Relying on this (or some other) extension  will  adversely
1297        affect the portability of curses applications.
1298
1299        This implementation also contains several extensions:
1300
1301        <STRONG>o</STRONG>   The  routine  <STRONG>has_key</STRONG>  is  not part of XPG4, nor is it
1302            present in SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>  manual  page
1303            for details.
1304
1305        <STRONG>o</STRONG>   The  routine  <STRONG>slk_attr</STRONG>  is not part of XPG4, nor is it
1306            present in SVr4.  See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
1307            details.
1308
1309        <STRONG>o</STRONG>   The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mousein-</STRONG>
1310            <STRONG>terval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing are
1311            not  part  of XPG4, nor are they present in SVr4.  See
1312            the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1313
1314        <STRONG>o</STRONG>   The routine <STRONG>mcprint</STRONG> was not present  in  any  previous
1315            curses  implementation.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual
1316            page for details.
1317
1318        <STRONG>o</STRONG>   The routine <STRONG>wresize</STRONG> is not part of  XPG4,  nor  is  it
1319            present  in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for
1320            details.
1321
1322        <STRONG>o</STRONG>   The WINDOW structure's internal details can be  hidden
1323            from  application  programs.   See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for
1324            the discussion of <STRONG>is_scrollok</STRONG>, etc.
1325
1326        <STRONG>o</STRONG>   This implementation can be configured to provide rudi-
1327            mentary  support for multi-threaded applications.  See
1328            <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for details.
1329
1330        <STRONG>o</STRONG>   This implementation can also be configured to  provide
1331            a set of functions which improve the ability to manage
1332            multiple screens.  See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
1333
1334        In historic curses versions, delays embedded in the  capa-
1335        bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
1336        delay bits in the UNIX tty driver.   In  this  implementa-
1337        tion,  all  padding  is  done  by sending NUL bytes.  This
1338        method is slightly more expensive, but narrows the  inter-
1339        face  to  the  UNIX kernel significantly and increases the
1340        package's portability correspondingly.
1341
1342
1343 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
1344        The header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes  the
1345        header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
1346
1347        If  standard  output from a <STRONG>ncurses</STRONG> program is re-directed
1348        to something which is not a tty, screen  updates  will  be
1349        directed to standard error.  This was an undocumented fea-
1350        ture of AT&amp;T System V Release 3 curses.
1351
1352
1353 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
1354        Zeyd M. Ben-Halim, Eric  S.  Raymond,  Thomas  E.  Dickey.
1355        Based on pcurses by Pavel Curtis.
1356
1357
1358
1359                                                             <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1360 </PRE>
1361 <div class="nav">
1362 <ul>
1363 <li><a href="#h2-NAME">NAME</a></li>
1364 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
1365 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
1366 <ul>
1367 <li><a href="#h3-Initialization">Initialization</a></li>
1368 <li><a href="#h3-Datatypes">Datatypes</a></li>
1369 <li><a href="#h3-Environment-variables">Environment variables</a></li>
1370 <li><a href="#h3-Routine-and-Argument-Names">Routine and Argument Names</a></li>
1371 <li><a href="#h3-Routine-Name-Index">Routine Name Index</a></li>
1372 </ul>
1373 </li>
1374 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
1375 <li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a>
1376 <ul>
1377 <li><a href="#h3-BAUDRATE">BAUDRATE</a></li>
1378 <li><a href="#h3-COLUMNS">COLUMNS</a></li>
1379 <li><a href="#h3-ESCDELAY">ESCDELAY</a></li>
1380 <li><a href="#h3-HOME">HOME</a></li>
1381 <li><a href="#h3-LINES">LINES</a></li>
1382 <li><a href="#h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></li>
1383 <li><a href="#h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></li>
1384 <li><a href="#h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></li>
1385 <li><a href="#h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></li>
1386 <li><a href="#h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></li>
1387 <li><a href="#h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></li>
1388 <li><a href="#h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></li>
1389 <li><a href="#h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></li>
1390 <li><a href="#h3-NCURSES_TRACE">NCURSES_TRACE</a></li>
1391 <li><a href="#h3-TERM">TERM</a></li>
1392 <li><a href="#h3-TERMCAP">TERMCAP</a></li>
1393 <li><a href="#h3-TERMINFO">TERMINFO</a></li>
1394 <li><a href="#h3-TERMINFO_DIRS">TERMINFO_DIRS</a></li>
1395 <li><a href="#h3-TERMPATH">TERMPATH</a></li>
1396 </ul>
1397 </li>
1398 <li><a href="#h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></li>
1399 <li><a href="#h2-FILES">FILES</a></li>
1400 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
1401 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
1402 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
1403 <li><a href="#h2-NOTES">NOTES</a></li>
1404 <li><a href="#h2-AUTHORS">AUTHORS</a></li>
1405 </ul>
1406 </div>
1407 </BODY>
1408 </HTML>