]> ncurses.scripts.mit.edu Git - ncurses.git/blob - doc/html/man/ncurses.3x.html
e36b0fce404a2ec8f328f55cb816a407466603ec
[ncurses.git] / doc / html / man / ncurses.3x.html
1 <!--
2   * t
3   ****************************************************************************
4   * Copyright 2018-2023,2024 Thomas E. Dickey                                *
5   * Copyright 1998-2015,2017 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.219 2024/05/25 20:57:45 tom Exp @
32 -->
33 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
34 <HTML>
35 <HEAD>
36 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
37 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
38 <TITLE>ncurses 3x 2024-05-25 ncurses 6.5 Library calls</TITLE>
39 <link rel="author" href="mailto:bug-ncurses@gnu.org">
40
41 </HEAD>
42 <BODY>
43 <H1 class="no-header">ncurses 3x 2024-05-25 ncurses 6.5 Library calls</H1>
44 <PRE>
45 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                      Library calls                     <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
46
47
48
49
50 </PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
51        <STRONG>ncurses</STRONG> - character-cell terminal interface with optimized output
52
53
54 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
55        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
56
57
58 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
59        The  "new  curses" library offers the programmer a terminal-independent
60        means of reading keyboard and mouse input and  updating  character-cell
61        terminals  with  output  optimized to minimize screen updates.  <EM>ncurses</EM>
62        replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and
63        4.4BSD  Unix,  the  development  of  which  ceased  in the 1990s.  This
64        document describes <EM>ncurses</EM> version 6.5 (patch 20240525).
65
66        <EM>ncurses</EM> permits control of the terminal screen's contents;  abstraction
67        and  subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard
68        and mouse  events;  control  of  terminal  input  and  output  options;
69        selection   of   color  and  rendering  attributes  (such  as  bold  or
70        underline); the definition and use of <EM>soft</EM> <EM>label</EM> keys;  access  to  the
71        <EM>terminfo</EM>   terminal   capability   database;  a  <EM>termcap</EM>  compatibility
72        interface; and an abstraction of the system's API for manipulating  the
73        terminal (such as <STRONG>termios(3)</STRONG>).
74
75        <EM>ncurses</EM>  implements  the  interface described by X/Open Curses Issue 7.
76        In many behavioral details not standardized by X/Open, <EM>ncurses</EM> emulates
77        the <EM>curses</EM> library of SVr4 and provides numerous useful extensions.
78
79        <EM>ncurses</EM>  man  pages employ several sections to clarify matters of usage
80        and interoperability with other <EM>curses</EM> implementations.
81
82        <STRONG>o</STRONG>   "NOTES" describes issues and caveats  of  which  any  user  of  the
83            <EM>ncurses</EM>  API should be aware, such as limitations on the size of an
84            underlying integral type or  the  availability  of  a  preprocessor
85            macro  exclusive  of  a  function  definition  (which  prevents its
86            address  from  being   taken).    This   section   also   describes
87            implementation  details  that will be significant to the programmer
88            but which are not standardized.
89
90        <STRONG>o</STRONG>   "EXTENSIONS" presents <EM>ncurses</EM> innovations beyond the X/Open  Curses
91            standard  and/or  the  SVr4 <EM>curses</EM> implementation.  They are termed
92            <EM>extensions</EM> to indicate that they cannot be  implemented  solely  by
93            using the library API, but require access to the library's internal
94            state.
95
96        <STRONG>o</STRONG>   "PORTABILITY" discusses matters (beyond the exercise of extensions)
97            that should be considered when writing to a <EM>curses</EM> standard, or for
98            multiple implementations.
99
100        <STRONG>o</STRONG>   "HISTORY" examines points of detail in  <EM>ncurses</EM>  and  other  <EM>curses</EM>
101            implementations over the decades of their development, particularly
102            where precedent or inertia have frustrated better design (and, in a
103            few cases, where such inertia has been overcome).
104
105        A <EM>curses</EM> application must be linked with the library; use the <STRONG>-lncurses</STRONG>
106        option to your compiler or linker.  A debugging version of the  library
107        may  be available; if so, link with it using <STRONG>-lncurses_g</STRONG>.  (Your system
108        integrator may have installed these libraries such that you can use the
109        options  <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>, respectively.)  The <EM>ncurses</EM><STRONG>_</STRONG><EM>g</EM> library
110        generates trace logs (in a file called <EM>trace</EM> in the current  directory)
111        that  describe <EM>ncurses</EM> actions.  See section "ALTERNATE CONFIGURATIONS"
112        below.
113
114
115 </PRE><H3><a name="h3-Application-Structure">Application Structure</a></H3><PRE>
116        A  <EM>curses</EM>  application  uses  information  from  the   system   locale;
117        <STRONG>setlocale(3)</STRONG> prepares it for <EM>curses</EM> library calls.
118
119            setlocale(LC_ALL, "");
120
121        If  the  locale  is  not  thus  initialized,  the  library assumes that
122        characters are printable as in ISO 8859-1, to work with certain  legacy
123        programs.   You  should initialize the locale; do not expect consistent
124        behavior from the library when the locale has not been set up.
125
126        <STRONG><A HREF="curs_initscr.3x.html">initscr(3x)</A></STRONG> or <STRONG><A HREF="curs_initscr.3x.html">newterm(3x)</A></STRONG> must be called to initialize  <EM>curses</EM>  before
127        use of any functions that deal with windows and screens.
128
129        To  get  character-at-a-time  input  without echoing--most interactive,
130        screen-oriented programs want this--use the following sequence.
131
132            initscr(); cbreak(); noecho();
133
134        Most applications would perform further setup as follows.
135
136            noqiflush();
137            keypad(stdscr, TRUE);
138
139        A <EM>curses</EM> program then often enters an event loop of  some  sort.   Call
140        <STRONG><A HREF="curs_initscr.3x.html">endwin(3x)</A></STRONG> before exiting.
141
142
143 </PRE><H3><a name="h3-Overview">Overview</a></H3><PRE>
144        A  <EM>curses</EM>  library abstracts the terminal screen by representing all or
145        part of it as a <EM>WINDOW</EM> data structure.  A <EM>window</EM> is a rectangular  grid
146        of  character  cells,  addressed  by row and column coordinates (<EM>y</EM>, <EM>x</EM>),
147        with the upper left corner as (0, 0).  A window called <STRONG>stdscr</STRONG>, the same
148        size  as  the terminal screen, is always available.  Create others with
149        <STRONG><A HREF="curs_window.3x.html">newwin(3x)</A></STRONG>.
150
151        A <EM>curses</EM> library does not manage overlapping windows (but  see  below).
152        You  can either use <STRONG>stdscr</STRONG> to manage one screen-filling window, or tile
153        the screen into non-overlapping windows and  not  use  <STRONG>stdscr</STRONG>  at  all.
154        Mixing  the  two  approaches will result in unpredictable and undesired
155        effects.
156
157        Functions permit manipulation of a window and  the  <EM>cursor</EM>  identifying
158        the  cell  within  it  at  which  the next output operation will occur.
159        Among those, the most basic are <STRONG><A HREF="curs_move.3x.html">move(3x)</A></STRONG> and <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>: these place the
160        cursor and write a character to <STRONG>stdscr</STRONG>, respectively.
161
162        Frequent changes to the terminal screen can cause unpleasant flicker or
163        inefficient use of the communication channel to the  device,  so  as  a
164        rule  the  library  does not update it automatically.  Therefore, after
165        using <EM>curses</EM> functions to accumulate a set of desired updates that make
166        sense to present together, call <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> to tell the library to make
167        the user's screen look like <STRONG>stdscr</STRONG>.  The library <EM>optimizes</EM>  its  output
168        by  computing  a minimal volume of operations to mutate the screen from
169        its  state  at  the  previous  refresh  to  the  new  one.    Effective
170        optimization  demands  accurate  information about the terminal device:
171        the management of such information is the province of the  <STRONG><A HREF="curs_terminfo.3x.html">terminfo(3x)</A></STRONG>
172        API, a feature of every standard <EM>curses</EM> implementation.
173
174        Special  windows  called  <EM>pads</EM>  may also be manipulated.  These are not
175        constrained to the size of the terminal screen and their contents  need
176        not be completely displayed.  See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>.
177
178        Many  terminals  support configuration of character cell foreground and
179        background colors as well as  <EM>attributes</EM>,  which  cause  characters  to
180        render  in  such  modes  as boldfaced, underlined, or in reverse video.
181        See <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>.
182
183        <EM>curses</EM> predefines constants for a small set of  forms-drawing  graphics
184        corresponding  to  the  DEC Alternate Character Set (ACS), a feature of
185        VT100 and other terminals.  See <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>.
186
187        <EM>curses</EM> is implemented using the operating system's terminal driver; key
188        events are received not as scan codes but as byte sequences.  Graphical
189        keycaps (alphanumeric and punctuation keys, and the space)  appear  as-
190        is.   Everything  else, including the tab, enter/return, keypad, arrow,
191        and function keys, appears as a control character or a multibyte <EM>escape</EM>
192        <EM>sequence.</EM>   <EM>curses</EM> can translate the latter into unique <EM>key</EM> <EM>codes.</EM>  See
193        <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG> and <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
194
195        <EM>ncurses</EM> provides reimplementations of the SVr4 <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, and
196        <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>   libraries;   they   permit   overlapping  windows  and  ease
197        construction of user interfaces with <EM>curses</EM>.
198
199
200 </PRE><H3><a name="h3-Initialization">Initialization</a></H3><PRE>
201        The  selection  of  an  appropriate  value  of  <EM>TERM</EM>  in  the   process
202        environment  is  essential  to  correct  <EM>curses</EM>  and  <EM>terminfo</EM>  library
203        operation.  A well-configured  system  selects  a  correct  <EM>TERM</EM>  value
204        automatically;   <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>   may   assist   with  troubleshooting  exotic
205        situations.
206
207        If you change the terminal type, export the shell's <EM>TERM</EM> variable, then
208        run  <STRONG><A HREF="tset.1.html">tset(1)</A></STRONG>  or  the  "<STRONG>tput</STRONG>  <STRONG>init</STRONG>"  command.  See subsection "Tabs and
209        Initialization" of <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>.
210
211        If the environment variables <EM>LINES</EM> and  <EM>COLUMNS</EM>  are  set,  or  if  the
212        <EM>curses</EM>  program  is executing in a graphical windowing environment, the
213        information obtained thence overrides that obtained  by  <EM>terminfo</EM>.   An
214        <EM>ncurses</EM> extension supports resizable terminals; see <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>.
215
216        If  the  environment  variable  <EM>TERMINFO</EM>  is  defined, a <EM>curses</EM> program
217        checks first for  a  terminal  type  description  in  the  location  it
218        identifies.   <EM>TERMINFO</EM>  is  useful  for developing type descriptions or
219        when write permission to <EM>/usr/share/terminfo</EM> is not available.
220
221        See section "ENVIRONMENT" below.
222
223
224 </PRE><H3><a name="h3-Naming-Conventions">Naming Conventions</a></H3><PRE>
225        <EM>curses</EM> offers many functions in variant forms using a  regular  set  of
226        alternatives  to the name of an elemental one.  Those prefixed with "w"
227        require a <EM>WINDOW</EM> pointer argument;  those  with  a  "mv"  prefix  first
228        perform cursor movement using <STRONG><A HREF="curs_move.3x.html">wmove(3x)</A></STRONG>; a "mvw" prefix indicates both.
229        The "w" function is typically the elemental one; the  removal  of  this
230        prefix usually indicates operation on <STRONG>stdscr</STRONG>.
231
232        Four functions prefixed with "p" require a pad argument.
233
234        In  function  synopses,  <EM>ncurses</EM> man pages apply the following names to
235        parameters.
236
237                        <EM>bf</EM>    a <EM>bool</EM> (<STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>)
238                        <EM>c</EM>     a <EM>char</EM> or <EM>int</EM>
239                        <EM>ch</EM>    a <EM>chtype</EM>
240                        <EM>wc</EM>    a <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM> or <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>
241                        <EM>wch</EM>   a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>
242                        <EM>win</EM>   pointer to a <EM>WINDOW</EM>
243                        <EM>pad</EM>   pointer to a <EM>WINDOW</EM> that is a pad
244
245
246 </PRE><H3><a name="h3-Wide-and-Non-wide-Character-Configurations">Wide and Non-wide Character Configurations</a></H3><PRE>
247        This  man  page  primarily  surveys  functions  that  appear   in   any
248        configuration of the library.  There are two common configurations; see
249        section "ALTERNATE CONFIGURATIONS" below.
250
251        <EM>ncurses</EM>   is the library in its "non-wide" configuration, handling only
252                  eight-bit  characters.   It  stores a character combined with
253                  attributes and a color pair in a <EM>chtype</EM> datum, which is often
254                  an alias of <EM>int</EM>.  A string of <EM>curses</EM> characters is similar to
255                  a C <EM>char</EM> string; a <EM>chtype</EM> string ends with an integral <STRONG>0</STRONG>, the
256                  null <EM>curses</EM> character.
257
258                  Attributes  and a color pair selection (with no corresponding
259                  character) can be stored in variables  of  <EM>chtype</EM>  or  <EM>attr</EM><STRONG>_</STRONG><EM>t</EM>
260                  type.   In either case, they are accessed via an integral bit
261                  mask.
262
263                  Each cell of a <EM>WINDOW</EM> is stored as a <EM>chtype</EM>.
264
265        <EM>ncursesw</EM>  is the library in its  "wide"  configuration,  which  handles
266                  character encodings requiring a larger data type than <EM>char</EM> (a
267                  byte-sized type) can represent.  It adds about one third more
268                  calls  using  additional  data  types  that  can  store  such
269                  <EM>multibyte</EM> characters.
270
271                  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>  corresponds to the non-wide configuration's  <EM>chtype</EM>.
272                           It  always  a structure type, because it stores more
273                           data than  fit  into  a  standard  scalar  type.   A
274                           character  code  may not be representable as a <EM>char</EM>,
275                           and moreover more than one character  may  occupy  a
276                           cell  (as  with  accent marks and other diacritics).
277                           Each  character  is  of  type  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>;  a   complex
278                           character contains one spacing character and zero or
279                           more non-spacing characters (see below).   A  string
280                           of  complex  characters  ends  with  a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> whose
281                           <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>  member  is   the   null   wide   character.
282                           Attributes  and a color pair selection are stored in
283                           separate fields of the structure, not combined  into
284                           an integer as in <EM>chtype</EM>.
285
286                  Each cell of a <EM>WINDOW</EM> is stored as a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>.
287
288                  <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>  and  <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG>  store  and  retrieve <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>
289                  data.  The wide library API of <EM>ncurses</EM> depends  on  two  data
290                  types standardized by ISO C95.
291
292                  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>  stores  a wide character.  Like <EM>chtype</EM>, it may be an
293                           alias of <EM>int</EM>.  Depending on the character  encoding,
294                           a  wide  character  may  be <EM>spacing</EM>, meaning that it
295                           occupies a character cell by  itself  and  typically
296                           accompanies   cursor  advancement,  or  <EM>non-spacing</EM>,
297                           meaning that it occupies the same cell as a  spacing
298                           character,  is often regarded as a "modifier" of the
299                           base glyph with which  it  combines,  and  typically
300                           does not advance the cursor.
301
302                  <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>   can   store   a   <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>   or  the  constant  <STRONG>WEOF</STRONG>,
303                           analogously to the <EM>int</EM>-sized character  manipulation
304                           functions of ISO C and its constant <STRONG>EOF</STRONG>.
305
306                  The   wide   library   provides   additional  functions  that
307                  complement those in the non-wide library where  the  size  of
308                  the  underlying  character  type  is significant.  A somewhat
309                  regular naming convention relates many of the  wide  variants
310                  to  their  non-wide  counterparts;  where a non-wide function
311                  name contains "ch" or "str", prefix it with  "_w"  to  obtain
312                  the  wide counterpart.  For example, <STRONG>waddch</STRONG> becomes <STRONG>wadd_wch</STRONG>.
313                  (Exceptions that add only "w" comprise <STRONG>addwstr</STRONG>,  <STRONG>inwstr</STRONG>,  and
314                  their variants.)
315
316                  This  convention  is  inapplicable  to some non-wide function
317                  names,  so  other  transformations  are  used  for  the  wide
318                  configuration:  the  window  background  management  function
319                  "bkgd"  becomes  "bkgrnd";  the  window  border-drawing   and
320                  -clearing  functions  are suffixed with "_set"; and character
321                  attribute  manipulation  functions   like   "attron"   become
322                  "attr_on".
323
324
325 </PRE><H3><a name="h3-Function-Name-Index">Function Name Index</a></H3><PRE>
326        The following table lists the <EM>curses</EM> functions provided in the non-wide
327        and wide APIs and the  corresponding  man  pages  that  describe  them.
328        Those  flagged  with  "*"  are  <EM>ncurses</EM>-specific,  neither described by
329        X/Open Curses nor present in SVr4.
330
331                     <STRONG><EM>curses</EM></STRONG> Function Name     Man Page
332                     ---------------------------------------------
333                     COLOR_PAIR               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
334                     PAIR_NUMBER              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
335                     add_wch                  <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
336                     add_wchnstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
337                     add_wchstr               <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
338                     addch                    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
339                     addchnstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
340                     addchstr                 <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
341                     addnstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
342                     addnwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
343                     addstr                   <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
344                     addwstr                  <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
345                     alloc_pair               <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
346                     assume_default_colors    <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
347                     attr_get                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
348                     attr_off                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
349                     attr_on                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
350                     attr_set                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
351                     attroff                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
352                     attron                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
353                     attrset                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
354                     baudrate                 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
355                     beep                     <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
356                     bkgd                     <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
357                     bkgdset                  <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
358                     bkgrnd                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
359                     bkgrndset                <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
360                     border                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
361                     border_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
362                     box                      <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
363                     box_set                  <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
364                     can_change_color         <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
365                     cbreak                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
366                     chgat                    <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
367                     clear                    <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
368                     clearok                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
369                     clrtobot                 <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
370                     clrtoeol                 <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
371                     color_content            <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
372                     color_set                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
373                     copywin                  <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
374                     curs_set                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
375                     curses_trace             <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
376                     curses_version           <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
377                     def_prog_mode            <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
378                     def_shell_mode           <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
379                     define_key               <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>*
380                     del_curterm              <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
381                     delay_output             <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
382                     delch                    <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
383                     deleteln                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
384                     delscreen                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
385
386                     delwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
387                     derwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
388                     doupdate                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
389                     dupwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
390                     echo                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
391                     echo_wchar               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
392                     echochar                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
393                     endwin                   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
394                     erase                    <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
395                     erasechar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
396                     erasewchar               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
397                     exit_curses              <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
398                     exit_terminfo            <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>*
399                     extended_color_content   <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
400                     extended_pair_content    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
401                     extended_slk_color       <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
402                     filter                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
403                     find_pair                <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
404                     flash                    <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG>
405                     flushinp                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
406                     free_pair                <STRONG><A HREF="new_pair.3x.html">new_pair(3x)</A></STRONG>*
407                     get_escdelay             <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>*
408                     get_wch                  <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
409                     get_wstr                 <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
410                     getattrs                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
411                     getbegx                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
412                     getbegy                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
413                     getbegyx                 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
414                     getbkgd                  <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
415                     getbkgrnd                <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
416                     getcchar                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
417                     getch                    <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
418                     getcurx                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
419                     getcury                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
420                     getmaxx                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
421                     getmaxy                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
422                     getmaxyx                 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
423                     getmouse                 <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
424                     getn_wstr                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
425                     getnstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
426                     getparx                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
427                     getpary                  <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>*
428                     getparyx                 <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
429                     getstr                   <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
430                     getsyx                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
431                     getwin                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
432                     getyx                    <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG>
433                     halfdelay                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
434                     has_colors               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
435                     has_ic                   <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
436                     has_il                   <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
437                     has_key                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>*
438                     has_mouse                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
439                     hline                    <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
440                     hline_set                <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
441                     idcok                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
442                     idlok                    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
443                     immedok                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
444                     in_wch                   <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
445                     in_wchnstr               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
446                     in_wchstr                <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
447                     inch                     <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
448                     inchnstr                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
449                     inchstr                  <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
450                     init_color               <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
451                     init_extended_color      <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
452
453                     init_extended_pair       <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
454                     init_pair                <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
455                     initscr                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
456                     innstr                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
457                     innwstr                  <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
458                     ins_nwstr                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
459                     ins_wch                  <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
460                     ins_wstr                 <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
461                     insch                    <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
462                     insdelln                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
463                     insertln                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
464                     insnstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
465                     insstr                   <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
466                     instr                    <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
467                     intrflush                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
468                     inwstr                   <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
469                     is_cbreak                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>*
470                     is_cleared               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
471                     is_echo                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>*
472                     is_idcok                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
473                     is_idlok                 <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
474                     is_immedok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
475                     is_keypad                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
476                     is_leaveok               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
477                     is_linetouched           <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
478                     is_nl                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>*
479                     is_nodelay               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
480                     is_notimeout             <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
481                     is_pad                   <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
482                     is_raw                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>*
483                     is_scrollok              <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
484                     is_subwin                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
485                     is_syncok                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
486                     is_term_resized          <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
487                     is_wintouched            <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
488                     isendwin                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
489                     key_defined              <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>*
490                     key_name                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
491                     keybound                 <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>*
492                     keyname                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
493                     keyok                    <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>*
494                     keypad                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
495                     killchar                 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
496                     killwchar                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
497                     leaveok                  <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
498                     longname                 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
499                     mcprint                  <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>*
500                     meta                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
501                     mouse_trafo              <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
502                     mouseinterval            <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
503                     mousemask                <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
504                     move                     <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
505                     mvadd_wch                <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
506                     mvadd_wchnstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
507                     mvadd_wchstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
508                     mvaddch                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
509                     mvaddchnstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
510                     mvaddchstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
511                     mvaddnstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
512                     mvaddnwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
513                     mvaddstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
514                     mvaddwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
515                     mvchgat                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
516                     mvcur                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
517                     mvdelch                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
518                     mvderwin                 <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
519
520                     mvget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
521                     mvget_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
522                     mvgetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
523                     mvgetn_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
524                     mvgetnstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
525                     mvgetstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
526                     mvhline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
527                     mvhline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
528                     mvin_wch                 <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
529                     mvin_wchnstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
530                     mvin_wchstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
531                     mvinch                   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
532                     mvinchnstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
533                     mvinchstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
534                     mvinnstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
535                     mvinnwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
536                     mvins_nwstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
537                     mvins_wch                <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
538                     mvins_wstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
539                     mvinsch                  <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
540                     mvinsnstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
541                     mvinsstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
542                     mvinstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
543                     mvinwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
544                     mvprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
545                     mvscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
546                     mvvline                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
547                     mvvline_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
548                     mvwadd_wch               <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
549                     mvwadd_wchnstr           <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
550                     mvwadd_wchstr            <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
551                     mvwaddch                 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
552                     mvwaddchnstr             <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
553                     mvwaddchstr              <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
554                     mvwaddnstr               <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
555                     mvwaddnwstr              <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
556                     mvwaddstr                <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
557                     mvwaddwstr               <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
558                     mvwchgat                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
559                     mvwdelch                 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
560                     mvwget_wch               <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
561                     mvwget_wstr              <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
562                     mvwgetch                 <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
563                     mvwgetn_wstr             <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
564                     mvwgetnstr               <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
565                     mvwgetstr                <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
566                     mvwhline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
567                     mvwhline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
568                     mvwin                    <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
569                     mvwin_wch                <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
570                     mvwin_wchnstr            <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
571                     mvwin_wchstr             <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
572                     mvwinch                  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
573                     mvwinchnstr              <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
574                     mvwinchstr               <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
575                     mvwinnstr                <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
576                     mvwinnwstr               <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
577                     mvwins_nwstr             <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
578                     mvwins_wch               <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
579                     mvwins_wstr              <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
580                     mvwinsch                 <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
581                     mvwinsnstr               <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
582                     mvwinsstr                <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
583                     mvwinstr                 <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
584                     mvwinwstr                <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
585                     mvwprintw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
586
587                     mvwscanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
588                     mvwvline                 <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
589                     mvwvline_set             <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
590                     napms                    <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
591                     newpad                   <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
592                     newterm                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
593                     newwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
594                     nl                       <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
595                     nocbreak                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
596                     nodelay                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
597                     noecho                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
598                     nofilter                 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
599                     nonl                     <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
600                     noqiflush                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
601                     noraw                    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
602                     notimeout                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
603                     overlay                  <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
604                     overwrite                <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG>
605                     pair_content             <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
606                     pecho_wchar              <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
607                     pechochar                <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
608                     pnoutrefresh             <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
609                     prefresh                 <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
610                     printw                   <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
611                     putp                     <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
612                     putwin                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
613                     qiflush                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
614                     raw                      <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
615                     redrawwin                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
616                     refresh                  <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
617                     reset_color_pairs        <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>*
618                     reset_prog_mode          <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
619                     reset_shell_mode         <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
620                     resetty                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
621                     resize_term              <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
622                     resizeterm               <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>*
623                     restartterm              <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
624                     ripoffline               <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
625                     savetty                  <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
626                     scanw                    <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
627                     scr_dump                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
628                     scr_init                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
629                     scr_restore              <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
630                     scr_set                  <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
631                     scrl                     <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
632                     scroll                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
633                     scrollok                 <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
634                     set_curterm              <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
635                     set_escdelay             <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>*
636                     set_tabsize              <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>*
637                     set_term                 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
638                     setcchar                 <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG>
639                     setscrreg                <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
640                     setsyx                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
641                     setupterm                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
642                     slk_attr                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>*
643                     slk_attr_off             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
644                     slk_attr_on              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
645                     slk_attr_set             <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
646                     slk_attroff              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
647                     slk_attron               <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
648                     slk_attrset              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
649                     slk_clear                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
650                     slk_color                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
651                     slk_init                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
652                     slk_label                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
653
654                     slk_noutrefresh          <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
655                     slk_refresh              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
656                     slk_restore              <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
657                     slk_set                  <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
658                     slk_touch                <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
659                     slk_wset                 <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>
660                     standend                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
661                     standout                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
662                     start_color              <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>
663                     subpad                   <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG>
664                     subwin                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
665                     syncok                   <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
666                     term_attrs               <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
667                     termattrs                <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
668                     termname                 <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG>
669                     tgetent                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
670                     tgetflag                 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
671                     tgetnum                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
672                     tgetstr                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
673                     tgoto                    <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
674                     tigetflag                <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
675                     tigetnum                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
676                     tigetstr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
677                     timeout                  <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
678                     tiparm                   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
679                     tiparm_s                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>*
680                     tiscan_s                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>*
681                     touchline                <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
682                     touchwin                 <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
683                     tparm                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
684                     tputs                    <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
685                     tputs                    <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
686                     trace                    <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>*
687                     typeahead                <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
688                     unctrl                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
689                     unget_wch                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
690                     ungetch                  <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
691                     ungetmouse               <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
692                     untouchwin               <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
693                     use_default_colors       <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>*
694                     use_env                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
695                     use_extended_names       <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>*
696                     use_legacy_coding        <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>*
697                     use_screen               <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>*
698                     use_tioctl               <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>*
699                     use_window               <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>*
700                     vid_attr                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
701                     vid_puts                 <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
702                     vidattr                  <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
703                     vidputs                  <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>
704                     vline                    <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
705                     vline_set                <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
706                     vw_printw                <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
707                     vw_scanw                 <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
708                     vwprintw                 <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
709                     vwscanw                  <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
710                     wadd_wch                 <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
711                     wadd_wchnstr             <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
712                     wadd_wchstr              <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG>
713                     waddch                   <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
714                     waddchnstr               <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
715                     waddchstr                <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>
716                     waddnstr                 <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
717                     waddnwstr                <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
718                     waddstr                  <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>
719                     waddwstr                 <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG>
720
721                     wattr_get                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
722                     wattr_off                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
723                     wattr_on                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
724                     wattr_set                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
725                     wattroff                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
726                     wattron                  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
727                     wattrset                 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
728                     wbkgd                    <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
729                     wbkgdset                 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
730                     wbkgrnd                  <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
731                     wbkgrndset               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
732                     wborder                  <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
733                     wborder_set              <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
734                     wchgat                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
735                     wclear                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
736                     wclrtobot                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
737                     wclrtoeol                <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
738                     wcolor_set               <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
739                     wcursyncup               <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
740                     wdelch                   <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
741                     wdeleteln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
742                     wecho_wchar              <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>
743                     wechochar                <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
744                     wenclose                 <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
745                     werase                   <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>
746                     wget_wch                 <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
747                     wget_wstr                <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
748                     wgetbkgrnd               <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
749                     wgetch                   <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>
750                     wgetdelay                <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
751                     wgetn_wstr               <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG>
752                     wgetnstr                 <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
753                     wgetparent               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
754                     wgetscrreg               <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>*
755                     wgetstr                  <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG>
756                     whline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
757                     whline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
758                     win_wch                  <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG>
759                     win_wchnstr              <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
760                     win_wchstr               <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG>
761                     winch                    <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>
762                     winchnstr                <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
763                     winchstr                 <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG>
764                     winnstr                  <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
765                     winnwstr                 <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
766                     wins_nwstr               <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
767                     wins_wch                 <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>
768                     wins_wstr                <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG>
769                     winsch                   <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG>
770                     winsdelln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
771                     winsertln                <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
772                     winsnstr                 <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
773                     winsstr                  <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG>
774                     winstr                   <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG>
775                     winwstr                  <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG>
776                     wmouse_trafo             <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>*
777                     wmove                    <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
778                     wnoutrefresh             <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
779                     wprintw                  <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG>
780                     wredrawln                <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
781                     wrefresh                 <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
782                     wresize                  <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>*
783                     wscanw                   <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG>
784                     wscrl                    <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
785                     wsetscrreg               <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>
786                     wstandend                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
787
788                     wstandout                <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
789                     wsyncdown                <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
790                     wsyncup                  <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG>
791                     wtimeout                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
792                     wtouchln                 <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG>
793                     wunctrl                  <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
794                     wvline                   <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG>
795                     wvline_set               <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG>
796
797        <EM>ncurses</EM>'s   <EM>screen-pointer</EM>   <EM>extension</EM>   adds   additional    functions
798        corresponding  to  many  of  the  above, each with an "_sp" suffix; see
799        <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>.
800
801        The availability of some extensions is  configurable  when  <EM>ncurses</EM>  is
802        compiled;  see  sections  "ALTERNATE  CONFIGURATIONS"  and "EXTENSIONS"
803        below.
804
805
806 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
807        Unless otherwise noted,  functions  that  return  integers  return  the
808        constants  <STRONG>OK</STRONG>  on  success  and <STRONG>ERR</STRONG> on failure; see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
809        Functions that return pointers  return  <STRONG>NULL</STRONG>  on  failure.   Typically,
810        <EM>ncurses</EM>  treats  a  null  pointer  passed  as a function parameter as a
811        failure.  Functions prefixed with "mv" first  perform  cursor  movement
812        and fail if the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
813
814
815 </PRE><H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE>
816        The  following  symbols  from  the  process  environment  customize the
817        runtime  behavior  of  <EM>ncurses</EM>  applications.   The  library   may   be
818        configured   to   disregard   the  variables  <EM>TERMINFO</EM>,  <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM>,
819        <EM>TERMPATH</EM>, and <EM>HOME</EM>, if  the  user  is  the  superuser  (root),  or  the
820        application uses <STRONG>setuid(2)</STRONG> or <STRONG>setgid(2)</STRONG>.
821
822
823 </PRE><H3><a name="h3-BAUDRATE"><EM>BAUDRATE</EM></a></H3><PRE>
824        The  debugging  library  checks  this variable when the application has
825        redirected output to a file.  Its integral value is used for  the  baud
826        rate.   If  that  value  is absent or invalid, <EM>ncurses</EM> uses 9600.  This
827        feature allows developers to construct repeatable test cases that  take
828        into account optimization decisions that depend on baud rate.
829
830
831 </PRE><H3><a name="h3-CC-_command-character_"><EM>CC</EM> (command character)</a></H3><PRE>
832        When  set,  the  <STRONG>command_character</STRONG>  (<STRONG>cmdch</STRONG>)  capability value of loaded
833        <EM>terminfo</EM> entries changes to the value of this variable.  Very few <EM>term-</EM>
834        <EM>info</EM> entries provide this feature.
835
836        Because this name is also used in development environments to represent
837        the C compiler's name, <EM>ncurses</EM> ignores its  value  if  it  is  not  one
838        character in length.
839
840
841 </PRE><H3><a name="h3-COLUMNS"><EM>COLUMNS</EM></a></H3><PRE>
842        This  variable  specifies  the  width  of  the  screen  in  characters.
843        Applications running in a windowing environment  usually  are  able  to
844        obtain the width of the window in which they are executing.  If <EM>COLUMNS</EM>
845        is not defined and the terminal's screen size is not available from the
846        terminal  driver, <EM>ncurses</EM> uses the size specified by the <STRONG>columns</STRONG> (<STRONG>cols</STRONG>)
847        capability of the terminal type's entry in the  <EM>terminfo</EM>  database,  if
848        any.
849
850        It  is  important  that  your  application use the correct screen size.
851        Automatic  detection  thereof  is  not  always  possible   because   an
852        application  may  be  running  on  a  host  that  does  not  honor NAWS
853        (Negotiations About Window Size) or as a different  user  ID  than  the
854        owner  of  the  terminal  device  file.   Setting  <EM>COLUMNS</EM> and/or <EM>LINES</EM>
855        overrides the library's use  of  the  screen  size  obtained  from  the
856        operating system.
857
858        The  <EM>COLUMNS</EM>  and  <EM>LINES</EM>  variables  may  be  specified  independently.
859        <EM>ncurses</EM> enforces an upper limit of 512 on each when reading the  value.
860        This  property  is  useful to circumvent misfeatures of legacy terminal
861        type descriptions; <STRONG>xterm(1)</STRONG> descriptions specifying 65 lines were  once
862        notorious.    For   best  results,  avoid  specifying  <STRONG>cols</STRONG>  and  <STRONG>lines</STRONG>
863        capability codes in <EM>terminfo</EM> descriptions of terminal emulators.
864
865        <STRONG><A HREF="curs_util.3x.html">use_env(3x)</A></STRONG> can disable use of the process environment  in  determining
866        the  screen size.  <STRONG><A HREF="curs_util.3x.html">use_tioctl(3x)</A></STRONG> can update <EM>COLUMNS</EM> and <EM>LINES</EM> to match
867        the screen size obtained from system calls or the terminal database.
868
869
870 </PRE><H3><a name="h3-ESCDELAY"><EM>ESCDELAY</EM></a></H3><PRE>
871        For <EM>curses</EM> to distinguish the ESC character  resulting  from  a  user's
872        press  of  the  "Escape"  key on the input device from one beginning an
873        <EM>escape</EM> <EM>sequence</EM> (as commonly produced by function keys), it waits after
874        receiving  the  escape  character  to  see  if  further  characters are
875        available on the input  stream  within  a  short  interval.   A  global
876        variable  <STRONG>ESCDELAY</STRONG>  stores  this interval in milliseconds.  The default
877        value of 1000 (one second) is adequate for most uses.  This environment
878        variable  overrides  it;  <EM>ncurses</EM> enforces an upper limit of 30,000 (30
879        seconds) when reading the value.
880
881        The most common instance where you may wish to change this value is  to
882        work with a remote host over a slow communication channel.  If the host
883        running a <EM>curses</EM> application does not  receive  the  characters  of  an
884        escape  sequence  in a timely manner, the library can interpret them as
885        multiple key stroke events.
886
887        <STRONG>xterm(1)</STRONG> mouse events are a form of escape sequence; therefore, if your
888        application  makes  heavy  use  of  multiple-clicking,  you may wish to
889        lengthen the default value because the delay applies to  the  composite
890        multi-click event as well as the individual clicks.
891
892        Portable  applications should not rely upon the presence of <STRONG>ESCDELAY</STRONG> in
893        either form, but setting  the  environment  variable  rather  than  the
894        global variable does not create problems when compiling an application.
895
896        If  <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG>  is  disabled  for  the <EM>curses</EM> window receiving input, a
897        program must disambiguate escape sequences itself.
898
899
900 </PRE><H3><a name="h3-HOME"><EM>HOME</EM></a></H3><PRE>
901        <EM>ncurses</EM> may read and write auxiliary terminal descriptions in  <EM>.termcap</EM>
902        and <EM>.terminfo</EM> files in the user's home directory.
903
904
905 </PRE><H3><a name="h3-LINES"><EM>LINES</EM></a></H3><PRE>
906        This  counterpart  to  <EM>COLUMNS</EM>  specifies  the  height of the screen in
907        characters.  The corresponding <EM>terminfo</EM> capability and code  is  <STRONG>lines</STRONG>.
908        See the description of the <EM>COLUMNS</EM> variable above.
909
910
911 </PRE><H3><a name="h3-MOUSE_BUTTONS_123"><EM>MOUSE_BUTTONS_123</EM></a></H3><PRE>
912        (OS/2  EMX  port only) OS/2 numbers a three-button mouse inconsistently
913        with other platforms, such that 1 is the left button, 2 the right,  and
914        3  the  middle.   This  variable customizes the mouse button numbering.
915        Its value must be three digits 1-3 in any order.  By  default,  <EM>ncurses</EM>
916        assumes a numbering of "132".
917
918
919 </PRE><H3><a name="h3-NCURSES_ASSUMED_COLORS"><EM>NCURSES_ASSUMED_COLORS</EM></a></H3><PRE>
920        If  set,  this  variable  overrides  the  <EM>ncurses</EM> library's compiled-in
921        assumption that the terminal's default colors are white on  black;  see
922        <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>.   Set  the  foreground  and background color values
923        with this environment variable  by  assigning  it  two  integer  values
924        separated  by  a  comma,  indicating  foregound  and  background  color
925        numbers, respectively.
926
927        For example, to tell <EM>ncurses</EM> not to assume anything about  the  colors,
928        use  a  value  of  "-1,-1".   To make the default color scheme green on
929        black, use "2,0".  <EM>ncurses</EM> accepts integral values from -1  up  to  the
930        value of the <EM>terminfo</EM> <STRONG>max_colors</STRONG> (<STRONG>colors</STRONG>) capability.
931
932
933 </PRE><H3><a name="h3-NCURSES_CONSOLE2"><EM>NCURSES_CONSOLE2</EM></a></H3><PRE>
934        (MinGW   port  only)  The  <EM>Console2</EM>  program  defectively  handles  the
935        Microsoft Console  API  call  <EM>CreateConsoleScreenBuffer</EM>.   Applications
936        that  use it will hang.  However, it is possible to simulate the action
937        of this call by mapping coordinates, explicitly  saving  and  restoring
938        the  original  screen contents.  Setting the environment variable <EM>NCGDB</EM>
939        has the same effect.
940
941
942 </PRE><H3><a name="h3-NCURSES_GPM_TERMS"><EM>NCURSES_GPM_TERMS</EM></a></H3><PRE>
943        (Linux only) When <EM>ncurses</EM> is configured to use the GPM interface,  this
944        variable  may  list  one  or  more  terminal  type  names, delimited by
945        vertical bars (<STRONG>|</STRONG>) or colons (<STRONG>:</STRONG>), against which the <EM>TERM</EM>  variable  (see
946        below)  is  matched.   An empty value disables the GPM interface, using
947        <EM>ncurses</EM>'s built-in support for <STRONG>xterm(1)</STRONG> mouse  protocols  instead.   If
948        the  variable  is absent, <EM>ncurses</EM> attempts to open GPM if <EM>TERM</EM> contains
949        "linux".
950
951
952 </PRE><H3><a name="h3-NCURSES_NO_HARD_TABS"><EM>NCURSES_NO_HARD_TABS</EM></a></H3><PRE>
953        <EM>ncurses</EM> may use tab characters in  cursor  movement  optimization.   In
954        some  cases,  your  terminal  driver may not handle them properly.  Set
955        this environment variable to any value to disable the feature.  You can
956        also adjust your <STRONG>stty(1)</STRONG> settings to avoid the problem.
957
958
959 </PRE><H3><a name="h3-NCURSES_NO_MAGIC_COOKIE"><EM>NCURSES_NO_MAGIC_COOKIE</EM></a></H3><PRE>
960        Many  terminals  store  video  attributes  as a property of a character
961        cell, as <EM>curses</EM> does.  Historically, some  recorded  changes  in  video
962        attributes  as  data  that  logically  <EM>occupies</EM>  character cells on the
963        display, switching attributes on or off, similarly to tags in a  markup
964        language;  these  are  termed "magic cookies", and must be subsequently
965        overprinted.  If the <EM>terminfo</EM> entry for your  terminal  type  does  not
966        adequately describe its handling of magic cookies, set this variable to
967        any value to instruct <EM>ncurses</EM> to disable attributes entirely.
968
969
970 </PRE><H3><a name="h3-NCURSES_NO_PADDING"><EM>NCURSES_NO_PADDING</EM></a></H3><PRE>
971        Most  terminal  type  descriptions  in  the  <EM>terminfo</EM>  database  detail
972        hardware   devices.   Many  people  use  <EM>curses</EM>-based  applications  in
973        terminal emulator programs that run in a windowing environment.   These
974        programs  can  duplicate  all  of  the important features of a hardware
975        terminal, but often lack their limitations.  Chief among  these  absent
976        drawbacks is the problem of data flow management; that is, limiting the
977        speed of communication to what the hardware  could  handle.   Unless  a
978        hardware  terminal  is  interfaced  into a terminal concentrator (which
979        does flow control), an application must manage flow itself  to  prevent
980        overruns and data loss.
981
982        A  solution  that  comes  at  no hardware cost is for an application to
983        pause after directing a  terminal  to  execute  an  operation  that  it
984        performs  slowly,  such  as  clearing  the display.  Many terminal type
985        descriptions, including that for the VT100, embed delay  specifications
986        in  capabilities.   You  may  wish  to  use these terminal descriptions
987        without paying the performance penalty.  Set <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>PADDING</EM> to  any
988        value  to disable all but mandatory padding.  Mandatory padding is used
989        by such terminal capabilities as <STRONG>flash_screen</STRONG> (<STRONG>flash</STRONG>).
990
991
992 </PRE><H3><a name="h3-NCURSES_NO_SETBUF"><EM>NCURSES_NO_SETBUF</EM></a></H3><PRE>
993        (Obsolete) Prior to internal changes developed in <EM>ncurses</EM> 5.9  (patches
994        20120825  through 20130126), the library used <STRONG>setbuf(3)</STRONG> to enable fully
995        buffered output when initializing the terminal.  This was done,  as  in
996        SVr4  <EM>curses</EM>,  to  increase performance.  For testing purposes, both of
997        <EM>ncurses</EM> and of certain applications, this feature  was  made  optional.
998        Setting  this  variable  disabled  output buffering, leaving the output
999        stream in the original (usually line-buffered) mode.
1000
1001        Nowadays, <EM>ncurses</EM> performs its own buffering and does not require  this
1002        workaround;  it  does  not  modify the buffering of the standard output
1003        stream.  This approach makes signal handling, as for  interrupts,  more
1004        robust.   A  drawback  is  that  certain  unconventional programs mixed
1005        <STRONG>stdio(3)</STRONG> calls with <EM>ncurses</EM> calls and (usually) got the  behavior  they
1006        expected.   This  is  no longer the case; <EM>ncurses</EM> does not write to the
1007        standard output file descriptor through a <EM>stdio</EM>-buffered stream.
1008
1009        As a special case, low-level API calls such as <STRONG><A HREF="curs_terminfo.3x.html">putp(3x)</A></STRONG> still  use  the
1010        standard  output stream.  High-level <EM>curses</EM> calls such as <STRONG><A HREF="curs_printw.3x.html">printw(3x)</A></STRONG> do
1011        not.
1012
1013
1014 </PRE><H3><a name="h3-NCURSES_NO_UTF8_ACS"><EM>NCURSES_NO_UTF8_ACS</EM></a></H3><PRE>
1015        At initialization, <EM>ncurses</EM> inspects the <EM>TERM</EM> environment  variable  for
1016        special   cases   where   VT100   forms-drawing   characters  (and  the
1017        corresponding alternate character set <EM>terminfo</EM> capabilities) are  known
1018        to  be  unsupported  by  terminal  types  that  otherwise  claim  VT100
1019        compatibility.  Specifically, when running in a UTF-8 locale, the Linux
1020        virtual  console device and the GNU <STRONG>screen(1)</STRONG> program ignore them.  Set
1021        this  variable  to  a  nonzero  value  to  instruct  <EM>ncurses</EM>  that  the
1022        terminal's ACS support is broken; the library then outputs Unicode code
1023        points that correspond to the forms-drawing characters.  Set it to zero
1024        (or a non-integer) to disable the special check for terminal type names
1025        matching "linux" or "screen", directing <EM>ncurses</EM> to assume that the  ACS
1026        feature works if the terminal type description advertises it.
1027
1028        As  an  alternative  to  use  of  this  variable, <EM>ncurses</EM> checks for an
1029        extended <EM>terminfo</EM> numeric capability <STRONG>U8</STRONG> that can be compiled using "<STRONG>tic</STRONG>
1030        <STRONG>-x</STRONG>".  Examples follow.
1031
1032           # linux console, if patched to provide working
1033           # VT100 shift-in/shift-out, with corresponding font.
1034           linux-vt100|linux console with VT100 line-graphics,
1035                   U8#0, use=linux,
1036
1037           # uxterm with vt100Graphics resource set to false
1038           xterm-utf8|xterm relying on UTF-8 line-graphics,
1039                   U8#1, use=xterm,
1040
1041        The  two-character name "U8" was chosen to permit its use via <EM>ncurses</EM>'s
1042        <EM>termcap</EM> interface.
1043
1044
1045 </PRE><H3><a name="h3-NCURSES_TRACE"><EM>NCURSES_TRACE</EM></a></H3><PRE>
1046        At initialization, <EM>ncurses</EM> (in its debugging configuration) checks  for
1047        this  variable's  presence.   If  defined  with  an integral value, the
1048        library calls <STRONG><A HREF="curs_trace.3x.html">curses_trace(3x)</A></STRONG> with that value as the argument.
1049
1050
1051 </PRE><H3><a name="h3-TERM"><EM>TERM</EM></a></H3><PRE>
1052        The <EM>TERM</EM> variable denotes the terminal type.  Each is distinct,  though
1053        many  are  similar.   It  is commonly set by terminal emulators to help
1054        applications find a  workable  terminal  description.   Some  choose  a
1055        popular  approximation  such as "ansi", "vt100", or "xterm" rather than
1056        an exact fit to their capabilities.  Not infrequently,  an  application
1057        will  have  problems  with that approach; for example, a key stroke may
1058        not operate  correctly,  or  produce  no  effect  but  seeming  garbage
1059        characters on the screen.
1060
1061        Setting  <EM>TERM</EM>  has  no effect on hardware operation; it affects the way
1062        applications communicate with the terminal.   Likewise,  as  a  general
1063        rule  (<STRONG>xterm(1)</STRONG>  being a rare exception), terminal emulators that allow
1064        you to specify <EM>TERM</EM> as a parameter or configuration value do not change
1065        their behavior to match that setting.
1066
1067
1068 </PRE><H3><a name="h3-TERMCAP"><EM>TERMCAP</EM></a></H3><PRE>
1069        If <EM>ncurses</EM> is configured with <EM>termcap</EM> support, it checks for a terminal
1070        type description in <EM>termcap</EM> format if one in  <EM>terminfo</EM>  format  is  not
1071        available.   Setting  this variable directs <EM>ncurses</EM> to ignore the usual
1072        <EM>termcap</EM> database location, <EM>/etc/termcap</EM>; see <EM>TERMPATH</EM>  below.   <EM>TERMCAP</EM>
1073        should  contain  either  a terminal description (with newlines stripped
1074        out), or a file name indicating where the information required  by  the
1075        <EM>TERM</EM> environment variable is stored.
1076
1077
1078 </PRE><H3><a name="h3-TERMINFO"><EM>TERMINFO</EM></a></H3><PRE>
1079        <EM>ncurses</EM>  can  be configured to read terminal type description databases
1080        in various locations using different formats.  This variable  overrides
1081        the default location.
1082
1083        <STRONG>o</STRONG>   Descriptions  in <EM>terminfo</EM> format are normally stored in a directory
1084            tree using subdirectories named by the common first letters of  the
1085            terminal types named therein.  This is the scheme used in System V.
1086
1087        <STRONG>o</STRONG>   If <EM>ncurses</EM> is configured to use hashed databases, then <EM>TERMINFO</EM> may
1088            name its location,  such  as  <EM>/usr/share/terminfo.db</EM>,  rather  than
1089            <EM>/usr/share/terminfo/</EM>.
1090
1091        The  hashed  database  uses less disk space and is a little faster than
1092        the directory tree.  However, some applications assume the existence of
1093        the directory tree, and read it directly rather than using the <EM>terminfo</EM>
1094        API.
1095
1096        <STRONG>o</STRONG>   If <EM>ncurses</EM> is configured with <EM>termcap</EM> support,  this  variable  may
1097            contain the location of a <EM>termcap</EM> file.
1098
1099        <STRONG>o</STRONG>   If the value of <EM>TERMINFO</EM> begins with "hex:" or "b64:", <EM>ncurses</EM> uses
1100            the remainder of the value as a compiled <EM>terminfo</EM> description.  You
1101            might produce the base64 format using <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>.
1102
1103                   TERMINFO=$(infocmp -0 -Q2 -q)
1104                   export TERMINFO
1105
1106            The  compiled  description  is  used  only if it corresponds to the
1107            terminal type identified by <EM>TERM</EM>.
1108
1109        Setting <EM>TERMINFO</EM> is the simplest, but  not  the  only,  way  to  direct
1110        <EM>ncurses</EM> to a terminal database.  The search path is as follows.
1111
1112        <STRONG>o</STRONG>   the last terminal database to which the running <EM>ncurses</EM> application
1113            wrote, if any
1114
1115        <STRONG>o</STRONG>   the location specified by the <EM>TERMINFO</EM> environment variable
1116
1117        <STRONG>o</STRONG>   <EM>$HOME/.terminfo</EM>
1118
1119        <STRONG>o</STRONG>   locations listed in the <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> environment variable
1120
1121        <STRONG>o</STRONG>   location(s) configured and compiled into <EM>ncurses</EM>
1122
1123            <STRONG>o</STRONG>   <EM>/usr/share/terminfo</EM>
1124
1125
1126 </PRE><H3><a name="h3-TERMINFO_DIRS"><EM>TERMINFO_DIRS</EM></a></H3><PRE>
1127        This variable specifies a list of locations, akin  to  <EM>PATH</EM>,  in  which
1128        <EM>ncurses</EM>  searches  for  the  terminal  type  descriptions  described by
1129        <EM>TERMINFO</EM> above.  The list items are separated by  colons  on  Unix  and
1130        semicolons  on  OS/2  EMX.   System V  <EM>terminfo</EM>  lacks  a corresponding
1131        feature; <EM>TERMINFO</EM><STRONG>_</STRONG><EM>DIRS</EM> is an <EM>ncurses</EM> extension.
1132
1133
1134 </PRE><H3><a name="h3-TERMPATH"><EM>TERMPATH</EM></a></H3><PRE>
1135        If <EM>TERMCAP</EM> does not hold a terminal type description or file name, then
1136        <EM>ncurses</EM>  checks  the contents of <EM>TERMPATH</EM>, a list of locations, akin to
1137        <EM>PATH</EM>, in which it searches for <EM>termcap</EM> terminal type descriptions.  The
1138        list items are separated by colons on Unix and semicolons on OS/2 EMX.
1139
1140        If both <EM>TERMCAP</EM> and <EM>TERMPATH</EM> are unset or invalid, <EM>ncurses</EM> searches for
1141        the files <EM>/etc/termcap</EM>, <EM>/usr/share/misc/termcap</EM>, and <EM>$HOME/.termcap</EM>, in
1142        that order.
1143
1144
1145 </PRE><H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE>
1146        Many  different  <EM>ncurses</EM> configurations are possible, determined by the
1147        options given to the <EM>configure</EM> script when building the  library.   Run
1148        the  script  with  the  <STRONG>--help</STRONG> option to peruse them all.  A few are of
1149        particular significance to the application developer employing <EM>ncurses</EM>.
1150
1151        <STRONG>--disable-overwrite</STRONG>
1152             The standard C preprocessor inclusion for the <EM>curses</EM> library is as
1153             follows.
1154
1155                 <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
1156
1157             This  option  is used to avoid file name conflicts between <EM>ncurses</EM>
1158             and an existing <EM>curses</EM> installation on the system.  If <EM>ncurses</EM>  is
1159             installed  disabling  overwrite,  it  puts  its  header files in a
1160             subdirectory.  Here is an example.
1161
1162                 <STRONG>#include</STRONG> <STRONG>&lt;ncurses/curses.h&gt;</STRONG>
1163
1164             Installation also omits a  symbolic  link  that  would  cause  the
1165             compiler's  <STRONG>-lcurses</STRONG>  option  to  link  object  files with <EM>ncurses</EM>
1166             instead of the system <EM>curses</EM> library.
1167
1168             The directory used by this configuration of <EM>ncurses</EM>  is  shown  in
1169             section "SYNOPSIS" above.
1170
1171        <STRONG>--enable-widec</STRONG>
1172             The   configure   script   renames   the   library   and  (if  the
1173             <STRONG>--disable-overwrite</STRONG> option is used) puts the  header  files  in  a
1174             different  subdirectory.   All  of  the  library  names have a "w"
1175             appended to them, i.e., instead of
1176
1177                 <STRONG>-lncurses</STRONG>
1178
1179             you link with
1180
1181                 <STRONG>-lncursesw</STRONG>
1182
1183             You must also enable the wide-character  features  in  the  header
1184             file  when  compiling  for  the  wide-character library to use the
1185             extended (wide-character) functions.   The  symbol  which  enables
1186             these features has changed since X/Open Curses, Issue 4:
1187
1188             <STRONG>o</STRONG>   Originally,  the  wide-character  feature  required the symbol
1189                 <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG>  but  that  was  only  valid  for  XPG4
1190                 (1996).
1191
1192             <STRONG>o</STRONG>   Later,  that was deemed conflicting with <STRONG>_XOPEN_SOURCE</STRONG> defined
1193                 to 500.
1194
1195             <STRONG>o</STRONG>   As of mid-2018, none of the features  in  this  implementation
1196                 require  a  <STRONG>_XOPEN_SOURCE</STRONG>  feature greater than 600.  However,
1197                 X/Open Curses, Issue 7 (2009) recommends defining it to 700.
1198
1199             <STRONG>o</STRONG>   Alternatively,  you  can  enable  the  feature   by   defining
1200                 <STRONG>NCURSES_WIDECHAR</STRONG>  with  the caveat that some other header file
1201                 than <STRONG>curses.h</STRONG> may require a specific value  for  <STRONG>_XOPEN_SOURCE</STRONG>
1202                 (or a system-specific symbol).
1203
1204             The  <EM>curses.h</EM> header file installed for the wide-character library
1205             is designed to be compatible with the non-wide  library's  header.
1206             Only  the  size  of the <EM>WINDOW</EM> structure differs; few applications
1207             require more than pointers to <EM>WINDOW</EM>s.
1208
1209             If  the  headers  are  installed  allowing  overwrite,  the  wide-
1210             character  library's  headers  should  be installed last, to allow
1211             applications to be built using either library from the same set of
1212             headers.
1213
1214        <STRONG>--with-pthread</STRONG>
1215             The  configure  script  renames  the  library.  All of the library
1216             names have a "t"  appended  to  them  (before  any  "w"  added  by
1217             <STRONG>--enable-widec</STRONG>).
1218
1219             The global variables such as <STRONG>LINES</STRONG> are replaced by macros to allow
1220             read-only access.  At the same time, setter-functions are provided
1221             to  set  these  values.   Some applications (very few) may require
1222             changes to work with this convention.
1223
1224        <STRONG>--with-shared</STRONG>
1225        <STRONG>--with-normal</STRONG>
1226        <STRONG>--with-debug</STRONG>
1227        <STRONG>--with-profile</STRONG>
1228             The shared and normal  (static)  library  names  differ  by  their
1229             suffixes,  e.g.,  <STRONG>libncurses.so</STRONG>  and  <STRONG>libncurses.a</STRONG>.  The debug and
1230             profiling libraries add a "_g"  and  a  "_p"  to  the  root  names
1231             respectively, e.g., <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>.
1232
1233        <STRONG>--with-termlib</STRONG>
1234             Low-level  functions  which do not depend upon whether the library
1235             supports wide-characters, are provided in the tinfo library.
1236
1237             By doing this, it is possible to share the tinfo  library  between
1238             wide/normal  configurations  as  well  as  reduce  the size of the
1239             library when only low-level functions are needed.
1240
1241             Those functions are described in these pages:
1242
1243             <STRONG>o</STRONG>   <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG> - miscellaneous <EM>curses</EM> extensions
1244
1245             <STRONG>o</STRONG>   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> - <EM>curses</EM> input options
1246
1247             <STRONG>o</STRONG>   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> - low-level <EM>curses</EM> routines
1248
1249             <STRONG>o</STRONG>   <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> - <EM>curses</EM> environment query routines
1250
1251             <STRONG>o</STRONG>   <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> - <EM>curses</EM> emulation of <EM>termcap</EM>
1252
1253             <STRONG>o</STRONG>   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> - <EM>curses</EM> interface to <EM>terminfo</EM> database
1254
1255             <STRONG>o</STRONG>   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> - miscellaneous <EM>curses</EM> utility routines
1256
1257        <STRONG>--with-trace</STRONG>
1258             The <STRONG>trace</STRONG> function normally resides in the debug library,  but  it
1259             is  sometimes  useful  to  configure  this  in the shared library.
1260             Configure scripts should check for the function's existence rather
1261             than assuming it is always in the debug library.
1262
1263
1264 </PRE><H2><a name="h2-FILES">FILES</a></H2><PRE>
1265        <EM>/usr/share/tabset</EM>
1266               tab stop initialization database
1267
1268        <EM>/usr/share/terminfo</EM>
1269               compiled terminal capability database
1270
1271
1272 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
1273        X/Open  Curses permits most functions it specifies to be made available
1274        as macros as well.  <EM>ncurses</EM> does so
1275
1276        <STRONG>o</STRONG>   for functions that return values via their parameters,
1277
1278        <STRONG>o</STRONG>   to support obsolete features,
1279
1280        <STRONG>o</STRONG>   to reuse functions (for example, those that move the cursor  before
1281            another operation), and
1282
1283        <STRONG>o</STRONG>   in a few special cases.
1284
1285        If  the  standard  output  file  descriptor  of  an  <EM>ncurses</EM> program is
1286        redirected to something that is not  a  terminal  device,  the  library
1287        writes  screen updates to the standard error file descriptor.  This was
1288        an undocumented feature of SVr3 <EM>curses</EM>.
1289
1290        See subsection  "Header  Files"  below  regarding  symbols  exposed  by
1291        inclusion of <EM>curses.h</EM>.
1292
1293
1294 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
1295        <EM>ncurses</EM>  enables  an  application  to  capture  mouse events on certain
1296        terminals, including <STRONG>xterm(1)</STRONG>; see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>.
1297
1298        <EM>ncurses</EM> provides a means of responding to window  resizing  events,  as
1299        when  running in a GUI terminal emulator application such as <EM>xterm</EM>; see
1300        <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>.
1301
1302        <EM>ncurses</EM> allows an application to query the terminal for the presence of
1303        a wide variety of special keys; see <STRONG><A HREF="curs_getch.3x.html">has_key(3x)</A></STRONG>.
1304
1305        <EM>ncurses</EM> extends the fixed set of function key capabilities specified by
1306        X/Open  Curses  by  allowing  the  application  programmer  to   define
1307        additional  key events at runtime; see <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>, <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>,
1308        <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>, and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>.
1309
1310        <EM>ncurses</EM>  can  exploit  the  capabilities  of   terminals   implementing
1311        ISO 6429/ECMA-48   SGR 39   and   SGR 49   sequences,  which  allow  an
1312        application to reset  the  terminal  to  its  original  foreground  and
1313        background  colors.  From a user's perspective, the application is able
1314        to draw colored text on a background whose color is set  independently,
1315        providing better control over color contrasts.  See <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>.
1316
1317        An  <EM>ncurses</EM>  application  can  eschew  knowledge  of  <EM>WINDOW</EM>  structure
1318        internals, instead using accessor functions such as <STRONG><A HREF="curs_opaque.3x.html">is_scrollok(3x)</A></STRONG>.
1319
1320        <EM>ncurses</EM> enables an application  to  direct  its  output  to  a  printer
1321        attached to the terminal device; see <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>.
1322
1323        <EM>ncurses</EM>  offers <STRONG><A HREF="curs_slk.3x.html">slk_attr(3x)</A></STRONG> as a counterpart of <STRONG><A HREF="curs_attr.3x.html">attr_get(3x)</A></STRONG> for soft-
1324        label key lines, and <STRONG><A HREF="curs_slk.3x.html">extended_slk_color(3x)</A></STRONG> as a form of  <STRONG><A HREF="curs_slk.3x.html">slk_color(3x)</A></STRONG>
1325        that  can  gather  color  information  from  them  when many colors are
1326        supported.
1327
1328        <EM>ncurses</EM>   permits   modification   of   <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>'s   behavior;    see
1329        <STRONG><A HREF="legacy_coding.3x.html">use_legacy_coding(3x)</A></STRONG>.
1330
1331        Rudimentary  support  for multi-threaded applications may be available;
1332        see <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG>.
1333
1334        Functions that ease the management of multiple screens can be  exposed;
1335        see <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>.
1336
1337        To  aid  applications  to  debug their memory usage, <EM>ncurses</EM> optionally
1338        offers functions  to  more  aggressively  free  memory  it  dynamically
1339        allocates itself; see <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>.
1340
1341        The  library  facilitates auditing and troubleshooting of its behavior;
1342        see <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>.
1343
1344        Compiling <EM>ncurses</EM> with the option <STRONG>-DUSE_GETCAP</STRONG> causes it to  fall  back
1345        to  reading <EM>/etc/termcap</EM> if the terminal setup code cannot find a <EM>term-</EM>
1346        <EM>info</EM>  entry  corresponding  to  <EM>TERM</EM>.   Use  of  this  feature  is  not
1347        recommended,  as  it essentially includes an entire <EM>termcap</EM> compiler in
1348        the <EM>ncurses</EM> startup code, at a cost in  memory  usage  and  application
1349        launch latency.
1350
1351        <EM>PDCurses</EM>   and  NetBSD  <EM>curses</EM>  incorporate  some  <EM>ncurses</EM>  extensions.
1352        Individual man pages indicate where this is the case.
1353
1354
1355 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
1356        X/Open Curses defines two levels of conformance, "base" and "enhanced".
1357        The latter includes several additional features, such as wide-character
1358        and color support.  <EM>ncurses</EM> intends base-level conformance with  X/Open
1359        Curses,  and  supports  all  features  of its enhanced level except the
1360        <STRONG>untic</STRONG> utility.
1361
1362        Differences between X/Open Curses and <EM>ncurses</EM>  are  documented  in  the
1363        "PORTABILITY" sections of applicable man pages.
1364
1365
1366 </PRE><H3><a name="h3-Error-Checking">Error Checking</a></H3><PRE>
1367        In  many cases, X/Open Curses is vague about error conditions, omitting
1368        some of the SVr4 documentation.
1369
1370        Unlike other implementations, <EM>ncurses</EM> checks pointer  parameters,  such
1371        as  those to <EM>WINDOW</EM> structures, to ensure that they are not null.  This
1372        is done primarily to guard  against  programmer  error.   The  standard
1373        interface does not provide a way for the library to tell an application
1374        which of several possible errors occurred.  An application that  relies
1375        on  <EM>ncurses</EM>  to  check  its function parameters for validity limits its
1376        portability and robustness.
1377
1378
1379 </PRE><H3><a name="h3-Padding-Differences">Padding Differences</a></H3><PRE>
1380        In historical <EM>curses</EM> implementations, delays embedded in  the  <EM>terminfo</EM>
1381        capabilities  <STRONG>carriage_return</STRONG>  (<STRONG>cr</STRONG>),  <STRONG>scroll_forward</STRONG> (<STRONG>ind</STRONG>), <STRONG>cursor_left</STRONG>
1382        (<STRONG>cub1</STRONG>), <STRONG>form_feed</STRONG> (<STRONG>ff</STRONG>), and <STRONG>tab</STRONG> (<STRONG>ht</STRONG>) activated corresponding delay bits
1383        in  the  Unix terminal driver.  <EM>ncurses</EM> performs all padding by sending
1384        NUL bytes to the device.  This method is slightly more  expensive,  but
1385        narrows   the   interface   to   the   Unix  kernel  significantly  and
1386        correspondingly increases the package's portability.
1387
1388
1389 </PRE><H3><a name="h3-Header-Files">Header Files</a></H3><PRE>
1390        The header file <EM>curses.h</EM> itself includes the header files  <EM>stdio.h</EM>  and
1391        <EM>unctrl.h</EM>.
1392
1393        X/Open Curses has more to say,
1394
1395            The  inclusion  of  <EM>curses.h</EM>  may make visible all symbols from the
1396            headers <EM>stdio.h</EM>, <EM>term.h</EM>, <EM>termios.h</EM>, and <EM>wchar.h</EM>.
1397
1398        but does not finish the story.  A more complete account follows.
1399
1400        <STRONG>o</STRONG>   The first <EM>curses</EM>, in 4BSD, provided a <EM>curses.h</EM> file.
1401
1402            BSD <EM>curses</EM> code included <EM>curses.h</EM> and  <EM>unctrl.h</EM>  from  an  internal
1403            header file <EM>curses.ext</EM>, where "ext" abbreviated "externs".
1404
1405            The  implementations of <EM>printw</EM> and <EM>scanw</EM> used undocumented internal
1406            functions of the standard I/O library (<STRONG>_</STRONG><EM>doprnt</EM>  and  <STRONG>_</STRONG><EM>doscan</EM>),  but
1407            nothing in <EM>curses.h</EM> itself relied upon <EM>stdio.h</EM>.
1408
1409        <STRONG>o</STRONG>   SVr2  <EM>curses</EM>  added  <EM>newterm</EM>, which relies upon <EM>stdio.h</EM> because its
1410            function prototype employs the <EM>FILE</EM> type.
1411
1412            SVr4 <EM>curses</EM> added <EM>putwin</EM> and <EM>getwin</EM>, which also use <EM>stdio.h</EM>.
1413
1414            X/Open Curses specifies all three of these functions.
1415
1416            SVr4 <EM>curses</EM> and X/Open Curses  do  not  require  the  developer  to
1417            include  <EM>stdio.h</EM>  before  <EM>curses.h</EM>.  Both document use of <EM>curses</EM> as
1418            requiring only <EM>curses.h</EM>.
1419
1420            As a result, standard <EM>curses.h</EM> always includes <EM>stdio.h</EM>.
1421
1422        <STRONG>o</STRONG>   X/Open Curses and SVr4 <EM>curses</EM>  are  inconsistent  with  respect  to
1423            <EM>unctrl.h</EM>.
1424
1425            As  noted in <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <EM>ncurses</EM> includes <EM>unctrl.h</EM> from <EM>curses.h</EM>
1426            (as SVr4 does).
1427
1428        <STRONG>o</STRONG>   X/Open Curses's comments about <EM>term.h</EM> and <EM>termios.h</EM>  may  refer  to
1429            HP-UX and AIX.
1430
1431            HP-UX  <EM>curses</EM> includes <EM>term.h</EM> from <EM>curses.h</EM> to declare <EM>setupterm</EM> in
1432            <EM>curses.h</EM>, but <EM>ncurses</EM> and Solaris <EM>curses</EM> do not.
1433
1434            AIX <EM>curses</EM> includes  <EM>term.h</EM>  and  <EM>termios.h</EM>.   Again,  <EM>ncurses</EM>  and
1435            Solaris <EM>curses</EM> do not.
1436
1437        <STRONG>o</STRONG>   X/Open  Curses  says that <EM>curses.h</EM> <STRONG>may</STRONG> include <EM>term.h</EM>, but does not
1438            require it to do so.
1439
1440            Some programs use functions declared in both <EM>curses.h</EM>  and  <EM>term.h</EM>,
1441            and  must  include  both header files in the same module.  Very old
1442            versions of  AIX  <EM>curses</EM>  required  inclusion  of  <EM>curses.h</EM>  before
1443            <EM>term.h</EM>.
1444
1445            The  header  files supplied by <EM>ncurses</EM> include the standard library
1446            headers required for its  declarations,  so  <EM>ncurses</EM>'s  own  header
1447            files  can  be  included  in  any  order.  But for portability, you
1448            should include <EM>curses.h</EM> before <EM>term.h</EM>.
1449
1450        <STRONG>o</STRONG>   X/Open Curses says "may make visible" because  including  a  header
1451            file  does  not  necessarily  make visible all of the symbols in it
1452            (consider <STRONG>#ifdef</STRONG> and similar).
1453
1454            For instance, <EM>ncurses</EM>'s <EM>curses.h</EM> <STRONG>may</STRONG> include <EM>wchar.h</EM> if the  proper
1455            symbol  is defined, and if <EM>ncurses</EM> is configured for wide-character
1456            support.  If <EM>wchar.h</EM> is included, its symbols <STRONG>may</STRONG> be  made  visible
1457            depending on the value of the <STRONG>_XOPEN_SOURCE</STRONG> feature test macro.
1458
1459        <STRONG>o</STRONG>   X/Open Curses mandates an application's inclusion of one standard C
1460            library header in a  special  case:  <EM>stdarg.h</EM>  before  <EM>curses.h</EM>  to
1461            prototype  the  functions  <EM>vw</EM><STRONG>_</STRONG><EM>printw</EM>  and  <EM>vw</EM><STRONG>_</STRONG><EM>scanw</EM> (as well as the
1462            obsolete <EM>vwprintw</EM> and <EM>vwscanw</EM>).  Each of  these  takes  a  variadic
1463            argument list, a <EM>va</EM><STRONG>_</STRONG><EM>list</EM> parameter, like that of <STRONG>printf(3)</STRONG>.
1464
1465            SVr3  <EM>curses</EM>  introduced  the  two  obsolete  functions, and X/Open
1466            Curses the others.   In  between,  SVr4  <EM>curses</EM>  provided  for  the
1467            possibility  that  an application might include either <EM>varargs.h</EM> or
1468            <EM>stdarg.h</EM>.  These represented  contrasting  approaches  to  handling
1469            variadic  argument  lists.   The older interface, <EM>varargs.h</EM>, used a
1470            pointer to <EM>char</EM> for variadic functions' <EM>va</EM><STRONG>_</STRONG><EM>list</EM> parameter.   Later,
1471            the  list  acquired its own standard data type, <EM>va</EM><STRONG>_</STRONG><EM>list</EM>, defined in
1472            <EM>stdarg.h</EM>, empowering the compiler to check the types of a  function
1473            call's  actual  parameters  against the formal ones declared in its
1474            prototype.
1475
1476            No  conforming  implementations  of  X/Open   Curses   require   an
1477            application to include <EM>stdarg.h</EM> before <EM>curses.h</EM> because they either
1478            have allowed for a special type, or,  like  <EM>ncurses</EM>,  they  include
1479            <EM>stdarg.h</EM> themselves to provide a portable interface.
1480
1481
1482 </PRE><H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE>
1483        Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.  Based on <EM>pcurses</EM>
1484        by Pavel Curtis.
1485
1486
1487 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
1488        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="user_caps.5.html">user_caps(5)</A></STRONG>
1489
1490
1491
1492 ncurses 6.5                       2024-05-25                       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
1493 </PRE>
1494 <div class="nav">
1495 <ul>
1496 <li><a href="#h2-NAME">NAME</a></li>
1497 <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
1498 <li><a href="#h2-DESCRIPTION">DESCRIPTION</a>
1499 <ul>
1500 <li><a href="#h3-Application-Structure">Application Structure</a></li>
1501 <li><a href="#h3-Overview">Overview</a></li>
1502 <li><a href="#h3-Initialization">Initialization</a></li>
1503 <li><a href="#h3-Naming-Conventions">Naming Conventions</a></li>
1504 <li><a href="#h3-Wide-and-Non-wide-Character-Configurations">Wide and Non-wide Character Configurations</a></li>
1505 <li><a href="#h3-Function-Name-Index">Function Name Index</a></li>
1506 </ul>
1507 </li>
1508 <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
1509 <li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a>
1510 <ul>
1511 <li><a href="#h3-BAUDRATE">BAUDRATE</a></li>
1512 <li><a href="#h3-CC-_command-character_">CC (command character)</a></li>
1513 <li><a href="#h3-COLUMNS">COLUMNS</a></li>
1514 <li><a href="#h3-ESCDELAY">ESCDELAY</a></li>
1515 <li><a href="#h3-HOME">HOME</a></li>
1516 <li><a href="#h3-LINES">LINES</a></li>
1517 <li><a href="#h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></li>
1518 <li><a href="#h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></li>
1519 <li><a href="#h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></li>
1520 <li><a href="#h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></li>
1521 <li><a href="#h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></li>
1522 <li><a href="#h3-NCURSES_NO_MAGIC_COOKIE">NCURSES_NO_MAGIC_COOKIE</a></li>
1523 <li><a href="#h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></li>
1524 <li><a href="#h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></li>
1525 <li><a href="#h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></li>
1526 <li><a href="#h3-NCURSES_TRACE">NCURSES_TRACE</a></li>
1527 <li><a href="#h3-TERM">TERM</a></li>
1528 <li><a href="#h3-TERMCAP">TERMCAP</a></li>
1529 <li><a href="#h3-TERMINFO">TERMINFO</a></li>
1530 <li><a href="#h3-TERMINFO_DIRS">TERMINFO_DIRS</a></li>
1531 <li><a href="#h3-TERMPATH">TERMPATH</a></li>
1532 </ul>
1533 </li>
1534 <li><a href="#h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></li>
1535 <li><a href="#h2-FILES">FILES</a></li>
1536 <li><a href="#h2-NOTES">NOTES</a></li>
1537 <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li>
1538 <li><a href="#h2-PORTABILITY">PORTABILITY</a>
1539 <ul>
1540 <li><a href="#h3-Error-Checking">Error Checking</a></li>
1541 <li><a href="#h3-Padding-Differences">Padding Differences</a></li>
1542 <li><a href="#h3-Header-Files">Header Files</a></li>
1543 </ul>
1544 </li>
1545 <li><a href="#h2-AUTHORS">AUTHORS</a></li>
1546 <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
1547 </ul>
1548 </div>
1549 </BODY>
1550 </HTML>