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