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.136 2017/11/18 23:48:44 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 https://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-independent
59 method of updating character screens with reasonable optimization.
60 This implementation is "new curses" (ncurses) and is the approved
61 replacement for 4.4BSD classic curses, which has been discontinued.
62 This describes <STRONG>ncurses</STRONG> version 6.0 (patch 20180106).
64 The <STRONG>ncurses</STRONG> library emulates the curses library of System V Release 4
65 UNIX, and XPG4 (X/Open Portability Guide) curses (also known as XSI
66 curses). XSI stands for X/Open System Interfaces Extension. The
67 <STRONG>ncurses</STRONG> library is freely redistributable in source form. Differences
68 from the SVr4 curses are summarized under the <STRONG>EXTENSIONS</STRONG> and <STRONG>PORTABIL-</STRONG>
69 <STRONG>ITY</STRONG> sections below and described in detail in the respective <STRONG>EXTEN-</STRONG>
70 <STRONG>SIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG> sections of individual man pages.
72 The <STRONG>ncurses</STRONG> library also provides many useful extensions, i.e., fea-
73 tures which cannot be implemented by a simple add-on library but which
74 require access to the internals of the library.
76 A program using these routines must be linked with the <STRONG>-lncurses</STRONG>
77 option, or (if it has been generated) with the debugging library
78 <STRONG>-lncurses_g</STRONG>. (Your system integrator may also have installed these
79 libraries under the names <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.) The ncurses_g
80 library generates trace logs (in a file called 'trace' in the current
81 directory) that describe curses actions. See also the section on
82 <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
84 The <STRONG>ncurses</STRONG> package supports: overall screen, window and pad manipula-
85 tion; output to windows and pads; reading terminal input; control over
86 terminal and <STRONG>curses</STRONG> input and output options; environment query rou-
87 tines; color manipulation; use of soft label keys; terminfo capabili-
88 ties; and access to low-level terminal-manipulation routines.
91 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
92 The library uses the locale which the calling program has initialized.
93 That is normally done with <STRONG>setlocale</STRONG>:
95 <STRONG>setlocale(LC_ALL,</STRONG> <STRONG>"");</STRONG>
97 If the locale is not initialized, the library assumes that characters
98 are printable as in ISO-8859-1, to work with certain legacy programs.
99 You should initialize the locale and not rely on specific details of
100 the library when the locale has not been setup.
102 The function <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> must be called to initialize the
103 library before any of the other routines that deal with windows and
104 screens are used. The routine <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> must be called before exit-
107 To get character-at-a-time input without echoing (most interactive,
108 screen oriented programs want this), the following sequence should be
111 <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
113 Most programs would additionally use the sequence:
115 <STRONG>nonl();</STRONG>
116 <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
117 <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
119 Before a <STRONG>curses</STRONG> program is run, the tab stops of the terminal should be
120 set and its initialization strings, if defined, must be output. This
121 can be done by executing the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environ-
122 ment variable <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually responsible
123 for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
126 </PRE><H3><a name="h3-Datatypes">Datatypes</a></H3><PRE>
127 The <STRONG>ncurses</STRONG> library permits manipulation of data structures, called
128 <EM>windows</EM>, which can be thought of as two-dimensional arrays of charac-
129 ters representing all or part of a CRT screen. A default window called
130 <STRONG>stdscr</STRONG>, which is the size of the terminal screen, is supplied. Others
131 may be created with <STRONG>newwin</STRONG>.
133 Note that <STRONG>curses</STRONG> does not handle overlapping windows, that's done by
134 the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you can either use <STRONG>stdscr</STRONG> or
135 divide the screen into tiled windows and not using <STRONG>stdscr</STRONG> at all. Mix-
136 ing the two will result in unpredictable, and undesired, effects.
138 Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>. These data
139 structures are manipulated with routines described here and elsewhere
140 in the <STRONG>ncurses</STRONG> manual pages. Among those, the most basic routines are
141 <STRONG>move</STRONG> and <STRONG>addch</STRONG>. More general versions of these routines are included
142 with names beginning with <STRONG>w</STRONG>, allowing the user to specify a window.
143 The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
145 After using routines to manipulate a window, <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> is called,
146 telling <STRONG>curses</STRONG> to make the user's CRT screen look like <STRONG>stdscr</STRONG>. The
147 characters in a window are actually of type <STRONG>chtype</STRONG>, (character and
148 attribute data) so that other information about the character may also
149 be stored with each character.
151 Special windows called <EM>pads</EM> may also be manipulated. These are windows
152 which are not constrained to the size of the screen and whose contents
153 need not be completely displayed. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more informa-
156 In addition to drawing characters on the screen, video attributes and
157 colors may be supported, causing the characters to show up in such
158 modes as underlined, in reverse video, or in color on terminals that
159 support such display enhancements. Line drawing characters may be
160 specified to be output. On input, <STRONG>curses</STRONG> is also able to translate
161 arrow and function keys that transmit escape sequences into single val-
162 ues. The video attributes, line drawing characters, and input values
163 use names, defined in <STRONG><curses.h></STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and
164 <STRONG>KEY_LEFT</STRONG>.
167 </PRE><H3><a name="h3-Environment-variables">Environment variables</a></H3><PRE>
168 If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or if the pro-
169 gram is executing in a window environment, line and column information
170 in the environment will override information read by <EM>terminfo</EM>. This
171 would affect a program running in an AT&T 630 layer, for example, where
172 the size of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
174 If the environment variable <STRONG>TERMINFO</STRONG> is defined, any program using
175 <STRONG>curses</STRONG> checks for a local terminal definition before checking in the
176 standard place. For example, if <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the com-
177 piled terminal definition is found in
179 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
181 (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid creation of
182 huge directories.) However, if <STRONG>TERMINFO</STRONG> is set to <STRONG>$HOME/myterms</STRONG>,
183 <STRONG>curses</STRONG> first checks
185 <STRONG>$HOME/myterms/a/att4424</STRONG>,
187 and if that fails, it then checks
189 <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
191 This is useful for developing experimental definitions or when write
192 permission in <STRONG>/usr/share/terminfo</STRONG> is not available.
194 The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in <STRONG><curses.h></STRONG> and will
195 be filled in by <STRONG>initscr</STRONG> with the size of the screen. The constants
196 <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the values <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
198 The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable <STRONG>curscr</STRONG> which is
199 used for certain low-level operations like clearing and redrawing a
200 screen containing garbage. The <STRONG>curscr</STRONG> can be used in only a few rou-
204 </PRE><H3><a name="h3-Routine-and-Argument-Names">Routine and Argument Names</a></H3><PRE>
205 Many <STRONG>curses</STRONG> routines have two or more versions. The routines prefixed
206 with <STRONG>w</STRONG> require a window argument. The routines prefixed with <STRONG>p</STRONG> require
207 a pad argument. Those without a prefix generally use <STRONG>stdscr</STRONG>.
209 The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate to move to
210 before performing the appropriate action. The <STRONG>mv</STRONG> routines imply a call
211 to <STRONG>move</STRONG> before the call to the other routine. The coordinate <EM>y</EM> always
212 refers to the row (of the window), and <EM>x</EM> always refers to the column.
213 The upper left-hand corner is always (0,0), not (1,1).
215 The routines prefixed with <STRONG>mvw</STRONG> take both a window argument and <EM>x</EM> and <EM>y</EM>
216 coordinates. The window argument is always specified before the coor-
219 In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the pad affected;
220 <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WINDOW</STRONG>.
222 Option setting routines require a Boolean flag <EM>bf</EM> with the value <STRONG>TRUE</STRONG>
223 or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of the data types used in
224 the library routines, such as <STRONG>WINDOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are
225 defined in <STRONG><curses.h></STRONG>. Types used for the terminfo routines such as
226 <STRONG>TERMINAL</STRONG> are defined in <STRONG><term.h></STRONG>.
228 This manual page describes functions which may appear in any configura-
229 tion of the library. There are two common configurations of the
233 the "normal" library, which handles 8-bit characters. The nor-
234 mal (8-bit) library stores characters combined with attributes
235 in <STRONG>chtype</STRONG> data.
237 Attributes alone (no corresponding character) may be stored in
238 <STRONG>chtype</STRONG> or the equivalent <STRONG>attr_t</STRONG> data. In either case, the data
239 is stored in something like an integer.
241 Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a <STRONG>chtype</STRONG>.
244 the so-called "wide" library, which handles multibyte charac-
245 ters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>). The "wide"
246 library includes all of the calls from the "normal" library.
247 It adds about one third more calls using data types which store
248 multibyte characters:
250 <STRONG>cchar_t</STRONG>
251 corresponds to <STRONG>chtype</STRONG>. However it is a structure, because
252 more data is stored than can fit into an integer. The
253 characters are large enough to require a full integer
254 value - and there may be more than one character per cell.
255 The video attributes and color are stored in separate
256 fields of the structure.
258 Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored as a
259 <STRONG>cchar_t</STRONG>.
261 <STRONG>wchar_t</STRONG>
262 stores a "wide" character. Like <STRONG>chtype</STRONG>, this may be an
265 <STRONG>wint_t</STRONG>
266 stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, though both may
269 The "wide" library provides new functions which are analogous
270 to functions in the "normal" library. There is a naming con-
271 vention which relates many of the normal/wide variants: a "_w"
272 is inserted into the name. For example, <STRONG>waddch</STRONG> becomes
273 <STRONG>wadd_wch</STRONG>.
276 </PRE><H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE>
277 The following table lists each <STRONG>curses</STRONG> routine and the name of the man-
278 ual page on which it is described. Routines flagged with "*" are
279 ncurses-specific, not described by XPG4 or present in SVr4.
281 <STRONG>curses</STRONG> Routine Name Manual Page Name
282 ---------------------------------------------
283 COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
284 PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
285 _nc_free_and_exit <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
286 _nc_freeall <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
287 _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
288 _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
289 _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
290 _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
291 _tracechtype <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
292 _tracechtype2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
293 _tracedump <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
294 _tracef <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
295 _tracemouse <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
296 add_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
297 add_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
298 add_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
299 addch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
300 addchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
301 addchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
302 addnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
303 addnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
304 addstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
305 addwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
306 alloc_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
307 assume_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
308 attr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
309 attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
310 attr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
311 attr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
312 attroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
313 attron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
314 attrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
316 baudrate <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
317 beep <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
318 bkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
319 bkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
320 bkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
321 bkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
322 border <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
323 border_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
324 box <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
325 box_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
326 can_change_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
327 cbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
328 chgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
329 clear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
330 clearok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
331 clrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
332 clrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
333 color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
334 color_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
335 copywin <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
336 curs_set <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
337 curses_version <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
338 def_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
339 def_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
340 define_key <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
341 del_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
342 delay_output <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
343 delch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
344 deleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
345 delscreen <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
346 delwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
347 derwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
348 doupdate <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
349 dupwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
350 echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
351 echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
352 echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
353 endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
354 erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
355 erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
356 erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
357 extended_color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
358 extended_pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
359 extended_slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
360 filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
361 find_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
362 flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
363 flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
364 free_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
365 get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
366 get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
367 getattrs <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
368 getbegx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
369 getbegy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
370 getbegyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
371 getbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
372 getbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
373 getcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
374 getch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
375 getcurx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
376 getcury <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
377 getmaxx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
378 getmaxy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
379 getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
380 getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
382 getn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
383 getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
384 getparx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
385 getpary <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
386 getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
387 getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
388 getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
389 getwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
390 getyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
391 halfdelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
392 has_colors <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
393 has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
394 has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
395 has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
396 hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
397 hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
398 idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
399 idlok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
400 immedok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
401 in_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
402 in_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
403 in_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
404 inch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
405 inchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
406 inchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
407 init_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
408 init_extended_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
409 init_extended_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
410 init_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
411 initscr <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
412 innstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
413 innwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
414 ins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
415 ins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
416 ins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
417 insch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
418 insdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
419 insertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
420 insnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
421 insstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
422 instr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
423 intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
424 inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
425 is_cleared <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
426 is_idcok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
427 is_idlok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
428 is_immedok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
429 is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
430 is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
431 is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
432 is_nodelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
433 is_notimeout <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
434 is_pad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
435 is_scrollok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
436 is_subwin <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
437 is_syncok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
438 is_term_resized <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
439 is_wintouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
440 isendwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
441 key_defined <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
442 key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
443 keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
444 keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
445 keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
446 keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
448 killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
449 killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
450 leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
451 longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
452 mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
453 meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
454 mouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
455 mouseinterval <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
456 mousemask <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
457 move <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
458 mvadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
459 mvadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
460 mvadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
461 mvaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
462 mvaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
463 mvaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
464 mvaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
465 mvaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
466 mvaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
467 mvaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
468 mvchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
469 mvcur <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
470 mvdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
471 mvderwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
472 mvget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
473 mvget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
474 mvgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
475 mvgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
476 mvgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
477 mvgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
478 mvhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
479 mvhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
480 mvin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
481 mvin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
482 mvin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
483 mvinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
484 mvinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
485 mvinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
486 mvinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
487 mvinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
488 mvins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
489 mvins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
490 mvins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
491 mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
492 mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
493 mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
494 mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
495 mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
496 mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
497 mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
498 mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
499 mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
500 mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
501 mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
502 mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
503 mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
504 mvwaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
505 mvwaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
506 mvwaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
507 mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
508 mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
509 mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
510 mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
511 mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
512 mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
514 mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
515 mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
516 mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
517 mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
518 mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
519 mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
520 mvwhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
521 mvwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
522 mvwin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
523 mvwin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
524 mvwin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
525 mvwinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
526 mvwinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
527 mvwinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
528 mvwinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
529 mvwinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
530 mvwins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
531 mvwins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
532 mvwins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
533 mvwinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
534 mvwinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
535 mvwinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
536 mvwinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
537 mvwinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
538 mvwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
539 mvwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
540 mvwvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
541 mvwvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
542 napms <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
543 newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
544 newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
545 newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
546 nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
547 nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
548 nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
549 noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
550 nofilter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
551 nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
552 noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
553 noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
554 notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
555 overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
556 overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
557 pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
558 pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
559 pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
560 prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
561 printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
562 putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
563 putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
564 qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
565 raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
566 redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
567 refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
568 reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
569 reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
570 resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
571 resize_term <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
572 resizeterm <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
573 restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
574 ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
575 savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
576 scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
577 scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
578 scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
580 scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
581 scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
582 scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
583 scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
584 scrollok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
585 set_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
586 set_term <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
587 setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
588 setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
589 setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
590 setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
591 setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
592 slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
593 slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
594 slk_attr_on <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
595 slk_attr_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
596 slk_attroff <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
597 slk_attron <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
598 slk_attrset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
599 slk_clear <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
600 slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
601 slk_init <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
602 slk_label <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
603 slk_noutrefresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
604 slk_refresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
605 slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
606 slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
607 slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
608 standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
609 standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
610 start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
611 subpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
612 subwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
613 syncok <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
614 term_attrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
615 termattrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
616 termname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
617 tgetent <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
618 tgetflag <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
619 tgetnum <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
620 tgetstr <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
621 tgoto <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
622 tigetflag <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
623 tigetnum <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
624 tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
625 timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
626 tiparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>*
627 touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
628 touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
629 tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
630 tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
631 tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
632 trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
633 typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
634 unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
635 unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
636 ungetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
637 ungetmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
638 untouchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
639 use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
640 use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
641 use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
642 use_legacy_coding <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
643 use_tioctl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
644 vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
646 vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
647 vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
648 vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
649 vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
650 vline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
651 vw_printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
652 vw_scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
653 vwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
654 vwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
655 wadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
656 wadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
657 wadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
658 waddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
659 waddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
660 waddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
661 waddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
662 waddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
663 waddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
664 waddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
665 wattr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
666 wattr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
667 wattr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
668 wattr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
669 wattroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
670 wattron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
671 wattrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
672 wbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
673 wbkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
674 wbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
675 wbkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
676 wborder <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
677 wborder_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
678 wchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
679 wclear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
680 wclrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
681 wclrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
682 wcolor_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
683 wcursyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
684 wdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
685 wdeleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
686 wecho_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
687 wechochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
688 wenclose <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
689 werase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
690 wget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
691 wget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
692 wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
693 wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
694 wgetdelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
695 wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
696 wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
697 wgetparent <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
698 wgetscrreg <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
699 wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
700 whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
701 whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
702 win_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
703 win_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
704 win_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
705 winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
706 winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
707 winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
708 winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
709 winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
710 wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
712 wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
713 wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
714 winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
715 winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
716 winsertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
717 winsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
718 winsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
719 winstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
720 winwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
721 wmouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
722 wmove <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
723 wnoutrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
724 wprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
725 wredrawln <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
726 wrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
727 wresize <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
728 wscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
729 wscrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
730 wsetscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
731 wstandend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
732 wstandout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
733 wsyncdown <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
734 wsyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
735 wtimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
736 wtouchln <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
737 wunctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
738 wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
739 wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
742 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
743 Routines that return an integer return <STRONG>ERR</STRONG> upon failure and an integer
744 value other than <STRONG>ERR</STRONG> upon successful completion, unless otherwise noted
745 in the routine descriptions.
747 As a general rule, routines check for null pointers passed as parame-
748 ters, and handle this as an error.
750 All macros return the value of the <STRONG>w</STRONG> version, except <STRONG>setscrreg</STRONG>,
751 <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The return values of
752 <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG> are undefined
753 (i.e., these should not be used as the right-hand side of assignment
756 Routines that return pointers return <STRONG>NULL</STRONG> on error.
759 </PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
760 The following environment symbols are useful for customizing the run-
761 time behavior of the <STRONG>ncurses</STRONG> library. The most important ones have
762 been already discussed in detail.
765 </PRE><H3><a name="h3-CC-command-character">CC command-character</a></H3><PRE>
766 When set, change occurrences of the command_character (i.e., the <STRONG>cmdch</STRONG>
767 capability) of the loaded terminfo entries to the value of this vari-
768 able. Very few terminfo entries provide this feature.
770 Because this name is also used in development environments to represent
771 the C compiler's name, <STRONG>ncurses</STRONG> ignores it if it does not happen to be a
775 </PRE><H3><a name="h3-BAUDRATE">BAUDRATE</a></H3><PRE>
776 The debugging library checks this environment variable when the appli-
777 cation has redirected output to a file. The variable's numeric value
778 is used for the baudrate. If no value is found, <STRONG>ncurses</STRONG> uses 9600.
779 This allows testers to construct repeatable test-cases that take into
780 account costs that depend on baudrate.
783 </PRE><H3><a name="h3-COLUMNS">COLUMNS</a></H3><PRE>
784 Specify the width of the screen in characters. Applications running in
785 a windowing environment usually are able to obtain the width of the
786 window in which they are executing. If neither the <STRONG>COLUMNS</STRONG> value nor
787 the terminal's screen size is available, <STRONG>ncurses</STRONG> uses the size which
788 may be specified in the terminfo database (i.e., the <STRONG>cols</STRONG> capability).
790 It is important that your application use a correct size for the
791 screen. This is not always possible because your application may be
792 running on a host which does not honor NAWS (Negotiations About Window
793 Size), or because you are temporarily running as another user. How-
794 ever, setting <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> overrides the library's use of the
795 screen size obtained from the operating system.
797 Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified independently. This
798 is mainly useful to circumvent legacy misfeatures of terminal descrip-
799 tions, e.g., xterm which commonly specifies a 65 line screen. For best
800 results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be specified in a terminal descrip-
801 tion for terminals which are run as emulations.
803 Use the <STRONG>use_env</STRONG> function to disable all use of external environment
804 (but not including system calls) to determine the screen size. Use the
805 <STRONG>use_tioctl</STRONG> function to update <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen size
806 obtained from system calls or the terminal database.
809 </PRE><H3><a name="h3-ESCDELAY">ESCDELAY</a></H3><PRE>
810 Specifies the total time, in milliseconds, for which ncurses will await
811 a character sequence, e.g., a function key. The default value, 1000
812 milliseconds, is enough for most uses. However, it is made a variable
813 to accommodate unusual applications.
815 The most common instance where you may wish to change this value is to
816 work with slow hosts, e.g., running on a network. If the host cannot
817 read characters rapidly enough, it will have the same effect as if the
818 terminal did not send characters rapidly enough. The library will
821 Note that xterm mouse events are built up from character sequences
822 received from the xterm. If your application makes heavy use of multi-
823 ple-clicking, you may wish to lengthen this default value because the
824 timeout applies to the composed multi-click event as well as the indi-
827 In addition to the environment variable, this implementation provides a
828 global variable with the same name. Portable applications should not
829 rely upon the presence of ESCDELAY in either form, but setting the
830 environment variable rather than the global variable does not create
831 problems when compiling an application.
834 </PRE><H3><a name="h3-HOME">HOME</a></H3><PRE>
835 Tells <STRONG>ncurses</STRONG> where your home directory is. That is where it may read
836 and write auxiliary terminal descriptions:
842 </PRE><H3><a name="h3-LINES">LINES</a></H3><PRE>
843 Like COLUMNS, specify the height of the screen in characters. See COL-
844 UMNS for a detailed description.
847 </PRE><H3><a name="h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></H3><PRE>
848 This applies only to the OS/2 EMX port. It specifies the order of but-
849 tons on the mouse. OS/2 numbers a 3-button mouse inconsistently from
856 This variable lets you customize the mouse. The variable must be three
857 numeric digits 1-3 in any order, e.g., 123 or 321. If it is not speci-
858 fied, <STRONG>ncurses</STRONG> uses 132.
861 </PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></H3><PRE>
862 Override the compiled-in assumption that the terminal's default colors
863 are white-on-black (see <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>). You may set the fore-
864 ground and background color values with this environment variable by
865 proving a 2-element list: foreground,background. For example, to tell
866 ncurses to not assume anything about the colors, set this to "-1,-1".
867 To make it green-on-black, set it to "2,0". Any positive value from
868 zero to the terminfo <STRONG>max_colors</STRONG> value is allowed.
871 </PRE><H3><a name="h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></H3><PRE>
872 This applies only to the MinGW port of ncurses.
874 The <STRONG>Console2</STRONG> program's handling of the Microsoft Console API call <STRONG>Cre-</STRONG>
875 <STRONG>ateConsoleScreenBuffer</STRONG> is defective. Applications which use this will
876 hang. However, it is possible to simulate the action of this call by
877 mapping coordinates, explicitly saving and restoring the original
878 screen contents. Setting the environment variable <STRONG>NCGDB</STRONG> has the same
882 </PRE><H3><a name="h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></H3><PRE>
883 This applies only to ncurses configured to use the GPM interface.
885 If present, the environment variable is a list of one or more terminal
886 names against which the <STRONG>TERM</STRONG> environment variable is matched. Setting
887 it to an empty value disables the GPM interface; using the built-in
888 support for xterm, etc.
890 If the environment variable is absent, ncurses will attempt to open GPM
891 if <STRONG>TERM</STRONG> contains "linux".
894 </PRE><H3><a name="h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></H3><PRE>
895 <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement optimization. In
896 some cases, your terminal driver may not handle these properly. Set
897 this environment variable to disable the feature. You can also adjust
898 your <STRONG>stty</STRONG> settings to avoid the problem.
901 </PRE><H3><a name="h3-NCURSES_NO_MAGIC_COOKIE">NCURSES_NO_MAGIC_COOKIE</a></H3><PRE>
902 Some terminals use a magic-cookie feature which requires special han-
903 dling to make highlighting and other video attributes display properly.
904 You can suppress the highlighting entirely for these terminals by set-
905 ting this environment variable.
908 </PRE><H3><a name="h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></H3><PRE>
909 Most of the terminal descriptions in the terminfo database are written
910 for real "hardware" terminals. Many people use terminal emulators
911 which run in a windowing environment and use curses-based applications.
912 Terminal emulators can duplicate all of the important aspects of a
913 hardware terminal, but they do not have the same limitations. The
914 chief limitation of a hardware terminal from the standpoint of your
915 application is the management of dataflow, i.e., timing. Unless a
916 hardware terminal is interfaced into a terminal concentrator (which
917 does flow control), it (or your application) must manage dataflow, pre-
918 venting overruns. The cheapest solution (no hardware cost) is for your
919 program to do this by pausing after operations that the terminal does
920 slowly, such as clearing the display.
922 As a result, many terminal descriptions (including the vt100) have
923 delay times embedded. You may wish to use these descriptions, but not
924 want to pay the performance penalty.
926 Set the NCURSES_NO_PADDING environment variable to disable all but
927 mandatory padding. Mandatory padding is used as a part of special con-
928 trol sequences such as <EM>flash</EM>.
931 </PRE><H3><a name="h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></H3><PRE>
932 This setting is obsolete. Before changes
934 <STRONG>o</STRONG> started with 5.9 patch 20120825 and
936 <STRONG>o</STRONG> continued though 5.9 patch 20130126
938 <STRONG>ncurses</STRONG> enabled buffered output during terminal initialization. This
939 was done (as in SVr4 curses) for performance reasons. For testing pur-
940 poses, both of <STRONG>ncurses</STRONG> and certain applications, this feature was made
941 optional. Setting the NCURSES_NO_SETBUF variable disabled output
942 buffering, leaving the output in the original (usually line buffered)
945 In the current implementation, ncurses performs its own buffering and
946 does not require this workaround. It does not modify the buffering of
949 The reason for the change was to make the behavior for interrupts and
950 other signals more robust. One drawback is that certain nonconven-
951 tional programs would mix ordinary stdio calls with ncurses calls and
952 (usually) work. This is no longer possible since ncurses is not using
953 the buffered standard output but its own output (to the same file
954 descriptor). As a special case, the low-level calls such as <STRONG>putp</STRONG> still
955 use the standard output. But high-level curses calls do not.
958 </PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></H3><PRE>
959 During initialization, the <STRONG>ncurses</STRONG> library checks for special cases
960 where VT100 line-drawing (and the corresponding alternate character set
961 capabilities) described in the terminfo are known to be missing.
962 Specifically, when running in a UTF-8 locale, the Linux console emula-
963 tor and the GNU screen program ignore these. Ncurses checks the <STRONG>TERM</STRONG>
964 environment variable for these. For other special cases, you should
965 set this environment variable. Doing this tells ncurses to use Unicode
966 values which correspond to the VT100 line-drawing glyphs. That works
967 for the special cases cited, and is likely to work for terminal emula-
970 When setting this variable, you should set it to a nonzero value. Set-
971 ting it to zero (or to a nonnumber) disables the special check for
972 "linux" and "screen".
974 As an alternative to the environment variable, ncurses checks for an
975 extended terminfo capability <STRONG>U8</STRONG>. This is a numeric capability which
976 can be compiled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>. For example
978 # linux console, if patched to provide working
979 # VT100 shift-in/shift-out, with corresponding font.
980 linux-vt100|linux console with VT100 line-graphics,
983 # uxterm with vt100Graphics resource set to false
984 xterm-utf8|xterm relying on UTF-8 line-graphics,
987 The name "U8" is chosen to be two characters, to permit it to be used
988 by applications that use ncurses' termcap interface.
991 </PRE><H3><a name="h3-NCURSES_TRACE">NCURSES_TRACE</a></H3><PRE>
992 During initialization, the <STRONG>ncurses</STRONG> debugging library checks the
993 NCURSES_TRACE environment variable. If it is defined, to a numeric
994 value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function, using that value as the argu-
997 The argument values, which are defined in <STRONG>curses.h</STRONG>, provide several
998 types of information. When running with traces enabled, your applica-
999 tion will write the file <STRONG>trace</STRONG> to the current directory.
1001 See <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> for more information.
1004 </PRE><H3><a name="h3-TERM">TERM</a></H3><PRE>
1005 Denotes your terminal type. Each terminal type is distinct, though
1008 <STRONG>TERM</STRONG> is commonly set by terminal emulators to help applications find a
1009 workable terminal description. Some of those choose a popular approxi-
1010 mation, e.g., "ansi", "vt100", "xterm" rather than an exact fit. Not
1011 infrequently, your application will have problems with that approach,
1012 e.g., incorrect function-key definitions.
1014 If you set <STRONG>TERM</STRONG> in your environment, it has no effect on the operation
1015 of the terminal emulator. It only affects the way applications work
1016 within the terminal. Likewise, as a general rule (<STRONG>xterm</STRONG> being a rare
1017 exception), terminal emulators which allow you to specify <STRONG>TERM</STRONG> as a
1018 parameter or configuration value do not change their behavior to match
1022 </PRE><H3><a name="h3-TERMCAP">TERMCAP</a></H3><PRE>
1023 If the <STRONG>ncurses</STRONG> library has been configured with <EM>termcap</EM> support,
1024 <STRONG>ncurses</STRONG> will check for a terminal's description in termcap form if it
1025 is not available in the terminfo database.
1027 The <STRONG>TERMCAP</STRONG> environment variable contains either a terminal description
1028 (with newlines stripped out), or a file name telling where the informa-
1029 tion denoted by the <STRONG>TERM</STRONG> environment variable exists. In either case,
1030 setting it directs <STRONG>ncurses</STRONG> to ignore the usual place for this informa-
1031 tion, e.g., /etc/termcap.
1034 </PRE><H3><a name="h3-TERMINFO">TERMINFO</a></H3><PRE>
1035 <STRONG>ncurses</STRONG> can be configured to read from multiple terminal databases.
1036 The <STRONG>TERMINFO</STRONG> variable overrides the location for the default terminal
1037 database. Terminal descriptions (in terminal format) are stored in
1040 <STRONG>o</STRONG> Normally these are stored in a directory tree, using subdirectories
1041 named by the first letter of the terminal names therein.
1043 This is the scheme used in System V, which legacy Unix systems use,
1044 and the <STRONG>TERMINFO</STRONG> variable is used by <EM>curses</EM> applications on those
1045 systems to override the default location of the terminal database.
1047 <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built to use hashed databases, then each entry in
1048 this list may be the path of a hashed database file, e.g.,
1050 /usr/share/terminfo.db
1054 /usr/share/terminfo/
1056 The hashed database uses less disk-space and is a little faster
1057 than the directory tree. However, some applications assume the
1058 existence of the directory tree, reading it directly rather than
1059 using the terminfo library calls.
1061 <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built with a support for reading termcap files
1062 directly, then an entry in this list may be the path of a termcap
1065 <STRONG>o</STRONG> If the <STRONG>TERMINFO</STRONG> variable begins with "hex:" or "b64:", <STRONG>ncurses</STRONG> uses
1066 the remainder of that variable as a compiled terminal description.
1067 You might produce the base64 format using <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>:
1069 TERMINFO="$(infocmp -0 -Q2 -q)"
1072 The compiled description is used if it corresponds to the terminal
1073 identified by the <STRONG>TERM</STRONG> variable.
1075 Setting <STRONG>TERMINFO</STRONG> is the simplest, but not the only way to set location
1076 of the default terminal database. The complete list of database loca-
1077 tions in order follows:
1079 <STRONG>o</STRONG> the last terminal database to which <STRONG>ncurses</STRONG> wrote, if any, is
1082 <STRONG>o</STRONG> the location specified by the TERMINFO environment variable
1084 <STRONG>o</STRONG> $HOME/.terminfo
1086 <STRONG>o</STRONG> locations listed in the TERMINFO_DIRS environment variable
1088 <STRONG>o</STRONG> one or more locations whose names are configured and compiled
1089 into the ncurses library, i.e.,
1091 <STRONG>o</STRONG> /usr/local/ncurses/share/terminfo:/usr/share/terminfo (corre-
1092 sponding to the TERMINFO_DIRS variable)
1094 <STRONG>o</STRONG> /usr/share/terminfo (corresponding to the TERMINFO variable)
1097 </PRE><H3><a name="h3-TERMINFO_DIRS">TERMINFO_DIRS</a></H3><PRE>
1098 Specifies a list of locations to search for terminal descriptions.
1099 Each location in the list is a terminal database as described in the
1100 section on the <STRONG>TERMINFO</STRONG> variable. The list is separated by colons
1101 (i.e., ":") on Unix, semicolons on OS/2 EMX.
1103 There is no corresponding feature in System V terminfo; it is an exten-
1104 sion developed for <STRONG>ncurses</STRONG>.
1107 </PRE><H3><a name="h3-TERMPATH">TERMPATH</a></H3><PRE>
1108 If <STRONG>TERMCAP</STRONG> does not hold a file name then <STRONG>ncurses</STRONG> checks the <STRONG>TERMPATH</STRONG>
1109 environment variable. This is a list of filenames separated by spaces
1110 or colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
1112 If the <STRONG>TERMPATH</STRONG> environment variable is not set, <STRONG>ncurses</STRONG> looks in the
1115 /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap,
1119 The library may be configured to disregard the following variables when
1120 the current user is the superuser (root), or if the application uses
1121 setuid or setgid permissions:
1123 $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
1126 </PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
1127 Several different configurations are possible, depending on the config-
1128 ure script options used when building <STRONG>ncurses</STRONG>. There are a few main
1129 options whose effects are visible to the applications developer using
1130 <STRONG>ncurses</STRONG>:
1133 The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYNOPSIS</STRONG>:
1135 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
1137 This option is used to avoid filename conflicts when <STRONG>ncurses</STRONG> is
1138 not the main implementation of curses of the computer. If <STRONG>ncurses</STRONG>
1139 is installed disabling overwrite, it puts its headers in a subdi-
1142 <STRONG>#include</STRONG> <STRONG><ncurses/curses.h></STRONG>
1144 It also omits a symbolic link which would allow you to use
1145 <STRONG>-lcurses</STRONG> to build executables.
1148 The configure script renames the library and (if the <STRONG>--dis-</STRONG>
1149 <STRONG>able-overwrite</STRONG> option is used) puts the header files in a differ-
1150 ent subdirectory. All of the library names have a "w" appended to
1151 them, i.e., instead of
1153 <STRONG>-lncurses</STRONG>
1157 <STRONG>-lncursesw</STRONG>
1159 You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when compiling for the
1160 wide-character library to use the extended (wide-character) func-
1161 tions. The <STRONG>curses.h</STRONG> file which is installed for the wide-charac-
1162 ter library is designed to be compatible with the normal library's
1163 header. Only the size of the <STRONG>WINDOW</STRONG> structure differs, and very
1164 few applications require more than a pointer to <STRONG>WINDOW</STRONG>s. If the
1165 headers are installed allowing overwrite, the wide-character
1166 library's headers should be installed last, to allow applications
1167 to be built using either library from the same set of headers.
1170 The configure script renames the library. All of the library
1171 names have a "t" appended to them (before any "w" added by
1172 <STRONG>--enable-widec</STRONG>).
1174 The global variables such as <STRONG>LINES</STRONG> are replaced by macros to allow
1175 read-only access. At the same time, setter-functions are provided
1176 to set these values. Some applications (very few) may require
1177 changes to work with this convention.
1186 The shared and normal (static) library names differ by their suf-
1187 fixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libncurses.a</STRONG>. The debug and pro-
1188 filing libraries add a "_g" and a "_p" to the root names respec-
1189 tively, e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1192 The <STRONG>trace</STRONG> function normally resides in the debug library, but it
1193 is sometimes useful to configure this in the shared library. Con-
1194 figure scripts should check for the function's existence rather
1195 than assuming it is always in the debug library.
1198 </PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
1200 directory containing initialization files for the terminal capa-
1201 bility database /usr/share/terminfo terminal capability database
1204 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
1205 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" for detailed
1206 routine descriptions.
1207 <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
1208 <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG> for user-defined capabilities
1211 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
1212 The <STRONG>ncurses</STRONG> library can be compiled with an option (<STRONG>-DUSE_GETCAP</STRONG>) that
1213 falls back to the old-style /etc/termcap file if the terminal setup
1214 code cannot find a terminfo entry corresponding to <STRONG>TERM</STRONG>. Use of this
1215 feature is not recommended, as it essentially includes an entire term-
1216 cap compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost in core
1219 The <STRONG>ncurses</STRONG> library includes facilities for capturing mouse events on
1220 certain terminals (including xterm). See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual
1223 The <STRONG>ncurses</STRONG> library includes facilities for responding to window resiz-
1224 ing events, e.g., when running in an xterm. See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and
1225 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for details. In addition, the library may be
1226 configured with a <STRONG>SIGWINCH</STRONG> handler.
1228 The <STRONG>ncurses</STRONG> library extends the fixed set of function key capabilities
1229 of terminals by allowing the application designer to define additional
1230 key sequences at runtime. 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
1231 <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> manual pages for details.
1233 The <STRONG>ncurses</STRONG> library can exploit the capabilities of terminals which
1234 implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an
1235 application to reset the terminal to its original foreground and back-
1236 ground colors. From the users' perspective, the application is able to
1237 draw colored text on a background whose color is set independently,
1238 providing better control over color contrasts. See the <STRONG>default_col-</STRONG>
1239 <STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG> manual page for details.
1241 The <STRONG>ncurses</STRONG> library includes a function for directing application out-
1242 put to a printer attached to the terminal device. See the
1243 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1246 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
1247 The <STRONG>ncurses</STRONG> library is intended to be BASE-level conformant with XSI
1248 Curses. The EXTENDED XSI Curses functionality (including color sup-
1251 A small number of local differences (that is, individual differences
1252 between the XSI Curses and <STRONG>ncurses</STRONG> calls) are described in <STRONG>PORTABILITY</STRONG>
1253 sections of the library man pages.
1255 Unlike other implementations, this one checks parameters such as point-
1256 ers to WINDOW structures to ensure they are not null. The main reason
1257 for providing this behavior is to guard against programmer error. The
1258 standard interface does not provide a way for the library to tell an
1259 application which of several possible errors were detected. Relying on
1260 this (or some other) extension will adversely affect the portability of
1261 curses applications.
1263 This implementation also contains several extensions:
1265 <STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present in SVr4.
1266 See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for details.
1268 <STRONG>o</STRONG> The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it present in
1269 SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for details.
1271 <STRONG>o</STRONG> The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinterval</STRONG>, and
1272 <STRONG>wenclose</STRONG> relating to mouse interfacing are not part of XPG4, nor
1273 are they present in SVr4. See the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for
1276 <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous curses imple-
1277 mentation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1279 <STRONG>o</STRONG> The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present in SVr4.
1280 See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
1282 <STRONG>o</STRONG> The WINDOW structure's internal details can be hidden from applica-
1283 tion programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for the discussion of <STRONG>is_scrol-</STRONG>
1284 <STRONG>lok</STRONG>, etc.
1286 <STRONG>o</STRONG> This implementation can be configured to provide rudimentary sup-
1287 port for multi-threaded applications. See <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for
1290 <STRONG>o</STRONG> This implementation can also be configured to provide a set of
1291 functions which improve the ability to manage multiple screens.
1292 See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
1294 In historic curses versions, delays embedded in the capabilities <STRONG>cr</STRONG>,
1295 <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding delay bits in the UNIX
1296 tty driver. In this implementation, all padding is done by sending NUL
1297 bytes. This method is slightly more expensive, but narrows the inter-
1298 face to the UNIX kernel significantly and increases the package's
1299 portability correspondingly.
1302 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
1303 The header file <STRONG><curses.h></STRONG> automatically includes the header files
1304 <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
1306 If standard output from a <STRONG>ncurses</STRONG> program is re-directed to something
1307 which is not a tty, screen updates will be directed to standard error.
1308 This was an undocumented feature of AT&T System V Release 3 curses.
1311 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
1312 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey. Based on pcurses
1317 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1321 <li><a href="#h2-NAME">NAME</a></li>
1322 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
1323 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
1325 <li><a href="#h3-Initialization">Initialization</a></li>
1326 <li><a href="#h3-Datatypes">Datatypes</a></li>
1327 <li><a href="#h3-Environment-variables">Environment variables</a></li>
1328 <li><a href="#h3-Routine-and-Argument-Names">Routine and Argument Names</a></li>
1329 <li><a href="#h3-Routine-Name-Index">Routine Name Index</a></li>
1332 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
1333 <li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a>
1335 <li><a href="#h3-CC-command-character">CC command-character</a></li>
1336 <li><a href="#h3-BAUDRATE">BAUDRATE</a></li>
1337 <li><a href="#h3-COLUMNS">COLUMNS</a></li>
1338 <li><a href="#h3-ESCDELAY">ESCDELAY</a></li>
1339 <li><a href="#h3-HOME">HOME</a></li>
1340 <li><a href="#h3-LINES">LINES</a></li>
1341 <li><a href="#h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></li>
1342 <li><a href="#h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></li>
1343 <li><a href="#h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></li>
1344 <li><a href="#h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></li>
1345 <li><a href="#h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></li>
1346 <li><a href="#h3-NCURSES_NO_MAGIC_COOKIE">NCURSES_NO_MAGIC_COOKIE</a></li>
1347 <li><a href="#h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></li>
1348 <li><a href="#h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></li>
1349 <li><a href="#h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></li>
1350 <li><a href="#h3-NCURSES_TRACE">NCURSES_TRACE</a></li>
1351 <li><a href="#h3-TERM">TERM</a></li>
1352 <li><a href="#h3-TERMCAP">TERMCAP</a></li>
1353 <li><a href="#h3-TERMINFO">TERMINFO</a></li>
1354 <li><a href="#h3-TERMINFO_DIRS">TERMINFO_DIRS</a></li>
1355 <li><a href="#h3-TERMPATH">TERMPATH</a></li>
1358 <li><a href="#h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></li>
1359 <li><a href="#h2-FILES">FILES</a></li>
1360 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
1361 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
1362 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
1363 <li><a href="#h2-NOTES">NOTES</a></li>
1364 <li><a href="#h2-AUTHORS">AUTHORS</a></li>