]> ncurses.scripts.mit.edu Git - ncurses.git/blob - doc/html/man/ncurses.3x.html
321ccb23e5648ec2d4c1e5b64fb0448c66548438
[ncurses.git] / doc / html / man / ncurses.3x.html
1 <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
2 <!-- 
3   * t
4   ****************************************************************************
5   * Copyright (c) 1998-2005,2006 Free Software Foundation, Inc.              *
6   *                                                                          *
7   * Permission is hereby granted, free of charge, to any person obtaining a  *
8   * copy of this software and associated documentation files (the            *
9   * "Software"), to deal in the Software without restriction, including      *
10   * without limitation the rights to use, copy, modify, merge, publish,      *
11   * distribute, distribute with modifications, sublicense, and/or sell       *
12   * copies of the Software, and to permit persons to whom the Software is    *
13   * furnished to do so, subject to the following conditions:                 *
14   *                                                                          *
15   * The above copyright notice and this permission notice shall be included  *
16   * in all copies or substantial portions of the Software.                   *
17   *                                                                          *
18   * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
19   * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
20   * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
21   * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
22   * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
23   * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
24   * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
25   *                                                                          *
26   * Except as contained in this notice, the name(s) of the above copyright   *
27   * holders shall not be used in advertising or otherwise to promote the     *
28   * sale, use or other dealings in this Software without prior written       *
29   * authorization.                                                           *
30   ****************************************************************************
31   * @Id: ncurses.3x,v 1.82 2006/12/24 14:44:05 tom Exp @
32 -->
33 <HTML>
34 <HEAD>
35 <TITLE>ncurses 3x</TITLE>
36 <link rev=made href="mailto:bug-ncurses@gnu.org">
37 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
38 </HEAD>
39 <BODY>
40 <H1>ncurses 3x</H1>
41 <HR>
42 <PRE>
43 <!-- Manpage converted by man2html 3.0.1 -->
44 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                                                 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
45
46
47
48
49 </PRE>
50 <H2>NAME</H2><PRE>
51        <STRONG>ncurses</STRONG> - CRT screen handling and optimization package
52
53
54 </PRE>
55 <H2>SYNOPSIS</H2><PRE>
56        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
57
58
59 </PRE>
60 <H2>DESCRIPTION</H2><PRE>
61        The  <STRONG>ncurses</STRONG>  library  routines  give the user a terminal-
62        independent method of updating character screens with rea-
63        sonable   optimization.    This  implementation  is  ``new
64        curses'' (ncurses) and is  the  approved  replacement  for
65        4.4BSD  classic curses, which has been discontinued.  This
66        describes <STRONG>ncurses</STRONG> version 5.6 (patch 20061224).
67
68        The <STRONG>ncurses</STRONG> routines emulate  the  <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>  library  of
69        System V Release 4 UNIX, and the XPG4 curses standard (XSI
70        curses) but the <STRONG>ncurses</STRONG> library is freely  redistributable
71        in source form.  Differences from the SVr4 curses are sum-
72        marized under  the  <STRONG>EXTENSIONS</STRONG>  and  <STRONG>PORTABILITY</STRONG>  sections
73        below  and  described  in  detail in the respective <STRONG>EXTEN-</STRONG>
74        <STRONG>SIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG>  sections  of  individual  man
75        pages.
76
77        A  program  using  these  routines must be linked with the
78        <STRONG>-lncurses</STRONG> option, or (if it has been generated)  with  the
79        debugging  library  <STRONG>-lncurses_g</STRONG>.   (Your system integrator
80        may also have installed these libraries  under  the  names
81        <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.)  The ncurses_g library generates
82        trace logs (in a file called 'trace' in the current direc-
83        tory)  that describe curses actions.  See also the section
84        on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>.
85
86        The <STRONG>ncurses</STRONG> package supports: overall screen,  window  and
87        pad manipulation; output to windows and pads; reading ter-
88        minal input; control over terminal and  <STRONG>curses</STRONG>  input  and
89        output  options; environment query routines; color manipu-
90        lation; use of soft label keys; terminfo capabilities; and
91        access to low-level terminal-manipulation routines.
92
93        To initialize the routines, the routine <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG>
94        must be called before any of the other routines that  deal
95        with  windows  and  screens  are used.  The routine <STRONG>endwin</STRONG>
96        must be called before exiting.  To get character-at-a-time
97        input  without  echoing (most interactive, screen oriented
98        programs want this),  the  following  sequence  should  be
99        used:
100
101              <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG>
102
103        Most programs would additionally use the sequence:
104
105              <STRONG>nonl();</STRONG>
106              <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG>
107              <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG>
108
109        Before  a <STRONG>curses</STRONG> program is run, the tab stops of the ter-
110        minal should be set and  its  initialization  strings,  if
111        defined,  must  be  output.  This can be done by executing
112        the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable
113        <STRONG>TERM</STRONG>  has  been  exported.  <STRONG>tset(1)</STRONG> is usually responsible
114        for doing this.  [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.]
115
116        The <STRONG>ncurses</STRONG> library permits manipulation  of  data  struc-
117        tures,  called  <EM>windows</EM>,  which  can be thought of as two-
118        dimensional arrays of characters representing all or  part
119        of a CRT screen.  A default window called <STRONG>stdscr</STRONG>, which is
120        the size of the terminal screen, is supplied.  Others  may
121        be created with <STRONG>newwin</STRONG>.
122
123        Note  that  <STRONG>curses</STRONG>  does  not  handle overlapping windows,
124        that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that  you
125        can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win-
126        dows and not using <STRONG>stdscr</STRONG> at  all.  Mixing  the  two  will
127        result in unpredictable, and undesired, effects.
128
129        Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>.
130        These  data  structures  are  manipulated  with   routines
131        described  here and elsewhere in the <STRONG>ncurses</STRONG> manual pages.
132        Among those, the most basic routines are <STRONG>move</STRONG>  and  <STRONG>addch</STRONG>.
133        More  general versions of these routines are included with
134        names beginning with <STRONG>w</STRONG>, allowing the  user  to  specify  a
135        window.   The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>.
136
137        After using routines to manipulate a  window,  <STRONG>refresh</STRONG>  is
138        called,  telling <STRONG>curses</STRONG> to make the user's CRT screen look
139        like <STRONG>stdscr</STRONG>.  The characters in a window are  actually  of
140        type  <STRONG>chtype</STRONG>, (character and attribute data) so that other
141        information about the character may also  be  stored  with
142        each character.
143
144        Special  windows  called  <EM>pads</EM>  may  also  be manipulated.
145        These are windows which are not constrained to the size of
146        the  screen and whose contents need not be completely dis-
147        played.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information.
148
149        In addition to drawing characters  on  the  screen,  video
150        attributes  and colors may be supported, causing the char-
151        acters to show up in such modes as underlined, in  reverse
152        video,  or in color on terminals that support such display
153        enhancements.  Line drawing characters may be specified to
154        be  output.   On  input,  <STRONG>curses</STRONG> is also able to translate
155        arrow and function keys  that  transmit  escape  sequences
156        into  single  values.   The video attributes, line drawing
157        characters,  and  input  values  use  names,  defined   in
158        <STRONG>&lt;curses.h&gt;</STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>.
159
160        If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or
161        if the program is executing in a window environment,  line
162        and  column  information  in the environment will override
163        information read by <EM>terminfo</EM>.  This would effect a program
164        running  in an AT&amp;T 630 layer, for example, where the size
165        of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>).
166
167        If the environment variable <STRONG>TERMINFO</STRONG> is defined, any  pro-
168        gram  using  <STRONG>curses</STRONG> checks for a local terminal definition
169        before checking in the standard place.   For  example,  if
170        <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini-
171        tion is found in
172
173              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
174
175        (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid
176        creation  of  huge  directories.)  However, if <STRONG>TERMINFO</STRONG> is
177        set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks
178
179              <STRONG>$HOME/myterms/a/att4424</STRONG>,
180
181        and if that fails, it then checks
182
183              <STRONG>/usr/share/terminfo/a/att4424</STRONG>.
184
185        This is useful for developing experimental definitions  or
186        when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail-
187        able.
188
189        The integer  variables  <STRONG>LINES</STRONG>  and  <STRONG>COLS</STRONG>  are  defined  in
190        <STRONG>&lt;curses.h&gt;</STRONG>  and will be filled in by <STRONG>initscr</STRONG> with the size
191        of the screen.  The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val-
192        ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively.
193
194        The  <STRONG>curses</STRONG>  routines  also  define  the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable
195        <STRONG>curscr</STRONG> which is used for certain low-level operations like
196        clearing  and  redrawing a screen containing garbage.  The
197        <STRONG>curscr</STRONG> can be used in only a few routines.
198
199    <STRONG>Routine</STRONG> <STRONG>and</STRONG> <STRONG>Argument</STRONG> <STRONG>Names</STRONG>
200        Many <STRONG>curses</STRONG> routines have two or more versions.  The  rou-
201        tines prefixed with <STRONG>w</STRONG> require a window argument.  The rou-
202        tines prefixed with <STRONG>p</STRONG> require a pad argument.  Those with-
203        out a prefix generally use <STRONG>stdscr</STRONG>.
204
205        The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate
206        to move to before performing the appropriate action.   The
207        <STRONG>mv</STRONG>  routines  imply  a call to <STRONG>move</STRONG> before the call to the
208        other routine.  The coordinate <EM>y</EM> always refers to the  row
209        (of  the  window), and <EM>x</EM> always refers to the column.  The
210        upper left-hand corner is always (0,0), not (1,1).
211
212        The routines prefixed with <STRONG>mvw</STRONG> take both a window argument
213        and  <EM>x</EM>  and  <EM>y</EM> coordinates.  The window argument is always
214        specified before the coordinates.
215
216        In each case, <EM>win</EM> is the window affected, and <EM>pad</EM>  is  the
217        pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG>
218        <STRONG>DOW</STRONG>.
219
220        Option setting routines require a Boolean flag <EM>bf</EM> with the
221        value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>.  The vari-
222        ables <EM>ch</EM> and <EM>attrs</EM> below are always of type  <STRONG>chtype</STRONG>.   The
223        types  <STRONG>WINDOW</STRONG>,  <STRONG>SCREEN</STRONG>,  <STRONG>bool</STRONG>,  and  <STRONG>chtype</STRONG> are defined in
224        <STRONG>&lt;curses.h&gt;</STRONG>.  The type <STRONG>TERMINAL</STRONG>  is  defined  in  <STRONG>&lt;term.h&gt;</STRONG>.
225        All other arguments are integers.
226
227    <STRONG>Routine</STRONG> <STRONG>Name</STRONG> <STRONG>Index</STRONG>
228        The following table lists each <STRONG>curses</STRONG> routine and the name
229        of the manual page on which  it  is  described.   Routines
230        flagged  with  `*'  are ncurses-specific, not described by
231        XPG4 or present in SVr4.
232
233
234               <STRONG>curses</STRONG> Routine Name     Manual Page Name
235               --------------------------------------------
236               COLOR_PAIR              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
237               PAIR_NUMBER             <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
238               _nc_tracebits           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
239               _traceattr              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
240               _traceattr2             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
241               _tracechar              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
242               _tracechtype            <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
243               _tracechtype2           <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
244               _tracedump              <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
245               _tracef                 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
246               _tracemouse             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
247
248               add_wch                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
249               add_wchnstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
250               add_wchstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
251               addch                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
252               addchnstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
253               addchstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
254               addnstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
255               addnwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
256               addstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
257               addwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
258               assume_default_colors   <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
259               attr_get                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
260               attr_off                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
261               attr_on                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
262               attr_set                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
263               attroff                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
264               attron                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
265               attrset                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
266               baudrate                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
267               beep                    <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
268               bkgd                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
269               bkgdset                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
270               bkgrnd                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
271               bkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
272               border                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
273               border_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
274               box                     <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
275               box_set                 <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
276               can_change_color        <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
277               cbreak                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
278               chgat                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
279               clear                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
280               clearok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
281               clrtobot                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
282               clrtoeol                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
283               color_content           <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
284               color_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
285               copywin                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
286               curs_set                <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
287               curses_version          <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
288               def_prog_mode           <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
289               def_shell_mode          <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
290               define_key              <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
291               del_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
292               delay_output            <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
293               delch                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
294               deleteln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
295               delscreen               <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
296               delwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
297               derwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
298               doupdate                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
299               dupwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
300               echo                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
301               echo_wchar              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
302               echochar                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
303               endwin                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
304               erase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
305               erasechar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
306               erasewchar              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
307               filter                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
308               flash                   <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
309               flushinp                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
310               get_wch                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
311               get_wstr                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
312               getbegyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
313
314               getbkgd                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
315               getbkgrnd               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
316               getcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
317               getch                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
318               getmaxyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
319               getmouse                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
320               getn_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
321               getnstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
322               getparyx                <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
323               getstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
324               getsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
325               getwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
326               getyx                   <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
327               halfdelay               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
328               has_colors              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
329               has_ic                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
330               has_il                  <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
331               has_key                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
332               hline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
333               hline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
334               idcok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
335               idlok                   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
336               immedok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
337               in_wch                  <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
338               in_wchnstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
339               in_wchstr               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
340               inch                    <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
341               inchnstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
342               inchstr                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
343               init_color              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
344               init_pair               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
345               initscr                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
346               innstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
347               innwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
348               ins_nwstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
349               ins_wch                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
350               ins_wstr                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
351               insch                   <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
352               insdelln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
353               insertln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
354               insnstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
355               insstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
356               instr                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
357               intrflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
358               inwstr                  <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
359               is_linetouched          <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
360               is_wintouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
361               isendwin                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
362               key_defined             <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
363               key_name                <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
364               keybound                <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
365               keyname                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
366               keyok                   <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
367               keypad                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
368               killchar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
369               killwchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
370               leaveok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
371               longname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
372               mcprint                 <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
373               meta                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
374               mouse_trafo             <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
375               mouseinterval           <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
376               mousemask               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
377               move                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
378               mvadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
379
380               mvadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
381               mvadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
382               mvaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
383               mvaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
384               mvaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
385               mvaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
386               mvaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
387               mvaddstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
388               mvaddwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
389               mvchgat                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
390               mvcur                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
391               mvdelch                 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
392               mvderwin                <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
393               mvget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
394               mvget_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
395               mvgetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
396               mvgetn_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
397               mvgetnstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
398               mvgetstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
399               mvhline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
400               mvhline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
401               mvin_wch                <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
402               mvin_wchnstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
403               mvin_wchstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
404               mvinch                  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
405               mvinchnstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
406               mvinchstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
407               mvinnstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
408               mvinnwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
409               mvins_nwstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
410               mvins_wch               <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
411               mvins_wstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
412               mvinsch                 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
413               mvinsnstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
414               mvinsstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
415               mvinstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
416               mvinwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
417               mvprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
418               mvscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
419               mvvline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
420               mvvline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
421               mvwadd_wch              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
422               mvwadd_wchnstr          <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
423               mvwadd_wchstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
424               mvwaddch                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
425               mvwaddchnstr            <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
426               mvwaddchstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
427               mvwaddnstr              <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
428               mvwaddnwstr             <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
429               mvwaddstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
430               mvwaddwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
431               mvwchgat                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
432               mvwdelch                <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
433               mvwget_wch              <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
434               mvwget_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
435               mvwgetch                <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
436               mvwgetn_wstr            <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
437               mvwgetnstr              <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
438               mvwgetstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
439               mvwhline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
440               mvwhline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
441               mvwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
442               mvwin_wch               <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
443               mvwin_wchnstr           <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
444               mvwin_wchstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
445
446               mvwinch                 <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
447               mvwinchnstr             <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
448               mvwinchstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
449               mvwinnstr               <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
450               mvwinnwstr              <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
451               mvwins_nwstr            <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
452               mvwins_wch              <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
453               mvwins_wstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
454               mvwinsch                <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
455               mvwinsnstr              <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
456               mvwinsstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
457               mvwinstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
458               mvwinwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
459               mvwprintw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
460               mvwscanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
461               mvwvline                <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
462               mvwvline_set            <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
463               napms                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
464               newpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
465               newterm                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
466               newwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
467               nl                      <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
468               nocbreak                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
469               nodelay                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
470               noecho                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
471               nonl                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
472               noqiflush               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
473               noraw                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
474               notimeout               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
475               overlay                 <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
476               overwrite               <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
477               pair_content            <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
478               pechochar               <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
479               pnoutrefresh            <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
480               prefresh                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
481               printw                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
482               putp                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
483               putwin                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
484               qiflush                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
485               raw                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
486               redrawwin               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
487               refresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
488               reset_prog_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
489               reset_shell_mode        <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
490               resetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
491               resizeterm              <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
492               restartterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
493               ripoffline              <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
494               savetty                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
495               scanw                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
496               scr_dump                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
497               scr_init                <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
498               scr_restore             <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
499               scr_set                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
500               scrl                    <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
501               scroll                  <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
502               scrollok                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
503               set_curterm             <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
504               set_term                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
505               setcchar                <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
506               setscrreg               <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
507               setsyx                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
508               setterm                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
509               setupterm               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
510               slk_attr                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
511
512               slk_attr_off            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
513               slk_attr_on             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
514               slk_attr_set            <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
515               slk_attroff             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
516               slk_attron              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
517               slk_attrset             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
518               slk_clear               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
519               slk_color               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
520               slk_init                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
521               slk_label               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
522               slk_noutrefresh         <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
523               slk_refresh             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
524               slk_restore             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
525               slk_set                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
526               slk_touch               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
527               standend                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
528               standout                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
529               start_color             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
530               subpad                  <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
531               subwin                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
532               syncok                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
533               term_attrs              <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
534               termattrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
535               termname                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
536               tgetent                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
537               tgetflag                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
538               tgetnum                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
539               tgetstr                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
540               tgoto                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
541               tigetflag               <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
542               tigetnum                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
543               tigetstr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
544               timeout                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
545               touchline               <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
546               touchwin                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
547               tparm                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
548               tputs                   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
549               tputs                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
550               trace                   <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
551               typeahead               <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
552               unctrl                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
553               unget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
554               ungetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
555               ungetmouse              <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
556               untouchwin              <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
557               use_default_colors      <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
558               use_env                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
559               use_extended_names      <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
560               vid_attr                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
561               vid_puts                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
562               vidattr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
563               vidputs                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
564               vline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
565               vline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
566               vw_printw               <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
567               vw_scanw                <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
568               vwprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
569               vwscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
570               wadd_wch                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
571               wadd_wchnstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
572               wadd_wchstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
573               waddch                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
574               waddchnstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
575               waddchstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
576               waddnstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
577
578               waddnwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
579               waddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
580               waddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
581               wattr_get               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
582               wattr_off               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
583               wattr_on                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
584               wattr_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
585               wattroff                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
586               wattron                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
587               wattrset                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
588               wbkgd                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
589               wbkgdset                <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
590               wbkgrnd                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
591               wbkgrndset              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
592               wborder                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
593               wborder_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
594               wchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
595               wclear                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
596               wclrtobot               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
597               wclrtoeol               <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
598               wcolor_set              <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
599               wcursyncup              <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
600               wdelch                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
601               wdeleteln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
602               wecho_wchar             <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
603               wechochar               <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
604               wenclose                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
605               werase                  <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
606               wget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
607               wget_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
608               wgetbkgrnd              <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
609               wgetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
610               wgetn_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
611               wgetnstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
612               wgetstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
613               whline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
614               whline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
615               win_wch                 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
616               win_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
617               win_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
618               winch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
619               winchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
620               winchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
621               winnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
622               winnwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
623               wins_nwstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
624               wins_wch                <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
625               wins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
626               winsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
627               winsdelln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
628               winsertln               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
629               winsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
630               winsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
631               winstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
632               winwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
633               wmouse_trafo            <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
634               wmove                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
635               wnoutrefresh            <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
636               wprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
637               wredrawln               <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
638               wrefresh                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
639               wresize                 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
640               wscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
641               wscrl                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
642               wsetscrreg              <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
643
644               wstandend               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
645               wstandout               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
646               wsyncdown               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
647               wsyncup                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
648               wtimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
649               wtouchln                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
650               wunctrl                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
651               wvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
652               wvline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
653
654
655 </PRE>
656 <H2>RETURN VALUE</H2><PRE>
657        Routines that return an integer return  <STRONG>ERR</STRONG>  upon  failure
658        and  an  integer value other than <STRONG>ERR</STRONG> upon successful com-
659        pletion, unless otherwise noted in  the  routine  descrip-
660        tions.
661
662        All  macros  return  the  value  of  the <STRONG>w</STRONG> version, except
663        <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>.  The
664        return  values  of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>,
665        and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used
666        as the right-hand side of assignment statements).
667
668        Routines that return pointers return <STRONG>NULL</STRONG> on error.
669
670
671 </PRE>
672 <H2>ENVIRONMENT</H2><PRE>
673        The following environment symbols are useful for customiz-
674        ing the runtime behavior of the <STRONG>ncurses</STRONG> library.  The most
675        important ones have been already discussed in detail.
676
677        BAUDRATE
678             The  debugging library checks this environment symbol
679             when the application has redirected output to a file.
680             The  symbol's numeric value is used for the baudrate.
681             If no value is found, <STRONG>ncurses</STRONG> uses 9600.  This allows
682             testers  to construct repeatable test-cases that take
683             into account costs that depend on baudrate.
684
685        CC   When set, change occurrences of the command_character
686             (i.e.,  the  <STRONG>cmdch</STRONG> capability) of the loaded terminfo
687             entries to the value of this symbol.  Very  few  ter-
688             minfo entries provide this feature.
689
690        COLUMNS
691             Specify  the  width  of  the  screen  in  characters.
692             Applications running in a windowing environment  usu-
693             ally  are  able  to obtain the width of the window in
694             which they are executing.   If  neither  the  <STRONG>COLUMNS</STRONG>
695             value  nor  the  terminal's screen size is available,
696             <STRONG>ncurses</STRONG> uses the size which may be specified  in  the
697             terminfo database (i.e., the <STRONG>cols</STRONG> capability).
698
699             It  is  important that your application use a correct
700             size for the screen.  This  is  not  always  possible
701             because  your  application  may  be running on a host
702             which does not honor NAWS (Negotiations About  Window
703             Size),  or  because  you  are  temporarily running as
704             another user.  However, setting <STRONG>COLUMNS</STRONG> and/or  <STRONG>LINES</STRONG>
705             overrides  the  library's  use  of  the  screen  size
706             obtained from the operating system.
707
708             Either <STRONG>COLUMNS</STRONG> or  <STRONG>LINES</STRONG>  symbols  may  be  specified
709             independently.   This  is mainly useful to circumvent
710             legacy misfeatures of  terminal  descriptions,  e.g.,
711             xterm which commonly specifies a 65 line screen.  For
712             best results, <STRONG>lines</STRONG> and <STRONG>cols</STRONG> should not be  specified
713             in a terminal description for terminals which are run
714             as emulations.
715
716             Use the <STRONG>use_env</STRONG> function to disable all use of exter-
717             nal environment (including system calls) to determine
718             the screen size.
719
720        ESCDELAY
721             Specifies the total time, in milliseconds, for  which
722             ncurses  will  await  a  character  sequence, e.g., a
723             function key.  The default value, 1000  milliseconds,
724             is enough for most uses.  However, it is made a vari-
725             able to accommodate unusual applications.
726
727             The most common instance where you may wish to change
728             this  value is to work with slow hosts, e.g., running
729             on a network.  If the  host  cannot  read  characters
730             rapidly  enough,  it  will have the same effect as if
731             the terminal did not send characters rapidly  enough.
732             The library will still see a timeout.
733
734             Note  that xterm mouse events are built up from char-
735             acter sequences received from  the  xterm.   If  your
736             application makes heavy use of multiple-clicking, you
737             may wish to lengthen this default value  because  the
738             timeout  applies to the composed multi-click event as
739             well as the individual clicks.
740
741             In addition to the environment variable, this  imple-
742             mentation  provides  a  global variable with the same
743             name.  Portable applications should not rely upon the
744             presence  of ESCDELAY in either form, but setting the
745             environment variable rather than the global  variable
746             does  not  create problems when compiling an applica-
747             tion.
748
749        HOME Tells <STRONG>ncurses</STRONG> where your home directory is.  That  is
750             where  it  may  read  and  write  auxiliary  terminal
751             descriptions:
752
753             $HOME/.termcap
754             $HOME/.terminfo
755
756        LINES
757             Like COLUMNS, specify the height  of  the  screen  in
758             characters.   See COLUMNS for a detailed description.
759
760        MOUSE_BUTTONS_123
761             This applies only to the OS/2 EMX port.  It specifies
762             the  order  of  buttons on the mouse.  OS/2 numbers a
763             3-button mouse inconsistently from other platforms:
764
765             1 = left
766             2 = right
767             3 = middle.
768
769             This symbol lets you customize the mouse.  The symbol
770             must  be three numeric digits 1-3 in any order, e.g.,
771             123 or 321.  If it is  not  specified,  <STRONG>ncurses</STRONG>  uses
772             132.
773
774        NCURSES_ASSUMED_COLORS
775             Override  the  compiled-in assumption that the termi-
776             nal's  default   colors   are   white-on-black   (see
777             <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>).   You may set the foreground and
778             background color values with this  environment  vari-
779             able     by     proving     a     2-element     list:
780             foreground,background.  For example, to tell  ncurses
781             to  not assume anything about the colors, set this to
782             "-1,-1".  To make it green-on-black, set it to "2,0".
783             Any positive value from zero to the terminfo <STRONG>max_col-</STRONG>
784             <STRONG>ors</STRONG> value is allowed.
785
786        NCURSES_NO_HARD_TABS
787             <STRONG>Ncurses</STRONG> may use tabs as part of the  cursor  movement
788             optimization.   In  some  cases, your terminal driver
789             may not handle these properly.  Set this  environment
790             variable to disable the feature.  You can also adjust
791             your <STRONG>stty</STRONG> settings to avoid the problem.
792
793        NCURSES_NO_MAGIC_COOKIES
794             Some  terminals  use  a  magic-cookie  feature  which
795             requires  special  handling  to make highlighting and
796             other video attributes  display  properly.   You  can
797             suppress  the  highlighting entirely for these termi-
798             nals by setting this environment variable.
799
800        NCURSES_NO_PADDING
801             Most of the terminal  descriptions  in  the  terminfo
802             database  are  written for real "hardware" terminals.
803             Many people use terminal emulators  which  run  in  a
804             windowing  environment  and use curses-based applica-
805             tions.  Terminal emulators can duplicate all  of  the
806             important aspects of a hardware terminal, but they do
807             not have the same limitations.  The chief  limitation
808             of  a  hardware  terminal from the standpoint of your
809             application is the management of dataflow, i.e., tim-
810             ing.  Unless a hardware terminal is interfaced into a
811             terminal concentrator (which does flow  control),  it
812             (or  your application) must manage dataflow, prevent-
813             ing overruns.  The  cheapest  solution  (no  hardware
814             cost) is for your program to do this by pausing after
815             operations that the terminal  does  slowly,  such  as
816             clearing the display.
817
818             As  a  result,  many terminal descriptions (including
819             the vt100) have delay times embedded.  You  may  wish
820             to  use  these  descriptions, but not want to pay the
821             performance penalty.
822
823             Set the NCURSES_NO_PADDING symbol to disable all  but
824             mandatory  padding.   Mandatory  padding is used as a
825             part of special control sequences such as <EM>flash</EM>.
826
827        NCURSES_NO_SETBUF
828             Normally <STRONG>ncurses</STRONG> enables buffered output during  ter-
829             minal  initialization.   This  is  done  (as  in SVr4
830             curses) for performance reasons.   For  testing  pur-
831             poses, both of <STRONG>ncurses</STRONG> and certain applications, this
832             feature    is    made    optional.     Setting    the
833             NCURSES_NO_SETBUF variable disables output buffering,
834             leaving the output  in  the  original  (usually  line
835             buffered) mode.
836
837        NCURSES_NO_UTF8_ACS
838             During initialization, the <STRONG>ncurses</STRONG> library checks for
839             special cases where VT100 line-drawing (and the  cor-
840             responding   alternate  character  set  capabilities)
841             described in the terminfo are known  to  be  missing.
842             Specifically,  when  running  in  a UTF-8 locale, the
843             Linux console emulator and  the  GNU  screen  program
844             ignore  these.   Ncurses  checks the TERM environment
845             variable for these.  For  other  special  cases,  you
846             should  set  this  environment  variable.  Doing this
847             tells ncurses to use Unicode values which  correspond
848             to the VT100 line-drawing glyphs.  That works for the
849             special cases cited, and is likely to work for termi-
850             nal emulators.
851
852             When  setting  this  variable, you should set it to a
853             nonzero value.  Setting it to zero (or to  a  nonnum-
854             ber) disables the special check for Linux and screen.
855
856        NCURSES_TRACE
857             During initialization, the <STRONG>ncurses</STRONG> debugging  library
858             checks  the  NCURSES_TRACE symbol.  If it is defined,
859             to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> function,
860             using that value as the argument.
861
862             The  argument  values, which are defined in <STRONG>curses.h</STRONG>,
863             provide several types of information.   When  running
864             with  traces enabled, your application will write the
865             file <STRONG>trace</STRONG> to the current directory.
866
867        TERM Denotes your terminal type.  Each  terminal  type  is
868             distinct, though many are similar.
869
870        TERMCAP
871             If the <STRONG>ncurses</STRONG> library has been configured with <EM>term-</EM>
872             <EM>cap</EM> support, <STRONG>ncurses</STRONG>  will  check  for  a  terminal's
873             description in termcap form if it is not available in
874             the terminfo database.
875
876             The  TERMCAP  symbol  contains  either   a   terminal
877             description  (with  newlines stripped out), or a file
878             name telling where the  information  denoted  by  the
879             TERM  symbol  exists.   In  either  case,  setting it
880             directs <STRONG>ncurses</STRONG> to ignore the usual  place  for  this
881             information, e.g., /etc/termcap.
882
883        TERMINFO
884             Overrides the directory in which <STRONG>ncurses</STRONG> searches for
885             your terminal description.  This is the simplest, but
886             not  the  only way to change the list of directories.
887             The complete list of directories in order follows:
888
889             -  the last directory to which <STRONG>ncurses</STRONG> wrote, if any,
890                is searched first
891
892             -  the directory specified by the TERMINFO symbol
893
894             -  $HOME/.terminfo
895
896             -  directories listed in the TERMINFO_DIRS symbol
897
898             -  one or more directories whose names are configured
899                and  compiled  into  the  ncurses  library,  e.g.,
900                /usr/share/terminfo
901
902        TERMINFO_DIRS
903             Specifies  a list of directories to search for termi-
904             nal descriptions.  The list is  separated  by  colons
905             (i.e.,  ":") on Unix, semicolons on OS/2 EMX.  All of
906             the terminal descriptions are in terminfo form, which
907             makes  a  subdirectory  named for the first letter of
908             the terminal names therein.
909
910        TERMPATH
911             If TERMCAP does not hold a  file  name  then  <STRONG>ncurses</STRONG>
912             checks  the  TERMPATH  symbol.   This  is  a  list of
913             filenames separated by spaces or colons  (i.e.,  ":")
914             on  Unix,  semicolons  on  OS/2 EMX.  If the TERMPATH
915             symbol  is  not  set,  <STRONG>ncurses</STRONG>  looks  in  the  files
916             /etc/termcap,       /usr/share/misc/termcap       and
917             $HOME/.termcap, in that order.
918
919        The library may be configured to disregard  the  following
920        variables  when  the current user is the superuser (root),
921        or if the application uses setuid or  setgid  permissions:
922        $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
923
924
925 </PRE>
926 <H2>ALTERNATE CONFIGURATIONS</H2><PRE>
927        Several  different  configurations are possible, depending
928        on  the  configure  script  options  used  when   building
929        <STRONG>ncurses</STRONG>.   There  are a few main options whose effects are
930        visible to the applications developer using <STRONG>ncurses</STRONG>:
931
932        --disable-overwrite
933             The standard include for <STRONG>ncurses</STRONG> is as noted in  <STRONG>SYN-</STRONG>
934             <STRONG>OPSIS</STRONG>:
935
936             <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
937
938             This  option is used to avoid filename conflicts when
939             <STRONG>ncurses</STRONG> is not the main implementation of  curses  of
940             the  computer.   If  <STRONG>ncurses</STRONG>  is  installed disabling
941             overwrite, it puts its  headers  in  a  subdirectory,
942             e.g.,
943
944             <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
945
946             It  also  omits a symbolic link which would allow you
947             to use <STRONG>-lcurses</STRONG> to build executables.
948
949        --enable-widec
950             The configure script renames the library and (if  the
951             <STRONG>--disable-overwrite</STRONG>  option  is used) puts the header
952             files  in  a  different  subdirectory.   All  of  the
953             library  names  have  a  "w"  appended to them, i.e.,
954             instead of
955
956             <STRONG>-lncurses</STRONG>
957
958             you link with
959
960             <STRONG>-lncursesw</STRONG>
961
962             You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com-
963             piling  for  the  wide-character  library  to use the
964             extended (wide-character)  functions.   The  <STRONG>curses.h</STRONG>
965             file   which  is  installed  for  the  wide-character
966             library is designed to be compatible with the  normal
967             library's header.  Only the size of the <STRONG>WINDOW</STRONG> struc-
968             ture differs, and very few applications require  more
969             than  a  pointer  to  <STRONG>WINDOW</STRONG>s.   If  the  headers are
970             installed  allowing  overwrite,  the   wide-character
971             library's  headers should be installed last, to allow
972             applications to be built using  either  library  from
973             the same set of headers.
974
975        --with-shared
976
977        --with-normal
978
979        --with-debug
980
981        --with-profile
982             The  shared  and normal (static) library names differ
983             by   their   suffixes,   e.g.,   <STRONG>libncurses.so</STRONG>    and
984             <STRONG>libncurses.a</STRONG>.   The debug and profiling libraries add
985             a "_g" and a "_p" to  the  root  names  respectively,
986             e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
987
988        --with-trace
989             The  <STRONG>trace</STRONG>  function  normally  resides  in the debug
990             library, but it is sometimes useful to configure this
991             in  the  shared  library.   Configure  scripts should
992             check for the function's existence rather than assum-
993             ing it is always in the debug library.
994
995
996 </PRE>
997 <H2>FILES</H2><PRE>
998        /usr/share/tabset
999             directory  containing  initialization  files  for the
1000             terminal capability database /usr/share/terminfo ter-
1001             minal capability database
1002
1003
1004 </PRE>
1005 <H2>SEE ALSO</H2><PRE>
1006        <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>  and  related  pages whose names begin "curs_"
1007        for detailed routine descriptions.
1008
1009
1010 </PRE>
1011 <H2>EXTENSIONS</H2><PRE>
1012        The  <STRONG>ncurses</STRONG>  library  can  be  compiled  with  an  option
1013        (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term-
1014        cap file if the terminal setup code cannot find a terminfo
1015        entry  corresponding  to <STRONG>TERM</STRONG>.  Use of this feature is not
1016        recommended, as it essentially includes an entire  termcap
1017        compiler  in the <STRONG>ncurses</STRONG> startup code, at significant cost
1018        in core and startup cycles.
1019
1020        The <STRONG>ncurses</STRONG>  library  includes  facilities  for  capturing
1021        mouse  events  on certain terminals (including xterm). See
1022        the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1023
1024        The <STRONG>ncurses</STRONG> library includes facilities for responding  to
1025        window  resizing  events,  e.g., when running in an xterm.
1026        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
1027        details.   In addition, the library may be configured with
1028        a SIGWINCH handler.
1029
1030        The <STRONG>ncurses</STRONG> library extends the fixed set of function  key
1031        capabilities  of  terminals  by  allowing  the application
1032        designer to define additional key  sequences  at  runtime.
1033        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-
1034        ual pages for details.
1035
1036        The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi-
1037        nals  which  implement the ISO-6429 SGR 39 and SGR 49 con-
1038        trols, which allow an application to reset the terminal to
1039        its  original  foreground and background colors.  From the
1040        users' perspective, the application is able to  draw  col-
1041        ored  text  on  a  background  whose color is set indepen-
1042        dently, providing better  control  over  color  contrasts.
1043        See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details.
1044
1045        The  <STRONG>ncurses</STRONG>  library  includes  a  function for directing
1046        application output to a printer attached to  the  terminal
1047        device.  See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details.
1048
1049
1050 </PRE>
1051 <H2>PORTABILITY</H2><PRE>
1052        The  <STRONG>ncurses</STRONG>  library is intended to be BASE-level confor-
1053        mant with the  XSI  Curses  standard.   The  EXTENDED  XSI
1054        Curses  functionality  (including  color  support) is sup-
1055        ported.
1056
1057        A small number of local differences (that  is,  individual
1058        differences  between the XSI Curses and <STRONG>ncurses</STRONG> calls) are
1059        described in  <STRONG>PORTABILITY</STRONG>  sections  of  the  library  man
1060        pages.
1061
1062        The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it present
1063        in SVr4.  See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page for  details.
1064
1065        The  routine  <STRONG>slk_attr</STRONG>  is  not  part  of  XPG4, nor is it
1066        present in SVr4.  See the  <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>  manual  page  for
1067        details.
1068
1069        The  routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mouseinter-</STRONG>
1070        <STRONG>val</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse  interfacing  are  not
1071        part  of  XPG4,  nor  are  they  present in SVr4.  See the
1072        <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details.
1073
1074        The routine <STRONG>mcprint</STRONG> was not present in any previous curses
1075        implementation.   See  the  <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for
1076        details.
1077
1078        The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it present
1079        in SVr4.  See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for details.
1080
1081        In  historic curses versions, delays embedded in the capa-
1082        bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding
1083        delay  bits  in  the UNIX tty driver.  In this implementa-
1084        tion, all padding is done by NUL sends.   This  method  is
1085        slightly  more expensive, but narrows the interface to the
1086        UNIX kernel  significantly  and  increases  the  package's
1087        portability correspondingly.
1088
1089
1090 </PRE>
1091 <H2>NOTES</H2><PRE>
1092        The  header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes the
1093        header files <STRONG>&lt;stdio.h&gt;</STRONG> and <STRONG>&lt;unctrl.h&gt;</STRONG>.
1094
1095        If standard output from a <STRONG>ncurses</STRONG> program  is  re-directed
1096        to  something  which  is not a tty, screen updates will be
1097        directed to standard error.  This was an undocumented fea-
1098        ture of AT&amp;T System V Release 3 curses.
1099
1100
1101 </PRE>
1102 <H2>AUTHORS</H2><PRE>
1103        Zeyd  M.  Ben-Halim,  Eric  S.  Raymond, Thomas E. Dickey.
1104        Based on pcurses by Pavel Curtis.
1105
1106
1107
1108                                                             <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1109 </PRE>
1110 <HR>
1111 <ADDRESS>
1112 Man(1) output converted with
1113 <a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
1114 </ADDRESS>
1115 </BODY>
1116 </HTML>