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