1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
4 ****************************************************************************
5 * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. *
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: *
15 * The above copyright notice and this permission notice shall be included *
16 * in all copies or substantial portions of the Software. *
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. *
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 *
30 ****************************************************************************
31 * @Id: ncurses.3x,v 1.70 2004/01/11 01:45:54 tom Exp @
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">
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>
51 <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
55 <H2>SYNOPSIS</H2><PRE>
56 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
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.
67 The <STRONG>ncurses</STRONG> routines emulate the <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> library of
68 System V Release 4 UNIX, and the XPG4 curses standard (XSI
69 curses) but the <STRONG>ncurses</STRONG> library is freely redistributable
70 in source form. Differences from the SVr4 curses are sum-
71 marized under the EXTENSIONS and BUGS sections below and
72 described in detail in the EXTENSIONS and BUGS sections of
75 A program using these routines must be linked with the
76 <STRONG>-lncurses</STRONG> option, or (if it has been generated) with the
77 debugging library <STRONG>-lncurses_g</STRONG>. (Your system integrator
78 may also have installed these libraries under the names
79 <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.) The ncurses_g library generates
80 trace logs (in a file called 'trace' in the current direc-
81 tory) that describe curses actions.
83 The <STRONG>ncurses</STRONG> package supports: overall screen, window and
84 pad manipulation; output to windows and pads; reading ter-
85 minal input; control over terminal and <STRONG>curses</STRONG> input and
86 output options; environment query routines; color manipu-
87 lation; use of soft label keys; terminfo capabilities; and
88 access to low-level terminal-manipulation routines.
90 To initialize the routines, the routine <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>
91 must be called before any of the other routines that deal
92 with windows and screens are used. The routine <STRONG>endwin</STRONG>
93 must be called before exiting. To get character-at-a-time
94 input without echoing (most interactive, screen oriented
95 programs want this), the following sequence should be
98 <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
100 Most programs would additionally use the sequence:
102 <STRONG>nonl();</STRONG>
103 <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
104 <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
106 Before a <STRONG>curses</STRONG> program is run, the tab stops of the ter-
107 minal should be set and its initialization strings, if
108 defined, must be output. This can be done by executing
109 the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
110 <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually responsible
111 for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
113 The <STRONG>ncurses</STRONG> library permits manipulation of data struc-
114 tures, called <EM>windows</EM>, which can be thought of as two-
115 dimensional arrays of characters representing all or part
116 of a CRT screen. A default window called <STRONG>stdscr</STRONG>, which is
117 the size of the terminal screen, is supplied. Others may
118 be created with <STRONG>newwin</STRONG>.
120 Note that <STRONG>curses</STRONG> does not handle overlapping windows,
121 that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you
122 can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win-
123 dows and not using <STRONG>stdscr</STRONG> at all. Mixing the two will
124 result in unpredictable, and undesired, effects.
126 Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
127 These data structures are manipulated with routines
128 described here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
129 Among which the most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>.
130 More general versions of these routines are included with
131 names beginning with <STRONG>w</STRONG>, allowing the user to specify a
132 window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.)
134 After using routines to manipulate a window, <STRONG>refresh</STRONG> is
135 called, telling <STRONG>curses</STRONG> to make the user's CRT screen look
136 like <STRONG>stdscr</STRONG>. The characters in a window are actually of
137 type <STRONG>chtype</STRONG>, (character and attribute data) so that other
138 information about the character may also be stored with
141 Special windows called <EM>pads</EM> may also be manipulated.
142 These are windows which are not constrained to the size of
143 the screen and whose contents need not be completely dis-
144 played. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
146 In addition to drawing characters on the screen, video
147 attributes and colors may be supported, causing the char-
148 acters to show up in such modes as underlined, in reverse
149 video, or in color on terminals that support such display
150 enhancements. Line drawing characters may be specified to
151 be output. On input, <STRONG>curses</STRONG> is also able to translate
152 arrow and function keys that transmit escape sequences
153 into single values. The video attributes, line drawing
154 characters, and input values use names, defined in
155 <STRONG><curses.h></STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
157 If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
158 if the program is executing in a window environment, line
159 and column information in the environment will override
160 information read by <EM>terminfo</EM>. This would effect a program
161 running in an AT&T 630 layer, for example, where the size
162 of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
164 If the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro-
165 gram using <STRONG>curses</STRONG> checks for a local terminal definition
166 before checking in the standard place. For example, if
167 <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini-
170 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
172 (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
173 creation of huge directories.) However, if <STRONG>TERMINFO</STRONG> is
174 set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
176 <STRONG>$HOME/myterms/a/att4424</STRONG>,
178 and if that fails, it then checks
180 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
182 This is useful for developing experimental definitions or
183 when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
186 The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in
187 <STRONG><curses.h></STRONG> and will be filled in by <STRONG>initscr</STRONG> with the size
188 of the screen. The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
189 ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
191 The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
192 <STRONG>curscr</STRONG> which is used for certain low-level operations like
193 clearing and redrawing a screen containing garbage. The
194 <STRONG>curscr</STRONG> can be used in only a few routines.
196 <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
197 Many <STRONG>curses</STRONG> routines have two or more versions. The rou-
198 tines prefixed with <STRONG>w</STRONG> require a window argument. The rou-
199 tines prefixed with <STRONG>p</STRONG> require a pad argument. Those with-
200 out a prefix generally use <STRONG>stdscr</STRONG>.
202 The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
203 to move to before performing the appropriate action. The
204 <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the call to the
205 other routine. The coordinate <EM>y</EM> always refers to the row
206 (of the window), and <EM>x</EM> always refers to the column. The
207 upper left-hand corner is always (0,0), not (1,1).
209 The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
210 and <EM>x</EM> and <EM>y</EM> coordinates. The window argument is always
211 specified before the coordinates.
213 In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the
214 pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG>
215 <STRONG>DOW</STRONG>.
217 Option setting routines require a Boolean flag <EM>bf</EM> with the
218 value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. The vari-
219 ables <EM>ch</EM> and <EM>attrs</EM> below are always of type <STRONG>chtype</STRONG>. The
220 types <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in
221 <STRONG><curses.h></STRONG>. The type <STRONG>TERMINAL</STRONG> is defined in <STRONG><term.h></STRONG>.
222 All other arguments are integers.
224 <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
225 The following table lists each <STRONG>curses</STRONG> routine and the name
226 of the manual page on which it is described. Routines
227 flagged with `*' are ncurses-specific, not described by
228 XPG4 or present in SVr4.
230 <STRONG>curses</STRONG> Routine Name Manual Page Name
231 --------------------------------------------
232 COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
233 PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
234 _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
235 _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
236 _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
237 _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
238 _tracechtype <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
239 _tracechtype2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
240 _tracedump <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
241 _tracef <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
242 _tracemouse <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
243 add_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
244 add_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
245 add_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
246 addch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
248 addchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
249 addchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
250 addnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
251 addnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
252 addstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
253 addwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
254 assume_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
255 attr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
256 attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
257 attr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
258 attr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
259 attroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
260 attron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
261 attrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
262 baudrate <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
263 beep <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
264 bkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
265 bkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
266 bkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
267 bkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
268 border <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
269 border_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
270 box <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
271 box_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
272 can_change_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
273 cbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
274 chgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
275 clear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
276 clearok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
277 clrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
278 clrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
279 color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
280 color_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
281 copywin <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
282 curs_set <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
283 curses_version <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
284 def_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
285 def_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
286 define_key <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
287 del_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
288 delay_output <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
289 delch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
290 deleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
291 delscreen <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
292 delwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
293 derwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
294 doupdate <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
295 dupwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
296 echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
297 echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
298 echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
299 endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
300 erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
301 erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
302 erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
303 filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
304 flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
305 flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
306 get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
307 get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
308 getbegyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
309 getbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
310 getbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
311 getcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
312 getch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
314 getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
315 getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
316 getn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
317 getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
318 getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
319 getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
320 getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
321 getwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
322 getyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
323 halfdelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
324 has_colors <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
325 has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
326 has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
327 has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
328 hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
329 hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
330 idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
331 idlok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
332 immedok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
333 in_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
334 in_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
335 in_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
336 inch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
337 inchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
338 inchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
339 init_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
340 init_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
341 initscr <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
342 innstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
343 innwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
344 ins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
345 ins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
346 ins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
347 insch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
348 insdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
349 insertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
350 insnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
351 insstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
352 instr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
353 intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
354 inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
355 is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
356 is_wintouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
357 isendwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
358 key_defined <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
359 key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
360 keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
361 keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
362 keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
363 keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
364 killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
365 killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
366 leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
367 longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
368 mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
369 meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
370 mouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
371 mouseinterval <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
372 mousemask <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
373 move <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
374 mvadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
375 mvadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
376 mvadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
377 mvaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
378 mvaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
380 mvaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
381 mvaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
382 mvaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
383 mvaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
384 mvaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
385 mvchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
386 mvcur <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
387 mvdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
388 mvderwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
389 mvget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
390 mvget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
391 mvgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
392 mvgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
393 mvgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
394 mvgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
395 mvhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
396 mvhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
397 mvin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
398 mvin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
399 mvin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
400 mvinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
401 mvinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
402 mvinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
403 mvinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
404 mvinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
405 mvins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
406 mvins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
407 mvins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
408 mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
409 mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
410 mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
411 mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
412 mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
413 mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
414 mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
415 mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
416 mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
417 mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
418 mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
419 mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
420 mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
421 mvwaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
422 mvwaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
423 mvwaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
424 mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
425 mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
426 mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
427 mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
428 mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
429 mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
430 mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
431 mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
432 mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
433 mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
434 mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
435 mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
436 mvwhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
437 mvwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
438 mvwin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
439 mvwin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
440 mvwin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
441 mvwinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
442 mvwinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
443 mvwinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
444 mvwinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
446 mvwinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
447 mvwins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
448 mvwins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
449 mvwins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
450 mvwinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
451 mvwinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
452 mvwinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
453 mvwinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
454 mvwinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
455 mvwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
456 mvwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
457 mvwvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
458 mvwvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
459 napms <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
460 newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
461 newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
462 newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
463 nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
464 nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
465 nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
466 noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
467 nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
468 noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
469 noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
470 notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
471 overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
472 overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
473 pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
474 pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
475 pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
476 prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
477 printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
478 putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
479 putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
480 qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
481 raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
482 redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
483 refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
484 reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
485 reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
486 resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
487 resizeterm <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
488 restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
489 ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
490 savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
491 scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
492 scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
493 scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
494 scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
495 scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
496 scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
497 scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
498 scrollok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
499 set_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
500 set_term <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
501 setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
502 setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
503 setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
504 setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
505 setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
506 slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
507 slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
508 slk_attr_on <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
509 slk_attr_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
510 slk_attroff <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
512 slk_attron <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
513 slk_attrset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
514 slk_clear <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
515 slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
516 slk_init <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
517 slk_label <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
518 slk_noutrefresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
519 slk_refresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
520 slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
521 slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
522 slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
523 standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
524 standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
525 start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
526 subpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
527 subwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
528 syncok <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
529 term_attrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
530 termattrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
531 termname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
532 tgetent <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
533 tgetflag <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
534 tgetnum <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
535 tgetstr <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
536 tgoto <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
537 tigetflag <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
538 tigetnum <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
539 tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
540 timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
541 touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
542 touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
543 tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
544 tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
545 tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
546 trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
547 typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
548 unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
549 unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
550 ungetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
551 ungetmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
552 untouchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
553 use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
554 use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
555 use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
556 vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
557 vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
558 vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
559 vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
560 vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
561 vline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
562 vw_printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
563 vw_scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
564 vwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
565 vwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
566 wadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
567 wadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
568 wadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
569 waddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
570 waddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
571 waddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
572 waddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
573 waddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
574 waddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
575 waddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
576 wattr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
578 wattr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
579 wattr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
580 wattr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
581 wattroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
582 wattron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
583 wattrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
584 wbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
585 wbkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
586 wbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
587 wbkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
588 wborder <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
589 wborder_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
590 wchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
591 wclear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
592 wclrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
593 wclrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
594 wcolor_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
595 wcursyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
596 wdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
597 wdeleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
598 wecho_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
599 wechochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
600 wenclose <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
601 werase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
602 wget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
603 wget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
604 wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
605 wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
606 wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
607 wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
608 wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
609 whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
610 whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
611 win_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
612 win_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
613 win_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
614 winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
615 winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
616 winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
617 winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
618 winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
619 wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
620 wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
621 wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
622 winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
623 winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
624 winsertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
625 winsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
626 winsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
627 winstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
628 winwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
629 wmouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
630 wmove <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
631 wnoutrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
632 wprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
633 wredrawln <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
634 wrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
635 wresize <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
636 wscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
637 wscrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
638 wsetscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
639 wstandend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
640 wstandout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
641 wsyncdown <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
642 wsyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
644 wtimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
645 wtouchln <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
646 wunctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
647 wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
648 wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
652 <H2>RETURN VALUE</H2><PRE>
653 Routines that return an integer return <STRONG>ERR</STRONG> upon failure
654 and an integer value other than <STRONG>ERR</STRONG> upon successful com-
655 pletion, unless otherwise noted in the routine descrip-
658 All macros return the value of the <STRONG>w</STRONG> version, except
659 <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The
660 return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
661 and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
662 as the right-hand side of assignment statements).
664 Routines that return pointers return <STRONG>NULL</STRONG> on error.
668 <H2>ENVIRONMENT</H2><PRE>
669 The following environment symbols are useful for customiz-
670 ing the runtime behavior of the <STRONG>ncurses</STRONG> library. The most
671 important ones have been already discussed in detail.
674 The debugging library checks this environment symbol
675 when the application has redirected output to a file.
676 The symbol's numeric value is used for the baudrate.
677 If no value is found, <STRONG>ncurses</STRONG> uses 9600. This allows
678 testers to construct repeatable test-cases that take
679 into account costs that depend on baudrate.
681 CC When set, change occurrences of the command_character
682 (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo
683 entries to the value of this symbol. Very few ter-
684 minfo entries provide this feature.
687 Specify the width of the screen in characters.
688 Applications running in a windowing environment usu-
689 ally are able to obtain the width of the window in
690 which they are executing. If neither the $COLUMNS
691 value nor the terminal's screen size is available,
692 <STRONG>ncurses</STRONG> uses the size which may be specified in the
693 terminfo database (i.e., the <STRONG>cols</STRONG> capability).
695 It is important that your application use a correct
696 size for the screen. However, this is not always
697 possible because your application may be running on a
698 host which does not honor NAWS (Negotiations About
699 Window Size), or because you are temporarily running
702 Either COLUMNS or LINES symbols may be specified
703 independently. This is mainly useful to circumvent
704 legacy misfeatures of terminal descriptions, e.g.,
705 xterm which commonly specifies a 65 line screen. For
706 best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified
707 in a terminal description for terminals which are run
710 Use the <STRONG>use_env</STRONG> function to disable this feature.
713 Specifies the total time, in milliseconds, for which
714 ncurses will await a character sequence, e.g., a
715 function key. The default value, 1000 milliseconds,
716 is enough for most uses. However, it is made a vari-
717 able to accommodate unusual applications.
719 The most common instance where you may wish to change
720 this value is to work with slow hosts, e.g., running
721 on a network. If the host cannot read characters
722 rapidly enough, it will have the same effect as if
723 the terminal did not send characters rapidly enough.
724 The library will still see a timeout.
726 Note that xterm mouse events are built up from char-
727 acter sequences received from the xterm. If your
728 application makes heavy use of multiple-clicking, you
729 may wish to lengthen this default value because the
730 timeout applies to the composed multi-click event as
731 well as the individual clicks.
733 HOME Tells <STRONG>ncurses</STRONG> where your home directory is. That is
734 where it may read and write auxiliary terminal
741 Like COLUMNS, specify the height of the screen in
742 characters. See COLUMNS for a detailed description.
745 This applies only to the OS/2 EMX port. It specifies
746 the order of buttons on the mouse. OS/2 numbers a
747 3-button mouse inconsistently from other platforms:
753 This symbol lets you customize the mouse. The symbol
754 must be three numeric digits 1-3 in any order, e.g.,
755 123 or 321. If it is not specified, <STRONG>ncurses</STRONG> uses
758 NCURSES_ASSUMED_COLORS
759 Override the compiled-in assumption that the termi-
760 nal's default colors are white-on-black (see
761 <STRONG><A HREF="assume_default_colors.3x.html">assume_default_colors(3x)</A></STRONG>). You may set the fore-
762 ground and background color values with this environ-
763 ment variable by proving a 2-element list: fore-
764 ground,background. For example, to tell ncurses to
765 not assume anything about the colors, set this to
766 "-1,-1". To make it green-on-black, set it to "2,0".
767 Any positive value from zero to the terminfo <STRONG>max_col-</STRONG>
768 <STRONG>ors</STRONG> value is allowed.
771 Most of the terminal descriptions in the terminfo
772 database are written for real "hardware" terminals.
773 Many people use terminal emulators which run in a
774 windowing environment and use curses-based applica-
775 tions. Terminal emulators can duplicate all of the
776 important aspects of a hardware terminal, but they do
777 not have the same limitations. The chief limitation
778 of a hardware terminal from the standpoint of your
779 application is the management of dataflow, i.e.,
780 timing. Unless a hardware terminal is interfaced
781 into a terminal concentrator (which does flow con-
782 trol), it (or your application) must manage dataflow,
783 preventing overruns. The cheapest solution (no hard-
784 ware cost) is for your program to do this by pausing
785 after operations that the terminal does slowly, such
786 as clearing the display.
788 As a result, many terminal descriptions (including
789 the vt100) have delay times embedded. You may wish
790 to use these descriptions, but not want to pay the
793 Set the NCURSES_NO_PADDING symbol to disable all but
794 mandatory padding. Mandatory padding is used as a
795 part of special control sequences such as <EM>flash</EM>.
798 Normally <STRONG>ncurses</STRONG> enables buffered output during ter-
799 minal initialization. This is done (as in SVr4
800 curses) for performance reasons. For testing pur-
801 poses, both of <STRONG>ncurses</STRONG> and certain applications, this
802 feature is made optional. Setting the
803 NCURSES_NO_SETBUF variable disables output buffering,
804 leaving the output in the original (usually line
808 During initialization, the <STRONG>ncurses</STRONG> debugging library
809 checks the NCURSES_TRACE symbol. If it is defined,
810 to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function,
811 using that value as the argument.
813 The argument values, which are defined in <STRONG>curses.h</STRONG>,
814 provide several types of information. When running
815 with traces enabled, your application will write the
816 file <STRONG>trace</STRONG> to the current directory.
818 TERM Denotes your terminal type. Each terminal type is
819 distinct, though many are similar.
822 If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
823 <EM>cap</EM> support, <STRONG>ncurses</STRONG> will check for a terminal's
824 description in termcap form if it is not available in
825 the terminfo database.
827 The TERMCAP symbol contains either a terminal
828 description (with newlines stripped out), or a file
829 name telling where the information denoted by the
830 TERM symbol exists. In either case, setting it
831 directs <STRONG>ncurses</STRONG> to ignore the usual place for this
832 information, e.g., /etc/termcap.
835 Overrides the directory in which <STRONG>ncurses</STRONG> searches for
836 your terminal description. This is the simplest, but
837 not the only way to change the list of directories.
838 The complete list of directories in order follows:
840 - the last directory to which <STRONG>ncurses</STRONG> wrote, if any,
843 - the directory specified by the TERMINFO symbol
847 - directories listed in the TERMINFO_DIRS symbol
849 - one or more directories whose names are configured
850 and compiled into the ncurses library, e.g.,
854 Specifies a list of directories to search for termi-
855 nal descriptions. The list is separated by colons
856 (i.e., ":") on Unix, semicolons on OS/2 EMX. All of
857 the terminal descriptions are in terminfo form, which
858 makes a subdirectory named for the first letter of
859 the terminal names therein.
862 If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG>
863 checks the TERMPATH symbol. This is a list of file-
864 names separated by spaces or colons (i.e., ":") on
865 Unix, semicolons on OS/2 EMX. If the TERMPATH symbol
866 is not set, <STRONG>ncurses</STRONG> looks in the files /etc/termcap,
867 /usr/share/misc/termcap and $HOME/.termcap, in that
870 The library may be configured to disregard the following
871 variables when the current user is the superuser (root),
872 or if the application uses setuid or setgid permissions:
873 $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
879 directory containing initialization files for the
880 terminal capability database /usr/share/terminfo ter-
881 minal capability database
885 <H2>SEE ALSO</H2><PRE>
886 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_"
887 for detailed routine descriptions.
891 <H2>EXTENSIONS</H2><PRE>
892 The <STRONG>ncurses</STRONG> library can be compiled with an option
893 (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
894 cap file if the terminal setup code cannot find a terminfo
895 entry corresponding to <STRONG>TERM</STRONG>. Use of this feature is not
896 recommended, as it essentially includes an entire termcap
897 compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost
898 in core and startup cycles.
900 The <STRONG>ncurses</STRONG> library includes facilities for capturing
901 mouse events on certain terminals (including xterm). See
902 the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
904 The <STRONG>ncurses</STRONG> library includes facilities for responding to
905 window resizing events, e.g., when running in an xterm.
906 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
907 details. In addition, the library may be configured with
910 The <STRONG>ncurses</STRONG> library extends the fixed set of function key
911 capabilities of terminals by allowing the application
912 designer to define additional key sequences at runtime.
913 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-
914 ual pages for details.
916 The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
917 nals which implement the ISO-6429 SGR 39 and SGR 49
918 controls, which allow an application to reset the terminal
919 to its original foreground and background colors. From
920 the users' perspective, the application is able to draw
921 colored text on a background whose color is set indepen-
922 dently, providing better control over color contrasts.
923 See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
925 The <STRONG>ncurses</STRONG> library includes a function for directing
926 application output to a printer attached to the terminal
927 device. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
931 <H2>PORTABILITY</H2><PRE>
932 The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor-
933 mant with the XSI Curses standard. The EXTENDED XSI
934 Curses functionality (including color support) is sup-
937 A small number of local differences (that is, individual
938 differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
939 described in <STRONG>PORTABILITY</STRONG> sections of the library man
942 The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present
943 in SVr4. See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
945 The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it pre-
946 sent in SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
949 The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinter-</STRONG>
950 <STRONG>val</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing are not
951 part of XPG4, nor are they present in SVr4. See the
952 <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
954 The routine <STRONG>mcprint</STRONG> was not present in any previous curses
955 implementation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for
958 The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present
959 in SVr4. See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
961 In historic curses versions, delays embedded in the capa-
962 bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
963 delay bits in the UNIX tty driver. In this implementa-
964 tion, all padding is done by NUL sends. This method is
965 slightly more expensive, but narrows the interface to the
966 UNIX kernel significantly and increases the package's
967 portability correspondingly.
972 The header file <STRONG><curses.h></STRONG> automatically includes the
973 header files <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
975 If standard output from a <STRONG>ncurses</STRONG> program is re-directed
976 to something which is not a tty, screen updates will be
977 directed to standard error. This was an undocumented fea-
978 ture of AT&T System V Release 3 curses.
982 <H2>AUTHORS</H2><PRE>
983 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
984 Based on pcurses by Pavel Curtis.
988 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
992 Man(1) output converted with
993 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>