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.130 2017/03/09 10:21:11 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 20170318).
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 filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
378 find_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
379 flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
380 flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
382 free_pair <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
383 get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
384 get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
385 getattrs <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
386 getbegx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
387 getbegy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
388 getbegyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
389 getbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
390 getbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
391 getcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
392 getch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
393 getcurx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
394 getcury <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
395 getmaxx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
396 getmaxy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
397 getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
398 getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
399 getn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
400 getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
401 getparx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
402 getpary <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
403 getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
404 getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
405 getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
406 getwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
407 getyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
408 halfdelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
409 has_colors <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
410 has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
411 has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
412 has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
413 hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
414 hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
415 idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
416 idlok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
417 immedok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
418 in_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
419 in_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
420 in_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
421 inch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
422 inchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
423 inchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
424 init_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
425 init_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
426 initscr <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
427 innstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
428 innwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
429 ins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
430 ins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
431 ins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
432 insch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
433 insdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
434 insertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
435 insnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
436 insstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
437 instr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
438 intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
439 inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
440 is_cleared <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
441 is_idcok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
442 is_idlok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
443 is_immedok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
444 is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
445 is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
446 is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
448 is_nodelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
449 is_notimeout <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
450 is_pad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
451 is_scrollok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
452 is_subwin <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
453 is_syncok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
454 is_term_resized <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
455 is_wintouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
456 isendwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
457 key_defined <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
458 key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
459 keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
460 keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
461 keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
462 keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
463 killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
464 killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
465 leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
466 longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
467 mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
468 meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
469 mouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
470 mouseinterval <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
471 mousemask <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
472 move <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
473 mvadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
474 mvadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
475 mvadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
476 mvaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
477 mvaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
478 mvaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
479 mvaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
480 mvaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
481 mvaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
482 mvaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
483 mvchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
484 mvcur <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
485 mvdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
486 mvderwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
487 mvget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
488 mvget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
489 mvgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
490 mvgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
491 mvgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
492 mvgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
493 mvhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
494 mvhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
495 mvin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
496 mvin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
497 mvin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
498 mvinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
499 mvinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
500 mvinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
501 mvinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
502 mvinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
503 mvins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
504 mvins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
505 mvins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
506 mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
507 mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
508 mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
509 mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
510 mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
511 mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
512 mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
514 mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
515 mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
516 mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
517 mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
518 mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
519 mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
520 mvwaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
521 mvwaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
522 mvwaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
523 mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
524 mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
525 mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
526 mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
527 mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
528 mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
529 mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
530 mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
531 mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
532 mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
533 mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
534 mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
535 mvwhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
536 mvwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
537 mvwin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
538 mvwin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
539 mvwin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
540 mvwinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
541 mvwinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
542 mvwinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
543 mvwinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
544 mvwinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
545 mvwins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
546 mvwins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
547 mvwins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
548 mvwinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
549 mvwinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
550 mvwinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
551 mvwinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
552 mvwinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
553 mvwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
554 mvwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
555 mvwvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
556 mvwvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
557 napms <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
558 newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
559 newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
560 newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
561 nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
562 nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
563 nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
564 noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
565 nofilter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
566 nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
567 noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
568 noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
569 notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
570 overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
571 overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
572 pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
573 pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
574 pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
575 prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
576 printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
577 putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
578 putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
580 qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
581 raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
582 redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
583 refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
584 reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
585 reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
586 resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
587 resize_term <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
588 resizeterm <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
589 restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
590 ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
591 savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
592 scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
593 scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
594 scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
595 scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
596 scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
597 scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
598 scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
599 scrollok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
600 set_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
601 set_term <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
602 setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
603 setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
604 setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
605 setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
606 setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
607 slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
608 slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
609 slk_attr_on <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
610 slk_attr_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
611 slk_attroff <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
612 slk_attron <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
613 slk_attrset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
614 slk_clear <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
615 slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
616 slk_init <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
617 slk_label <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
618 slk_noutrefresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
619 slk_refresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
620 slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
621 slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
622 slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
623 standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
624 standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
625 start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
626 subpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
627 subwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
628 syncok <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
629 term_attrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
630 termattrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
631 termname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
632 tgetent <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
633 tgetflag <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
634 tgetnum <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
635 tgetstr <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
636 tgoto <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
637 tigetflag <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
638 tigetnum <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
639 tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
640 tiparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>*
641 timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
642 touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
643 touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
644 tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
646 tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
647 tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
648 trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
649 typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
650 unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
651 unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
652 ungetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
653 ungetmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
654 untouchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
655 use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
656 use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
657 use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
658 use_legacy_coding <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
659 use_tioctl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
660 vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
661 vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
662 vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
663 vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
664 vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
665 vline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
666 vw_printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
667 vw_scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
668 vwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
669 vwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
670 wadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
671 wadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
672 wadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
673 waddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
674 waddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
675 waddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
676 waddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
677 waddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
678 waddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
679 waddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
680 wattr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
681 wattr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
682 wattr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
683 wattr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
684 wattroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
685 wattron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
686 wattrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
687 wbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
688 wbkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
689 wbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
690 wbkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
691 wborder <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
692 wborder_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
693 wchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
694 wclear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
695 wclrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
696 wclrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
697 wcolor_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
698 wcursyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
699 wdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
700 wdeleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
701 wecho_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
702 wechochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
703 wenclose <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
704 werase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
705 wget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
706 wget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
707 wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
708 wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
709 wgetdelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
710 wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
712 wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
713 wgetparent <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
714 wgetscrreg <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
715 wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
716 whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
717 whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
718 win_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
719 win_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
720 win_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
721 winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
722 winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
723 winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
724 winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
725 winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
726 wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
727 wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
728 wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
729 winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
730 winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
731 winsertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
732 winsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
733 winsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
734 winstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
735 winwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
736 wmouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
737 wmove <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
738 wnoutrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
739 wprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
740 wredrawln <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
741 wrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
742 wresize <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
743 wscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
744 wscrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
745 wsetscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
746 wstandend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
747 wstandout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
748 wsyncdown <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
749 wsyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
750 wtimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
751 wtouchln <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
752 wunctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
753 wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
754 wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
757 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
758 Routines that return an integer return <STRONG>ERR</STRONG> upon failure
759 and an integer value other than <STRONG>ERR</STRONG> upon successful com-
760 pletion, unless otherwise noted in the routine descrip-
763 As a general rule, routines check for null pointers passed
764 as parameters, and handle this as an error.
766 All macros return the value of the <STRONG>w</STRONG> version, except
767 <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The
768 return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
769 and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
770 as the right-hand side of assignment statements).
772 Routines that return pointers return <STRONG>NULL</STRONG> on error.
775 </PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
776 The following environment symbols are useful for customiz-
777 ing the runtime behavior of the <STRONG>ncurses</STRONG> library. The most
778 important ones have been already discussed in detail.
781 When set, change occurrences of the command_character
782 (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo
783 entries to the value of this variable. Very few terminfo
784 entries provide this feature.
786 Because this name is also used in development environments
787 to represent the C compiler's name, <STRONG>ncurses</STRONG> ignores it if
788 it does not happen to be a single character.
791 </PRE><H3><a name="h3-BAUDRATE">BAUDRATE</a></H3><PRE>
792 The debugging library checks this environment variable
793 when the application has redirected output to a file. The
794 variable's numeric value is used for the baudrate. If no
795 value is found, <STRONG>ncurses</STRONG> uses 9600. This allows testers to
796 construct repeatable test-cases that take into account
797 costs that depend on baudrate.
800 </PRE><H3><a name="h3-COLUMNS">COLUMNS</a></H3><PRE>
801 Specify the width of the screen in characters. Applica-
802 tions running in a windowing environment usually are able
803 to obtain the width of the window in which they are exe-
804 cuting. If neither the <STRONG>COLUMNS</STRONG> value nor the terminal's
805 screen size is available, <STRONG>ncurses</STRONG> uses the size which may
806 be specified in the terminfo database (i.e., the <STRONG>cols</STRONG>
809 It is important that your application use a correct size
810 for the screen. This is not always possible because your
811 application may be running on a host which does not honor
812 NAWS (Negotiations About Window Size), or because you are
813 temporarily running as another user. However, setting
814 <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> overrides the library's use of the
815 screen size obtained from the operating system.
817 Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified indepen-
818 dently. This is mainly useful to circumvent legacy mis-
819 features of terminal descriptions, e.g., xterm which com-
820 monly specifies a 65 line screen. For best results, <STRONG>lines</STRONG>
821 and <STRONG>cols</STRONG> should not be specified in a terminal description
822 for terminals which are run as emulations.
824 Use the <STRONG>use_env</STRONG> function to disable all use of external
825 environment (but not including system calls) to determine
826 the screen size. Use the <STRONG>use_tioctl</STRONG> function to update
827 <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen size obtained from
828 system calls or the terminal database.
831 </PRE><H3><a name="h3-ESCDELAY">ESCDELAY</a></H3><PRE>
832 Specifies the total time, in milliseconds, for which
833 ncurses will await a character sequence, e.g., a function
834 key. The default value, 1000 milliseconds, is enough for
835 most uses. However, it is made a variable to accommodate
836 unusual applications.
838 The most common instance where you may wish to change this
839 value is to work with slow hosts, e.g., running on a net-
840 work. If the host cannot read characters rapidly enough,
841 it will have the same effect as if the terminal did not
842 send characters rapidly enough. The library will still
845 Note that xterm mouse events are built up from character
846 sequences received from the xterm. If your application
847 makes heavy use of multiple-clicking, you may wish to
848 lengthen this default value because the timeout applies to
849 the composed multi-click event as well as the individual
852 In addition to the environment variable, this implementa-
853 tion provides a global variable with the same name. Por-
854 table applications should not rely upon the presence of
855 ESCDELAY in either form, but setting the environment vari-
856 able rather than the global variable does not create prob-
857 lems when compiling an application.
860 </PRE><H3><a name="h3-HOME">HOME</a></H3><PRE>
861 Tells <STRONG>ncurses</STRONG> where your home directory is. That is where
862 it may read and write auxiliary terminal descriptions:
868 </PRE><H3><a name="h3-LINES">LINES</a></H3><PRE>
869 Like COLUMNS, specify the height of the screen in charac-
870 ters. See COLUMNS for a detailed description.
873 </PRE><H3><a name="h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></H3><PRE>
874 This applies only to the OS/2 EMX port. It specifies the
875 order of buttons on the mouse. OS/2 numbers a 3-button
876 mouse inconsistently from other platforms:
882 This variable lets you customize the mouse. The variable
883 must be three numeric digits 1-3 in any order, e.g., 123
884 or 321. If it is not specified, <STRONG>ncurses</STRONG> uses 132.
887 </PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></H3><PRE>
888 Override the compiled-in assumption that the terminal's
889 default colors are white-on-black (see <STRONG>default_col-</STRONG>
890 <STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG>). You may set the foreground and background color
891 values with this environment variable by proving a 2-ele-
892 ment list: foreground,background. For example, to tell
893 ncurses to not assume anything about the colors, set this
894 to "-1,-1". To make it green-on-black, set it to "2,0".
895 Any positive value from zero to the terminfo <STRONG>max_colors</STRONG>
899 </PRE><H3><a name="h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></H3><PRE>
900 This applies only to the MinGW port of ncurses.
902 The <STRONG>Console2</STRONG> program's handling of the Microsoft Console
903 API call <STRONG>CreateConsoleScreenBuffer</STRONG> is defective. Applica-
904 tions which use this will hang. However, it is possible
905 to simulate the action of this call by mapping coordi-
906 nates, explicitly saving and restoring the original screen
907 contents. Setting the environment variable <STRONG>NCGDB</STRONG> has the
911 </PRE><H3><a name="h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></H3><PRE>
912 This applies only to ncurses configured to use the GPM
915 If present, the environment variable is a list of one or
916 more terminal names against which the <STRONG>TERM</STRONG> environment
917 variable is matched. Setting it to an empty value dis-
918 ables the GPM interface; using the built-in support for
921 If the environment variable is absent, ncurses will
922 attempt to open GPM if <STRONG>TERM</STRONG> contains "linux".
925 </PRE><H3><a name="h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></H3><PRE>
926 <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement opti-
927 mization. In some cases, your terminal driver may not
928 handle these properly. Set this environment variable to
929 disable the feature. You can also adjust your <STRONG>stty</STRONG> set-
930 tings to avoid the problem. NCURSES_NO_MAGIC_COOKIE Some
931 terminals use a magic-cookie feature which requires spe-
932 cial handling to make highlighting and other video
933 attributes display properly. You can suppress the high-
934 lighting entirely for these terminals by setting this
935 environment variable.
938 </PRE><H3><a name="h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></H3><PRE>
939 Most of the terminal descriptions in the terminfo database
940 are written for real "hardware" terminals. Many people
941 use terminal emulators which run in a windowing environ-
942 ment and use curses-based applications. Terminal emula-
943 tors can duplicate all of the important aspects of a hard-
944 ware terminal, but they do not have the same limitations.
945 The chief limitation of a hardware terminal from the
946 standpoint of your application is the management of
947 dataflow, i.e., timing. Unless a hardware terminal is
948 interfaced into a terminal concentrator (which does flow
949 control), it (or your application) must manage dataflow,
950 preventing overruns. The cheapest solution (no hardware
951 cost) is for your program to do this by pausing after
952 operations that the terminal does slowly, such as clearing
955 As a result, many terminal descriptions (including the
956 vt100) have delay times embedded. You may wish to use
957 these descriptions, but not want to pay the performance
960 Set the NCURSES_NO_PADDING environment variable to disable
961 all but mandatory padding. Mandatory padding is used as a
962 part of special control sequences such as <EM>flash</EM>.
965 </PRE><H3><a name="h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></H3><PRE>
966 This setting is obsolete. Before changes
968 <STRONG>o</STRONG> started with 5.9 patch 20120825 and
970 <STRONG>o</STRONG> continued though 5.9 patch 20130126
972 <STRONG>ncurses</STRONG> enabled buffered output during terminal initial-
973 ization. This was done (as in SVr4 curses) for perfor-
974 mance reasons. For testing purposes, both of <STRONG>ncurses</STRONG> and
975 certain applications, this feature was made optional.
976 Setting the NCURSES_NO_SETBUF variable disabled output
977 buffering, leaving the output in the original (usually
980 In the current implementation, ncurses performs its own
981 buffering and does not require this workaround. It does
982 not modify the buffering of the standard output.
984 The reason for the change was to make the behavior for
985 interrupts and other signals more robust. One drawback is
986 that certain nonconventional programs would mix ordinary
987 stdio calls with ncurses calls and (usually) work. This
988 is no longer possible since ncurses is not using the
989 buffered standard output but its own output (to the same
990 file descriptor). As a special case, the low-level calls
991 such as <STRONG>putp</STRONG> still use the standard output. But high-
992 level curses calls do not.
995 </PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></H3><PRE>
996 During initialization, the <STRONG>ncurses</STRONG> library checks for spe-
997 cial cases where VT100 line-drawing (and the corresponding
998 alternate character set capabilities) described in the
999 terminfo are known to be missing. Specifically, when run-
1000 ning in a UTF-8 locale, the Linux console emulator and the
1001 GNU screen program ignore these. Ncurses checks the <STRONG>TERM</STRONG>
1002 environment variable for these. For other special cases,
1003 you should set this environment variable. Doing this
1004 tells ncurses to use Unicode values which correspond to
1005 the VT100 line-drawing glyphs. That works for the special
1006 cases cited, and is likely to work for terminal emulators.
1008 When setting this variable, you should set it to a nonzero
1009 value. Setting it to zero (or to a nonnumber) disables
1010 the special check for "linux" and "screen".
1012 As an alternative to the environment variable, ncurses
1013 checks for an extended terminfo capability <STRONG>U8</STRONG>. This is a
1014 numeric capability which can be compiled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>.
1017 # linux console, if patched to provide working
1018 # VT100 shift-in/shift-out, with corresponding font.
1019 linux-vt100|linux console with VT100 line-graphics,
1022 # uxterm with vt100Graphics resource set to false
1023 xterm-utf8|xterm relying on UTF-8 line-graphics,
1026 The name "U8" is chosen to be two characters, to permit it
1027 to be used by applications that use ncurses' termcap
1031 </PRE><H3><a name="h3-NCURSES_TRACE">NCURSES_TRACE</a></H3><PRE>
1032 During initialization, the <STRONG>ncurses</STRONG> debugging library
1033 checks the NCURSES_TRACE environment variable. If it is
1034 defined, to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> func-
1035 tion, using that value as the argument.
1037 The argument values, which are defined in <STRONG>curses.h</STRONG>, pro-
1038 vide several types of information. When running with
1039 traces enabled, your application will write the file <STRONG>trace</STRONG>
1040 to the current directory.
1042 See <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> for more information.
1045 </PRE><H3><a name="h3-TERM">TERM</a></H3><PRE>
1046 Denotes your terminal type. Each terminal type is dis-
1047 tinct, though many are similar.
1049 <STRONG>TERM</STRONG> is commonly set by terminal emulators to help appli-
1050 cations find a workable terminal description. Some of
1051 those choose a popular approximation, e.g., "ansi",
1052 "vt100", "xterm" rather than an exact fit. Not infre-
1053 quently, your application will have problems with that
1054 approach, e.g., incorrect function-key definitions.
1056 If you set <STRONG>TERM</STRONG> in your environment, it has no effect on
1057 the operation of the terminal emulator. It only affects
1058 the way applications work within the terminal. Likewise,
1059 as a general rule (<STRONG>xterm</STRONG> being a rare exception), terminal
1060 emulators which allow you to specify <STRONG>TERM</STRONG> as a parameter
1061 or configuration value do not change their behavior to
1065 </PRE><H3><a name="h3-TERMCAP">TERMCAP</a></H3><PRE>
1066 If the <STRONG>ncurses</STRONG> library has been configured with <EM>termcap</EM>
1067 support, <STRONG>ncurses</STRONG> will check for a terminal's description
1068 in termcap form if it is not available in the terminfo
1071 The <STRONG>TERMCAP</STRONG> environment variable contains either a termi-
1072 nal description (with newlines stripped out), or a file
1073 name telling where the information denoted by the <STRONG>TERM</STRONG>
1074 environment variable exists. In either case, setting it
1075 directs <STRONG>ncurses</STRONG> to ignore the usual place for this infor-
1076 mation, e.g., /etc/termcap.
1079 </PRE><H3><a name="h3-TERMINFO">TERMINFO</a></H3><PRE>
1080 <STRONG>ncurses</STRONG> can be configured to read from multiple terminal
1081 databases. The <STRONG>TERMINFO</STRONG> variable overrides the location
1082 for the default terminal database. Terminal descriptions
1083 (in terminal format) are stored in terminal databases:
1085 <STRONG>o</STRONG> Normally these are stored in a directory tree, using
1086 subdirectories named by the first letter of the termi-
1089 This is the scheme used in System V, which legacy Unix
1090 systems use, and the <STRONG>TERMINFO</STRONG> variable is used by
1091 <EM>curses</EM> applications on those systems to override the
1092 default location of the terminal database.
1094 <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built to use hashed databases, then each
1095 entry in this list may be the path of a hashed data-
1098 /usr/share/terminfo.db
1102 /usr/share/terminfo/
1104 The hashed database uses less disk-space and is a lit-
1105 tle faster than the directory tree. However, some
1106 applications assume the existence of the directory
1107 tree, reading it directly rather than using the ter-
1108 minfo library calls.
1110 <STRONG>o</STRONG> If <STRONG>ncurses</STRONG> is built with a support for reading termcap
1111 files directly, then an entry in this list may be the
1112 path of a termcap file.
1114 <STRONG>o</STRONG> If the <STRONG>TERMINFO</STRONG> variable begins with "hex:" or "b64:",
1115 <STRONG>ncurses</STRONG> uses the remainder of that variable as a com-
1116 piled terminal description. You might produce the
1117 base64 format using <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>:
1119 TERMINFO="$(infocmp -0 -Q2 -q)"
1122 The compiled description is used if it corresponds to
1123 the terminal identified by the <STRONG>TERM</STRONG> variable.
1125 Setting <STRONG>TERMINFO</STRONG> is the simplest, but not the only way to
1126 set location of the default terminal database. The com-
1127 plete list of database locations in order follows:
1129 <STRONG>o</STRONG> the last terminal database to which <STRONG>ncurses</STRONG> wrote,
1130 if any, is searched first
1132 <STRONG>o</STRONG> the location specified by the TERMINFO environment
1135 <STRONG>o</STRONG> $HOME/.terminfo
1137 <STRONG>o</STRONG> locations listed in the TERMINFO_DIRS environment
1140 <STRONG>o</STRONG> one or more locations whose names are configured
1141 and compiled into the ncurses library, i.e.,
1143 <STRONG>o</STRONG> /usr/local/ncurses/share/ter-
1144 minfo:/usr/share/terminfo (corresponding to the
1145 TERMINFO_DIRS variable)
1147 <STRONG>o</STRONG> /usr/share/terminfo (corresponding to the TER-
1151 </PRE><H3><a name="h3-TERMINFO_DIRS">TERMINFO_DIRS</a></H3><PRE>
1152 Specifies a list of locations to search for terminal
1153 descriptions. Each location in the list is a terminal
1154 database as described in the section on the <STRONG>TERMINFO</STRONG> vari-
1155 able. The list is separated by colons (i.e., ":") on
1156 Unix, semicolons on OS/2 EMX.
1158 There is no corresponding feature in System V terminfo; it
1159 is an extension developed for <STRONG>ncurses</STRONG>.
1162 </PRE><H3><a name="h3-TERMPATH">TERMPATH</a></H3><PRE>
1163 If <STRONG>TERMCAP</STRONG> does not hold a file name then <STRONG>ncurses</STRONG> checks
1164 the <STRONG>TERMPATH</STRONG> environment variable. This is a list of
1165 filenames separated by spaces or colons (i.e., ":") on
1166 Unix, semicolons on OS/2 EMX.
1168 If the <STRONG>TERMPATH</STRONG> environment variable is not set, <STRONG>ncurses</STRONG>
1171 /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap,
1175 The library may be configured to disregard the following
1176 variables when the current user is the superuser (root),
1177 or if the application uses setuid or setgid permissions:
1179 $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
1182 </PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
1183 Several different configurations are possible, depending
1184 on the configure script options used when building
1185 <STRONG>ncurses</STRONG>. There are a few main options whose effects are
1186 visible to the applications developer using <STRONG>ncurses</STRONG>:
1189 The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYN-</STRONG>
1190 <STRONG>OPSIS</STRONG>:
1192 <STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
1194 This option is used to avoid filename conflicts when
1195 <STRONG>ncurses</STRONG> is not the main implementation of curses of
1196 the computer. If <STRONG>ncurses</STRONG> is installed disabling
1197 overwrite, it puts its headers in a subdirectory,
1200 <STRONG>#include</STRONG> <STRONG><ncurses/curses.h></STRONG>
1202 It also omits a symbolic link which would allow you
1203 to use <STRONG>-lcurses</STRONG> to build executables.
1206 The configure script renames the library and (if the
1207 <STRONG>--disable-overwrite</STRONG> option is used) puts the header
1208 files in a different subdirectory. All of the
1209 library names have a "w" appended to them, i.e.,
1212 <STRONG>-lncurses</STRONG>
1216 <STRONG>-lncursesw</STRONG>
1218 You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
1219 piling for the wide-character library to use the
1220 extended (wide-character) functions. The <STRONG>curses.h</STRONG>
1221 file which is installed for the wide-character
1222 library is designed to be compatible with the normal
1223 library's header. Only the size of the <STRONG>WINDOW</STRONG> struc-
1224 ture differs, and very few applications require more
1225 than a pointer to <STRONG>WINDOW</STRONG>s. If the headers are
1226 installed allowing overwrite, the wide-character
1227 library's headers should be installed last, to allow
1228 applications to be built using either library from
1229 the same set of headers.
1232 The configure script renames the library. All of the
1233 library names have a "t" appended to them (before any
1234 "w" added by <STRONG>--enable-widec</STRONG>).
1236 The global variables such as <STRONG>LINES</STRONG> are replaced by
1237 macros to allow read-only access. At the same time,
1238 setter-functions are provided to set these values.
1239 Some applications (very few) may require changes to
1240 work with this convention.
1249 The shared and normal (static) library names differ
1250 by their suffixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libn-</STRONG>
1251 <STRONG>curses.a</STRONG>. The debug and profiling libraries add a
1252 "_g" and a "_p" to the root names respectively, e.g.,
1253 <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1256 The <STRONG>trace</STRONG> function normally resides in the debug
1257 library, but it is sometimes useful to configure this
1258 in the shared library. Configure scripts should
1259 check for the function's existence rather than assum-
1260 ing it is always in the debug library.
1263 </PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
1265 directory containing initialization files for the
1266 terminal capability database /usr/share/terminfo ter-
1267 minal capability database
1270 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
1271 <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_"
1272 for detailed routine descriptions.
1273 <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
1276 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
1277 The <STRONG>ncurses</STRONG> library can be compiled with an option
1278 (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
1279 cap file if the terminal setup code cannot find a terminfo
1280 entry corresponding to <STRONG>TERM</STRONG>. Use of this feature is not
1281 recommended, as it essentially includes an entire termcap
1282 compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost
1283 in core and startup cycles.
1285 The <STRONG>ncurses</STRONG> library includes facilities for capturing
1286 mouse events on certain terminals (including xterm). See
1287 the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1289 The <STRONG>ncurses</STRONG> library includes facilities for responding to
1290 window resizing events, e.g., when running in an xterm.
1291 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
1292 details. In addition, the library may be configured with
1295 The <STRONG>ncurses</STRONG> library extends the fixed set of function key
1296 capabilities of terminals by allowing the application
1297 designer to define additional key sequences at runtime.
1298 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-
1299 ual pages for details.
1301 The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
1302 nals which implement the ISO-6429 SGR 39 and SGR 49 con-
1303 trols, which allow an application to reset the terminal to
1304 its original foreground and background colors. From the
1305 users' perspective, the application is able to draw col-
1306 ored text on a background whose color is set indepen-
1307 dently, providing better control over color contrasts.
1308 See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
1310 The <STRONG>ncurses</STRONG> library includes a function for directing
1311 application output to a printer attached to the terminal
1312 device. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1315 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
1316 The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor-
1317 mant with XSI Curses. The EXTENDED XSI Curses functional-
1318 ity (including color support) is supported.
1320 A small number of local differences (that is, individual
1321 differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
1322 described in <STRONG>PORTABILITY</STRONG> sections of the library man
1325 Unlike other implementations, this one checks parameters
1326 such as pointers to WINDOW structures to ensure they are
1327 not null. The main reason for providing this behavior is
1328 to guard against programmer error. The standard interface
1329 does not provide a way for the library to tell an applica-
1330 tion which of several possible errors were detected.
1331 Relying on this (or some other) extension will adversely
1332 affect the portability of curses applications.
1334 This implementation also contains several extensions:
1336 <STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it
1337 present in SVr4. See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page
1340 <STRONG>o</STRONG> The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it
1341 present in SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for
1344 <STRONG>o</STRONG> The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mousein-</STRONG>
1345 <STRONG>terval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing are
1346 not part of XPG4, nor are they present in SVr4. See
1347 the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1349 <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous
1350 curses implementation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual
1353 <STRONG>o</STRONG> The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it
1354 present in SVr4. See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for
1357 <STRONG>o</STRONG> The WINDOW structure's internal details can be hidden
1358 from application programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for
1359 the discussion of <STRONG>is_scrollok</STRONG>, etc.
1361 <STRONG>o</STRONG> This implementation can be configured to provide rudi-
1362 mentary support for multi-threaded applications. See
1363 <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for details.
1365 <STRONG>o</STRONG> This implementation can also be configured to provide
1366 a set of functions which improve the ability to manage
1367 multiple screens. See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details.
1369 In historic curses versions, delays embedded in the capa-
1370 bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
1371 delay bits in the UNIX tty driver. In this implementa-
1372 tion, all padding is done by sending NUL bytes. This
1373 method is slightly more expensive, but narrows the inter-
1374 face to the UNIX kernel significantly and increases the
1375 package's portability correspondingly.
1378 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
1379 The header file <STRONG><curses.h></STRONG> automatically includes the
1380 header files <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>.
1382 If standard output from a <STRONG>ncurses</STRONG> program is re-directed
1383 to something which is not a tty, screen updates will be
1384 directed to standard error. This was an undocumented fea-
1385 ture of AT&T System V Release 3 curses.
1388 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
1389 Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
1390 Based on pcurses by Pavel Curtis.
1394 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1398 <li><a href="#h2-NAME">NAME</a></li>
1399 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
1400 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
1402 <li><a href="#h3-Initialization">Initialization</a></li>
1403 <li><a href="#h3-Datatypes">Datatypes</a></li>
1404 <li><a href="#h3-Environment-variables">Environment variables</a></li>
1405 <li><a href="#h3-Routine-and-Argument-Names">Routine and Argument Names</a></li>
1406 <li><a href="#h3-Routine-Name-Index">Routine Name Index</a></li>
1409 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
1410 <li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a>
1412 <li><a href="#h3-BAUDRATE">BAUDRATE</a></li>
1413 <li><a href="#h3-COLUMNS">COLUMNS</a></li>
1414 <li><a href="#h3-ESCDELAY">ESCDELAY</a></li>
1415 <li><a href="#h3-HOME">HOME</a></li>
1416 <li><a href="#h3-LINES">LINES</a></li>
1417 <li><a href="#h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></li>
1418 <li><a href="#h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></li>
1419 <li><a href="#h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></li>
1420 <li><a href="#h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></li>
1421 <li><a href="#h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></li>
1422 <li><a href="#h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></li>
1423 <li><a href="#h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></li>
1424 <li><a href="#h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></li>
1425 <li><a href="#h3-NCURSES_TRACE">NCURSES_TRACE</a></li>
1426 <li><a href="#h3-TERM">TERM</a></li>
1427 <li><a href="#h3-TERMCAP">TERMCAP</a></li>
1428 <li><a href="#h3-TERMINFO">TERMINFO</a></li>
1429 <li><a href="#h3-TERMINFO_DIRS">TERMINFO_DIRS</a></li>
1430 <li><a href="#h3-TERMPATH">TERMPATH</a></li>
1433 <li><a href="#h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></li>
1434 <li><a href="#h2-FILES">FILES</a></li>
1435 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
1436 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
1437 <li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
1438 <li><a href="#h2-NOTES">NOTES</a></li>
1439 <li><a href="#h2-AUTHORS">AUTHORS</a></li>