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