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