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