1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
4 ****************************************************************************
5 * Copyright (c) 1998,1999,2001,2002 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.63 2002/08/10 21:56:07 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 -->
47 <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
51 <H2>SYNOPSIS</H2><PRE>
52 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
56 <H2>DESCRIPTION</H2><PRE>
57 The <STRONG>ncurses</STRONG> library routines give the user a terminal-
58 independent method of updating character screens with
59 reasonable optimization. This implementation is ``new
60 curses'' (ncurses) and is the approved replacement for
61 4.4BSD classic curses, which has been discontinued.
63 The <STRONG>ncurses</STRONG> routines emulate the <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> library of
64 System V Release 4 UNIX, and the XPG4 curses standard (XSI
65 curses) but the <STRONG>ncurses</STRONG> library is freely redistributable
66 in source form. Differences from the SVr4 curses are
67 summarized under the EXTENSIONS and BUGS sections below
68 and described in detail in the EXTENSIONS and BUGS
69 sections of individual man pages.
71 A program using these routines must be linked with the
72 <STRONG>-lncurses</STRONG> option, or (if it has been generated) with the
73 debugging library <STRONG>-lncurses_g</STRONG>. (Your system integrator
74 may also have installed these libraries under the names
75 <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.) The ncurses_g library generates
76 trace logs (in a file called 'trace' in the current
77 directory) that describe curses actions.
79 The <STRONG>ncurses</STRONG> package supports: overall screen, window and
80 pad manipulation; output to windows and pads; reading
81 terminal input; control over terminal and <STRONG>curses</STRONG> input and
82 output options; environment query routines; color
83 manipulation; use of soft label keys; terminfo
84 capabilities; and access to low-level terminal-
85 manipulation routines.
87 To initialize the routines, the routine <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>
88 must be called before any of the other routines that deal
89 with windows and screens are used. The routine <STRONG>endwin</STRONG>
90 must be called before exiting. To get character-at-a-time
91 input without echoing (most interactive, screen oriented
92 programs want this), the following sequence should be
95 <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
97 Most programs would additionally use the sequence:
99 <STRONG>nonl();</STRONG>
100 <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
101 <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
103 Before a <STRONG>curses</STRONG> program is run, the tab stops of the
104 terminal should be set and its initialization strings, if
105 defined, must be output. This can be done by executing
106 the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
107 <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually responsible
108 for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
110 The <STRONG>ncurses</STRONG> library permits manipulation of data
111 structures, called <EM>windows</EM>, which can be thought of as
112 two-dimensional arrays of characters representing all or
113 part of a CRT screen. A default window called <STRONG>stdscr</STRONG>,
114 which is the size of the terminal screen, is supplied.
115 Others may be created with <STRONG>newwin</STRONG>.
117 Note that <STRONG>curses</STRONG> does not handle overlapping windows,
118 that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you
119 can either use <STRONG>stdscr</STRONG> or divide the screen into tiled
120 windows and not using <STRONG>stdscr</STRONG> at all. Mixing the two will
121 result in unpredictable, and undesired, effects.
123 Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
124 These data structures are manipulated with routines
125 described here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
126 Among which the most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>.
127 More general versions of these routines are included with
128 names beginning with <STRONG>w</STRONG>, allowing the user to specify a
129 window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.)
131 After using routines to manipulate a window, <STRONG>refresh</STRONG> is
132 called, telling <STRONG>curses</STRONG> to make the user's CRT screen look
133 like <STRONG>stdscr</STRONG>. The characters in a window are actually of
134 type <STRONG>chtype</STRONG>, (character and attribute data) so that other
135 information about the character may also be stored with
138 Special windows called <EM>pads</EM> may also be manipulated.
139 These are windows which are not constrained to the size of
140 the screen and whose contents need not be completely
141 displayed. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
143 In addition to drawing characters on the screen, video
144 attributes and colors may be supported, causing the
145 characters to show up in such modes as underlined, in
146 reverse video, or in color on terminals that support such
147 display enhancements. Line drawing characters may be
148 specified to be output. On input, <STRONG>curses</STRONG> is also able to
149 translate arrow and function keys that transmit escape
150 sequences into single values. The video attributes, line
151 drawing characters, and input values use names, defined in
152 <STRONG><curses.h></STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
154 If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
155 if the program is executing in a window environment, line
156 and column information in the environment will override
157 information read by <EM>terminfo</EM>. This would effect a program
158 running in an AT&T 630 layer, for example, where the size
159 of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
161 If the environment variable <STRONG>TERMINFO</STRONG> is defined, any
162 program using <STRONG>curses</STRONG> checks for a local terminal
163 definition before checking in the standard place. For
164 example, if <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled
165 terminal definition is found in
167 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
169 (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
170 creation of huge directories.) However, if <STRONG>TERMINFO</STRONG> is
171 set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
173 <STRONG>$HOME/myterms/a/att4424</STRONG>,
175 and if that fails, it then checks
177 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
179 This is useful for developing experimental definitions or
180 when write permission in <STRONG>/usr/share/terminfo</STRONG> is not
183 The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in
184 <STRONG><curses.h></STRONG> and will be filled in by <STRONG>initscr</STRONG> with the size
185 of the screen. The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the
186 values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
188 The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
189 <STRONG>curscr</STRONG> which is used for certain low-level operations like
190 clearing and redrawing a screen containing garbage. The
191 <STRONG>curscr</STRONG> can be used in only a few routines.
194 <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
195 Many <STRONG>curses</STRONG> routines have two or more versions. The
196 routines prefixed with <STRONG>w</STRONG> require a window argument. The
197 routines prefixed with <STRONG>p</STRONG> require a pad argument. Those
198 without a prefix generally use <STRONG>stdscr</STRONG>.
200 The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
201 to move to before performing the appropriate action. The
202 <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the call to the
203 other routine. The coordinate <EM>y</EM> always refers to the row
204 (of the window), and <EM>x</EM> always refers to the column. The
205 upper left-hand corner is always (0,0), not (1,1).
207 The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
208 and <EM>x</EM> and <EM>y</EM> coordinates. The window argument is always
209 specified before the coordinates.
211 In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the
212 pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type
213 <STRONG>WINDOW</STRONG>.
215 Option setting routines require a Boolean flag <EM>bf</EM> with the
216 value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. The
217 variables <EM>ch</EM> and <EM>attrs</EM> below are always of type <STRONG>chtype</STRONG>.
218 The types <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in
219 <STRONG><curses.h></STRONG>. The type <STRONG>TERMINAL</STRONG> is defined in <STRONG><term.h></STRONG>.
220 All other arguments are integers.
223 <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
224 The following table lists each <STRONG>curses</STRONG> routine and the name
225 of the manual page on which it is described. Routines
226 flagged with `*' are ncurses-specific, not described by
227 XPG4 or present in SVr4.
229 <STRONG>curses</STRONG> Routine Name Manual Page Name
230 --------------------------------------------
231 COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
232 PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
233 _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
234 _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
235 _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
236 _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
237 _tracechtype <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
238 _tracechtype2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
239 _tracedump <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
240 _tracef <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
241 _tracemouse <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
242 add_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
243 add_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
244 add_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
245 addch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
246 addchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
247 addchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
248 addnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
249 addnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
250 addstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
251 addwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
252 assume_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
253 attr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
254 attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
255 attr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
256 attr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
257 attroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
258 attron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
259 attrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
260 baudrate <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
261 beep <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
262 bkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
263 bkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
264 bkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
266 bkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
267 border <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
268 border_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
269 box <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
270 box_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
271 can_change_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
272 cbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
273 chgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
274 clear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
275 clearok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
276 clrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
277 clrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
278 color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
279 color_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
280 copywin <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
281 curs_set <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
282 curses_version <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
283 def_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
284 def_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
285 define_key <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
286 del_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
287 delay_output <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
288 delch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
289 deleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
290 delscreen <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
291 delwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
292 derwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
293 doupdate <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
294 dupwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
295 echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
296 echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
297 echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
298 endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
299 erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
300 erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
301 erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
302 filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
303 flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
304 flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
305 get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
306 get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
307 getbegyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
308 getbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
309 getbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
310 getcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
311 getch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
312 getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
313 getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
314 getn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
315 getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
316 getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
317 getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
318 getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
320 getwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
321 getyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
322 halfdelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
323 has_colors <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
324 has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
325 has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
326 has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
327 hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
328 hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
329 idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
330 idlok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
331 immedok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
332 in_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
333 in_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
334 in_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
335 inch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
336 inchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
337 inchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
338 init_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
339 init_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
340 initscr <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
341 innstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
342 innwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
343 ins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
344 ins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
345 ins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
346 insch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
347 insdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
348 insertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
349 insnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
350 insstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
351 instr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
352 intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
353 inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
354 is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
355 is_wintouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
356 isendwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
357 key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
358 keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
359 keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
360 keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
361 keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
362 killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
363 killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
364 leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
365 longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
366 mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
367 meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
368 mouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
369 mouseinterval <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
370 mousemask <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
371 move <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
372 mvadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
374 mvadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
375 mvadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
376 mvaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
377 mvaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
378 mvaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
379 mvaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
380 mvaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
381 mvaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
382 mvaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
383 mvchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
384 mvcur <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
385 mvdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
386 mvderwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
387 mvget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
388 mvget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
389 mvgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
390 mvgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
391 mvgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
392 mvgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
393 mvhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
394 mvhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
395 mvin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
396 mvin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
397 mvin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
398 mvinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
399 mvinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
400 mvinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
401 mvinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
402 mvinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
403 mvins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
404 mvins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
405 mvins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
406 mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
407 mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
408 mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
409 mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
410 mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
411 mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
412 mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
413 mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
414 mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
415 mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
416 mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
417 mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
418 mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
419 mvwaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
420 mvwaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
421 mvwaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
422 mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
423 mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
424 mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
425 mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
426 mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
428 mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
429 mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
430 mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
431 mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
432 mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
433 mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
434 mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
435 mvwhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
436 mvwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
437 mvwin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
438 mvwin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
439 mvwin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
440 mvwinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
441 mvwinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
442 mvwinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
443 mvwinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
444 mvwinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
445 mvwins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
446 mvwins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
447 mvwins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
448 mvwinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
449 mvwinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
450 mvwinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
451 mvwinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
452 mvwinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
453 mvwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
454 mvwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
455 mvwvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
456 mvwvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
457 napms <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
458 newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
459 newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
460 newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
461 nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
462 nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
463 nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
464 noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
465 nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
466 noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
467 noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
468 notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
469 overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
470 overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
471 pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
472 pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
473 pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
474 prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
475 printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
476 putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
477 putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
478 qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
479 raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
480 redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
482 refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
483 reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
484 reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
485 resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
486 resizeterm <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
487 restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
488 ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
489 savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
490 scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
491 scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
492 scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
493 scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
494 scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
495 scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
496 scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
497 scrollok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
498 set_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
499 set_term <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
500 setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
501 setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
502 setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
503 setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
504 setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
505 slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
506 slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
507 slk_attr_on <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
508 slk_attr_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
509 slk_attroff <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
510 slk_attron <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
511 slk_attrset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
512 slk_clear <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
513 slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
514 slk_init <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
515 slk_label <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
516 slk_noutrefresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
517 slk_refresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
518 slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
519 slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
520 slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
521 standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
522 standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
523 start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
524 subpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
525 subwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
526 syncok <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
527 term_attrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
528 termattrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
529 termname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
530 tgetent <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
531 tgetflag <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
532 tgetnum <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
533 tgetstr <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
534 tgoto <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
536 tigetflag <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
537 tigetnum <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
538 tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
539 timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
540 touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
541 touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
542 tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
543 tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
544 tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
545 trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
546 typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
547 unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
548 unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
549 ungetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
550 ungetmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
551 untouchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
552 use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
553 use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
554 use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
555 vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
556 vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
557 vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
558 vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
559 vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
560 vline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
561 vw_printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
562 vw_scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
563 vwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
564 vwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
565 wadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
566 wadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
567 wadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
568 waddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
569 waddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
570 waddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
571 waddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
572 waddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
573 waddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
574 waddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
575 wattr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
576 wattr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
577 wattr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
578 wattr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
579 wattroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
580 wattron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
581 wattrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
582 wbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
583 wbkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
584 wbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
585 wbkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
586 wborder <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
587 wborder_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
588 wchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
590 wclear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
591 wclrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
592 wclrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
593 wcolor_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
594 wcursyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
595 wdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
596 wdeleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
597 wecho_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
598 wechochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
599 wenclose <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
600 werase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
601 wget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
602 wget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
603 wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
604 wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
605 wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
606 wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
607 wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
608 whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
609 whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
610 win_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
611 win_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
612 win_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
613 winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
614 winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
615 winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
616 winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
617 winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
618 wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
619 wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
620 wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
621 winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
622 winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
623 winsertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
624 winsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
625 winsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
626 winstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
627 winwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
628 wmouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
629 wmove <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
630 wnoutrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
631 wprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
632 wredrawln <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
633 wrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
634 wresize <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
635 wscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
636 wscrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
637 wsetscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
638 wstandend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
639 wstandout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
640 wsyncdown <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
641 wsyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
642 wtimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
644 wtouchln <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
645 wunctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
646 wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
647 wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
651 <H2>RETURN VALUE</H2><PRE>
652 Routines that return an integer return <STRONG>ERR</STRONG> upon failure
653 and an integer value other than <STRONG>ERR</STRONG> upon successful
654 completion, unless otherwise noted in the routine
657 All macros return the value of the <STRONG>w</STRONG> version, except
658 <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, <STRONG>getmaxyx</STRONG>. The
659 return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
660 and <STRONG>getmaxyx</STRONG> are undefined (<EM>i</EM>.<EM>e</EM>., these should not be used
661 as the right-hand side of assignment statements).
663 Routines that return pointers return <STRONG>NULL</STRONG> on error.
667 <H2>ENVIRONMENT</H2><PRE>
668 The following environment symbols are useful for
669 customizing the runtime behavior of the <STRONG>ncurses</STRONG> library.
670 The most important ones have been already discussed in
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
684 terminfo entries provide this feature.
687 Specify the width of the screen in characters.
688 Applications running in a windowing environment
689 usually 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
717 variable 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
727 character 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
760 terminal'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
762 foreground and background color values with this
763 environment variable by proving a 2-element list:
764 foreground,background. For example, to tell ncurses
765 to 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
768 <STRONG>max_colors</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
775 applications. Terminal emulators can duplicate all
776 of the important aspects of a hardware terminal, but
777 they do not have the same limitations. The chief
778 limitation of a hardware terminal from the standpoint
779 of your application is the management of dataflow,
780 i.e., timing. Unless a hardware terminal is
781 interfaced into a terminal concentrator (which does
782 flow control), it (or your application) must manage
783 dataflow, preventing overruns. The cheapest solution
784 (no hardware cost) is for your program to do this by
785 pausing after operations that the terminal does
786 slowly, such 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
799 terminal initialization. This is done (as in SVr4
800 curses) for performance reasons. For testing
801 purposes, both of <STRONG>ncurses</STRONG> and certain applications,
802 this 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
823 <EM>termcap</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
855 terminal descriptions. The list is separated by
856 colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
857 All of the terminal descriptions are in terminfo
858 form, which makes a subdirectory named for the first
859 letter of 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
864 filenames separated by spaces or colons (i.e., ":")
865 on Unix, semicolons on OS/2 EMX. If the TERMPATH
866 symbol is not set, <STRONG>ncurses</STRONG> looks in the files
867 /etc/termcap, /usr/share/misc/termcap and
868 $HOME/.termcap, in that order.
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
881 terminal 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
894 /etc/termcap file if the terminal setup code cannot find a
895 terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this feature
896 is not recommended, as it essentially includes an entire
897 termcap compiler in the <STRONG>ncurses</STRONG> startup code, at
898 significant cost 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> and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> manual pages for
916 The <STRONG>ncurses</STRONG> library can exploit the capabilities of
917 terminals 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
922 independently, providing better control over color
923 contrasts. See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for
926 The <STRONG>ncurses</STRONG> library includes a function for directing
927 application output to a printer attached to the terminal
928 device. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
932 <H2>PORTABILITY</H2><PRE>
933 The <STRONG>ncurses</STRONG> library is intended to be BASE-level
934 conformant with the XSI Curses standard. Certain portions
935 of the EXTENDED XSI Curses functionality (including color
936 support) are supported. The following EXTENDED XSI Curses
937 calls in support of wide (multibyte) characters are not
938 yet implemented: <STRONG>pecho_wchar</STRONG>, <STRONG>slk_wset</STRONG>.
940 A small number of local differences (that is, individual
941 differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
942 described in <STRONG>PORTABILITY</STRONG> sections of the library man
945 The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present
946 in SVr4. See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
948 The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it
949 present in SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
952 The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>,
953 <STRONG>mouseinterval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing
954 are not part of XPG4, nor are they present in SVr4. See
955 the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
957 The routine <STRONG>mcprint</STRONG> was not present in any previous curses
958 implementation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for
961 The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present
962 in SVr4. See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
964 In historic curses versions, delays embedded in the
965 capabilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated
966 corresponding delay bits in the UNIX tty driver. In this
967 implementation, all padding is done by NUL sends. This
968 method is slightly more expensive, but narrows the
969 interface to the UNIX kernel significantly and increases
970 the package's portability correspondingly.
975 The header file <STRONG><curses.h></STRONG> automatically includes the
976 header files <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
978 If standard output from a <STRONG>ncurses</STRONG> program is re-directed
979 to something which is not a tty, screen updates will be
980 directed to standard error. This was an undocumented
981 feature of AT&T System V Release 3 curses.
985 <H2>AUTHORS</H2><PRE>
986 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
987 Based on pcurses by Pavel Curtis.
1042 Man(1) output converted with
1043 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>