Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1 | <!-- |
| 2 | * t |
| 3 | **************************************************************************** |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 4 | * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. * |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 5 | * * |
| 6 | * Permission is hereby granted, free of charge, to any person obtaining a * |
| 7 | * copy of this software and associated documentation files (the * |
| 8 | * "Software"), to deal in the Software without restriction, including * |
| 9 | * without limitation the rights to use, copy, modify, merge, publish, * |
| 10 | * distribute, distribute with modifications, sublicense, and/or sell * |
| 11 | * copies of the Software, and to permit persons to whom the Software is * |
| 12 | * furnished to do so, subject to the following conditions: * |
| 13 | * * |
| 14 | * The above copyright notice and this permission notice shall be included * |
| 15 | * in all copies or substantial portions of the Software. * |
| 16 | * * |
| 17 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * |
| 18 | * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * |
| 19 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * |
| 20 | * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * |
| 21 | * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * |
| 22 | * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * |
| 23 | * THE USE OR OTHER DEALINGS IN THE SOFTWARE. * |
| 24 | * * |
| 25 | * Except as contained in this notice, the name(s) of the above copyright * |
| 26 | * holders shall not be used in advertising or otherwise to promote the * |
| 27 | * sale, use or other dealings in this Software without prior written * |
| 28 | * authorization. * |
| 29 | **************************************************************************** |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 30 | * @Id: ncurses.3x,v 1.124 2015/08/08 14:57:51 tom Exp @ |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 31 | --> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 32 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 33 | <HTML> |
| 34 | <HEAD> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 35 | <meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> |
| 36 | <meta name="generator" content="Manpage converted by man2html - see http://invisible-island.net/scripts/readme.html#others_scripts"> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 37 | <TITLE>ncurses 3x</TITLE> |
| 38 | <link rev=made href="mailto:bug-ncurses@gnu.org"> |
| 39 | <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
| 40 | </HEAD> |
| 41 | <BODY> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 42 | <H1 class="no-header">ncurses 3x</H1> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 43 | <PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 44 | <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> |
| 45 | |
| 46 | |
| 47 | |
| 48 | |
| 49 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 50 | <H2><a name="h2-NAME">NAME</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 51 | <STRONG>ncurses</STRONG> - CRT screen handling and optimization package |
| 52 | |
| 53 | |
| 54 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 55 | <H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 56 | <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> |
| 57 | |
| 58 | |
| 59 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 60 | <H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 61 | The <STRONG>ncurses</STRONG> library routines give the user a terminal- |
| 62 | independent method of updating character screens with rea- |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 63 | sonable optimization. This implementation is "new curses" |
| 64 | (ncurses) and is the approved replacement for 4.4BSD clas- |
| 65 | sic curses, which has been discontinued. This describes |
| 66 | <STRONG>ncurses</STRONG> version 6.0 (patch 20150808). |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 67 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 68 | The <STRONG>ncurses</STRONG> library emulates the curses library of System |
| 69 | V Release 4 UNIX, and XPG4 (X/Open Portability Guide) |
| 70 | curses (also known as XSI curses). XSI stands for X/Open |
| 71 | System Interfaces Extension. The <STRONG>ncurses</STRONG> library is |
| 72 | freely redistributable in source form. Differences from |
| 73 | the SVr4 curses are summarized under the <STRONG>EXTENSIONS</STRONG> and |
| 74 | <STRONG>PORTABILITY</STRONG> sections below and described in detail in the |
| 75 | respective <STRONG>EXTENSIONS</STRONG>, <STRONG>PORTABILITY</STRONG> and <STRONG>BUGS</STRONG> sections of |
| 76 | individual man pages. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 77 | |
| 78 | The <STRONG>ncurses</STRONG> library also provides many useful extensions, |
| 79 | i.e., features which cannot be implemented by a simple |
| 80 | add-on library but which require access to the internals |
| 81 | of the library. |
| 82 | |
| 83 | A program using these routines must be linked with the |
| 84 | <STRONG>-lncurses</STRONG> option, or (if it has been generated) with the |
| 85 | debugging library <STRONG>-lncurses_g</STRONG>. (Your system integrator |
| 86 | may also have installed these libraries under the names |
| 87 | <STRONG>-lcurses</STRONG> and <STRONG>-lcurses_g</STRONG>.) The ncurses_g library generates |
| 88 | trace logs (in a file called 'trace' in the current direc- |
| 89 | tory) that describe curses actions. See also the section |
| 90 | on <STRONG>ALTERNATE</STRONG> <STRONG>CONFIGURATIONS</STRONG>. |
| 91 | |
| 92 | The <STRONG>ncurses</STRONG> package supports: overall screen, window and |
| 93 | pad manipulation; output to windows and pads; reading ter- |
| 94 | minal input; control over terminal and <STRONG>curses</STRONG> input and |
| 95 | output options; environment query routines; color manipu- |
| 96 | lation; use of soft label keys; terminfo capabilities; and |
| 97 | access to low-level terminal-manipulation routines. |
| 98 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 99 | |
| 100 | </PRE> |
| 101 | <H3><a name="h3-Initialization">Initialization</a></H3><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 102 | The library uses the locale which the calling program has |
| 103 | initialized. That is normally done with <STRONG>setlocale</STRONG>: |
| 104 | |
| 105 | <STRONG>setlocale(LC_ALL,</STRONG> <STRONG>"");</STRONG> |
| 106 | |
| 107 | If the locale is not initialized, the library assumes that |
| 108 | characters are printable as in ISO-8859-1, to work with |
| 109 | certain legacy programs. You should initialize the locale |
| 110 | and not rely on specific details of the library when the |
| 111 | locale has not been setup. |
| 112 | |
| 113 | The function <STRONG>initscr</STRONG> or <STRONG>newterm</STRONG> must be called to initial- |
| 114 | ize the library before any of the other routines that deal |
| 115 | with windows and screens are used. The routine <STRONG>endwin</STRONG> |
| 116 | must be called before exiting. |
| 117 | |
| 118 | To get character-at-a-time input without echoing (most |
| 119 | interactive, screen oriented programs want this), the fol- |
| 120 | lowing sequence should be used: |
| 121 | |
| 122 | <STRONG>initscr();</STRONG> <STRONG>cbreak();</STRONG> <STRONG>noecho();</STRONG> |
| 123 | |
| 124 | Most programs would additionally use the sequence: |
| 125 | |
| 126 | <STRONG>nonl();</STRONG> |
| 127 | <STRONG>intrflush(stdscr,</STRONG> <STRONG>FALSE);</STRONG> |
| 128 | <STRONG>keypad(stdscr,</STRONG> <STRONG>TRUE);</STRONG> |
| 129 | |
| 130 | Before a <STRONG>curses</STRONG> program is run, the tab stops of the ter- |
| 131 | minal should be set and its initialization strings, if |
| 132 | defined, must be output. This can be done by executing |
| 133 | the <STRONG>tput</STRONG> <STRONG>init</STRONG> command after the shell environment variable |
| 134 | <STRONG>TERM</STRONG> has been exported. <STRONG>tset(1)</STRONG> is usually responsible |
| 135 | for doing this. [See <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> for further details.] |
| 136 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 137 | |
| 138 | </PRE> |
| 139 | <H3><a name="h3-Datatypes">Datatypes</a></H3><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 140 | The <STRONG>ncurses</STRONG> library permits manipulation of data struc- |
| 141 | tures, called <EM>windows</EM>, which can be thought of as two- |
| 142 | dimensional arrays of characters representing all or part |
| 143 | of a CRT screen. A default window called <STRONG>stdscr</STRONG>, which is |
| 144 | the size of the terminal screen, is supplied. Others may |
| 145 | be created with <STRONG>newwin</STRONG>. |
| 146 | |
| 147 | Note that <STRONG>curses</STRONG> does not handle overlapping windows, |
| 148 | that's done by the <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG> library. This means that you |
| 149 | can either use <STRONG>stdscr</STRONG> or divide the screen into tiled win- |
| 150 | dows and not using <STRONG>stdscr</STRONG> at all. Mixing the two will |
| 151 | result in unpredictable, and undesired, effects. |
| 152 | |
| 153 | Windows are referred to by variables declared as <STRONG>WINDOW</STRONG> <STRONG>*</STRONG>. |
| 154 | These data structures are manipulated with routines |
| 155 | described here and elsewhere in the <STRONG>ncurses</STRONG> manual pages. |
| 156 | Among those, the most basic routines are <STRONG>move</STRONG> and <STRONG>addch</STRONG>. |
| 157 | More general versions of these routines are included with |
| 158 | names beginning with <STRONG>w</STRONG>, allowing the user to specify a |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 159 | window. The routines not beginning with <STRONG>w</STRONG> affect <STRONG>stdscr</STRONG>. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 160 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 161 | After using routines to manipulate a window, <STRONG>refresh</STRONG> is |
| 162 | called, telling <STRONG>curses</STRONG> to make the user's CRT screen look |
| 163 | like <STRONG>stdscr</STRONG>. The characters in a window are actually of |
| 164 | type <STRONG>chtype</STRONG>, (character and attribute data) so that other |
| 165 | information about the character may also be stored with |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 166 | each character. |
| 167 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 168 | Special windows called <EM>pads</EM> may also be manipulated. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 169 | These are windows which are not constrained to the size of |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 170 | the screen and whose contents need not be completely dis- |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 171 | played. See <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> for more information. |
| 172 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 173 | In addition to drawing characters on the screen, video |
| 174 | attributes and colors may be supported, causing the char- |
| 175 | acters to show up in such modes as underlined, in reverse |
| 176 | video, or in color on terminals that support such display |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 177 | enhancements. Line drawing characters may be specified to |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 178 | be output. On input, <STRONG>curses</STRONG> is also able to translate |
| 179 | arrow and function keys that transmit escape sequences |
| 180 | into single values. The video attributes, line drawing |
| 181 | characters, and input values use names, defined in |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 182 | <STRONG><curses.h></STRONG>, such as <STRONG>A_REVERSE</STRONG>, <STRONG>ACS_HLINE</STRONG>, and <STRONG>KEY_LEFT</STRONG>. |
| 183 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 184 | |
| 185 | </PRE> |
| 186 | <H3><a name="h3-Environment-variables">Environment variables</a></H3><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 187 | If the environment variables <STRONG>LINES</STRONG> and <STRONG>COLUMNS</STRONG> are set, or |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 188 | if the program is executing in a window environment, line |
| 189 | and column information in the environment will override |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 190 | information read by <EM>terminfo</EM>. This would affect a program |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 191 | running in an AT&T 630 layer, for example, where the size |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 192 | of a screen is changeable (see <STRONG>ENVIRONMENT</STRONG>). |
| 193 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 194 | If the environment variable <STRONG>TERMINFO</STRONG> is defined, any pro- |
| 195 | gram using <STRONG>curses</STRONG> checks for a local terminal definition |
| 196 | before checking in the standard place. For example, if |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 197 | <STRONG>TERM</STRONG> is set to <STRONG>att4424</STRONG>, then the compiled terminal defini- |
| 198 | tion is found in |
| 199 | |
| 200 | <STRONG>/usr/share/terminfo/a/att4424</STRONG>. |
| 201 | |
| 202 | (The <STRONG>a</STRONG> is copied from the first letter of <STRONG>att4424</STRONG> to avoid |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 203 | creation of huge directories.) However, if <STRONG>TERMINFO</STRONG> is |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 204 | set to <STRONG>$HOME/myterms</STRONG>, <STRONG>curses</STRONG> first checks |
| 205 | |
| 206 | <STRONG>$HOME/myterms/a/att4424</STRONG>, |
| 207 | |
| 208 | and if that fails, it then checks |
| 209 | |
| 210 | <STRONG>/usr/share/terminfo/a/att4424</STRONG>. |
| 211 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 212 | This is useful for developing experimental definitions or |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 213 | when write permission in <STRONG>/usr/share/terminfo</STRONG> is not avail- |
| 214 | able. |
| 215 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 216 | The integer variables <STRONG>LINES</STRONG> and <STRONG>COLS</STRONG> are defined in |
| 217 | <STRONG><curses.h></STRONG> and will be filled in by <STRONG>initscr</STRONG> with the size |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 218 | of the screen. The constants <STRONG>TRUE</STRONG> and <STRONG>FALSE</STRONG> have the val- |
| 219 | ues <STRONG>1</STRONG> and <STRONG>0</STRONG>, respectively. |
| 220 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 221 | The <STRONG>curses</STRONG> routines also define the <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> variable |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 222 | <STRONG>curscr</STRONG> which is used for certain low-level operations like |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 223 | clearing and redrawing a screen containing garbage. The |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 224 | <STRONG>curscr</STRONG> can be used in only a few routines. |
| 225 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 226 | |
| 227 | </PRE> |
| 228 | <H3><a name="h3-Routine-and-Argument-Names">Routine and Argument Names</a></H3><PRE> |
| 229 | Many <STRONG>curses</STRONG> routines have two or more versions. The rou- |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 230 | tines prefixed with <STRONG>w</STRONG> require a window argument. The rou- |
| 231 | tines prefixed with <STRONG>p</STRONG> require a pad argument. Those with- |
| 232 | out a prefix generally use <STRONG>stdscr</STRONG>. |
| 233 | |
| 234 | The routines prefixed with <STRONG>mv</STRONG> require a <EM>y</EM> and <EM>x</EM> coordinate |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 235 | to move to before performing the appropriate action. The |
| 236 | <STRONG>mv</STRONG> routines imply a call to <STRONG>move</STRONG> before the call to the |
| 237 | other routine. The coordinate <EM>y</EM> always refers to the row |
| 238 | (of the window), and <EM>x</EM> always refers to the column. The |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 239 | upper left-hand corner is always (0,0), not (1,1). |
| 240 | |
| 241 | The routines prefixed with <STRONG>mvw</STRONG> take both a window argument |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 242 | and <EM>x</EM> and <EM>y</EM> coordinates. The window argument is always |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 243 | specified before the coordinates. |
| 244 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 245 | In each case, <EM>win</EM> is the window affected, and <EM>pad</EM> is the |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 246 | pad affected; <EM>win</EM> and <EM>pad</EM> are always pointers to type <STRONG>WIN-</STRONG> |
| 247 | <STRONG>DOW</STRONG>. |
| 248 | |
| 249 | Option setting routines require a Boolean flag <EM>bf</EM> with the |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 250 | value <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>; <EM>bf</EM> is always of type <STRONG>bool</STRONG>. Most of |
| 251 | the data types used in the library routines, such as <STRONG>WIN-</STRONG> |
| 252 | <STRONG>DOW</STRONG>, <STRONG>SCREEN</STRONG>, <STRONG>bool</STRONG>, and <STRONG>chtype</STRONG> are defined in <STRONG><curses.h></STRONG>. |
| 253 | Types used for the terminfo routines such as <STRONG>TERMINAL</STRONG> are |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 254 | defined in <STRONG><term.h></STRONG>. |
| 255 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 256 | This manual page describes functions which may appear in |
| 257 | any configuration of the library. There are two common |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 258 | configurations of the library: |
| 259 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 260 | <EM>ncurses</EM> |
| 261 | the "normal" library, which handles 8-bit charac- |
| 262 | ters. The normal (8-bit) library stores charac- |
| 263 | ters combined with attributes in <STRONG>chtype</STRONG> data. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 264 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 265 | Attributes alone (no corresponding character) may |
| 266 | be stored in <STRONG>chtype</STRONG> or the equivalent <STRONG>attr_t</STRONG> data. |
| 267 | In either case, the data is stored in something |
| 268 | like an integer. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 269 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 270 | Each cell (row and column) in a <STRONG>WINDOW</STRONG> is stored |
| 271 | as a <STRONG>chtype</STRONG>. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 272 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 273 | <EM>ncursesw</EM> |
| 274 | the so-called "wide" library, which handles multi- |
| 275 | byte characters (see the section on <STRONG>ALTERNATE</STRONG> <STRONG>CON-</STRONG> |
| 276 | <STRONG>FIGURATIONS</STRONG>). The "wide" library includes all of |
| 277 | the calls from the "normal" library. It adds |
| 278 | about one third more calls using data types which |
| 279 | store multibyte characters: |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 280 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 281 | <STRONG>cchar_t</STRONG> |
| 282 | corresponds to <STRONG>chtype</STRONG>. However it is a |
| 283 | structure, because more data is stored than |
| 284 | can fit into an integer. The characters are |
| 285 | large enough to require a full integer value |
| 286 | - and there may be more than one character |
| 287 | per cell. The video attributes and color are |
| 288 | stored in separate fields of the structure. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 289 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 290 | Each cell (row and column) in a <STRONG>WINDOW</STRONG> is |
| 291 | stored as a <STRONG>cchar_t</STRONG>. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 292 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 293 | <STRONG>wchar_t</STRONG> |
| 294 | stores a "wide" character. Like <STRONG>chtype</STRONG>, this |
| 295 | may be an integer. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 296 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 297 | <STRONG>wint_t</STRONG> |
| 298 | stores a <STRONG>wchar_t</STRONG> or <STRONG>WEOF</STRONG> - not the same, |
| 299 | though both may have the same size. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 300 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 301 | The "wide" library provides new functions which |
| 302 | are analogous to functions in the "normal" |
| 303 | library. There is a naming convention which |
| 304 | relates many of the normal/wide variants: a "_w" |
| 305 | is inserted into the name. For example, <STRONG>waddch</STRONG> |
| 306 | becomes <STRONG>wadd_wch</STRONG>. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 307 | |
| 308 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 309 | </PRE> |
| 310 | <H3><a name="h3-Routine-Name-Index">Routine Name Index</a></H3><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 311 | The following table lists each <STRONG>curses</STRONG> routine and the name |
| 312 | of the manual page on which it is described. Routines |
| 313 | flagged with `*' are ncurses-specific, not described by |
| 314 | XPG4 or present in SVr4. |
| 315 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 316 | <STRONG>curses</STRONG> Routine Name Manual Page Name |
| 317 | -------------------------------------------- |
| 318 | COLOR_PAIR <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 319 | PAIR_NUMBER <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 320 | _nc_free_and_exit <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>* |
| 321 | _nc_freeall <STRONG><A HREF="curs_memleaks.3x.html">curs_memleaks(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 322 | _nc_tracebits <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 323 | _traceattr <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 324 | _traceattr2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 325 | _tracechar <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 326 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 327 | _tracechtype <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 328 | _tracechtype2 <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 329 | _tracedump <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 330 | _tracef <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 331 | _tracemouse <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 332 | add_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 333 | add_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 334 | add_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 335 | addch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 336 | addchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 337 | addchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 338 | addnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 339 | addnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 340 | addstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 341 | addwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 342 | assume_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>* |
| 343 | attr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 344 | attr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 345 | attr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 346 | attr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 347 | attroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 348 | attron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 349 | attrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 350 | baudrate <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 351 | beep <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> |
| 352 | bkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> |
| 353 | bkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> |
| 354 | bkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 355 | bkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 356 | border <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 357 | border_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 358 | box <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 359 | box_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 360 | can_change_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 361 | cbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 362 | chgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 363 | clear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 364 | clearok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 365 | clrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 366 | clrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 367 | color_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 368 | color_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 369 | copywin <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG> |
| 370 | curs_set <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 371 | curses_version <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>* |
| 372 | def_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 373 | def_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 374 | define_key <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>* |
| 375 | del_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 376 | delay_output <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 377 | delch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG> |
| 378 | deleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 379 | delscreen <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 380 | delwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 381 | derwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 382 | doupdate <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
| 383 | dupwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 384 | echo <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 385 | echo_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 386 | echochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 387 | endwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 388 | erase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 389 | erasechar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 390 | erasewchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 391 | filter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 392 | flash <STRONG><A HREF="curs_beep.3x.html">curs_beep(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 393 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 394 | flushinp <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 395 | get_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> |
| 396 | get_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 397 | getattrs <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 398 | getbegx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 399 | getbegy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 400 | getbegyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> |
| 401 | getbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> |
| 402 | getbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 403 | getcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> |
| 404 | getch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> |
| 405 | getcurx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 406 | getcury <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 407 | getmaxx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 408 | getmaxy <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 409 | getmaxyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> |
| 410 | getmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 411 | getn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 412 | getnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 413 | getparx <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 414 | getpary <STRONG><A HREF="curs_legacy.3x.html">curs_legacy(3x)</A></STRONG>* |
| 415 | getparyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> |
| 416 | getstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 417 | getsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 418 | getwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 419 | getyx <STRONG><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></STRONG> |
| 420 | halfdelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 421 | has_colors <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 422 | has_ic <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 423 | has_il <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 424 | has_key <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>* |
| 425 | hline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 426 | hline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 427 | idcok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 428 | idlok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 429 | immedok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 430 | in_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> |
| 431 | in_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 432 | in_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 433 | inch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG> |
| 434 | inchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 435 | inchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 436 | init_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 437 | init_pair <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 438 | initscr <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 439 | innstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 440 | innwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 441 | ins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 442 | ins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> |
| 443 | ins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 444 | insch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> |
| 445 | insdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 446 | insertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 447 | insnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 448 | insstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 449 | instr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 450 | intrflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 451 | inwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 452 | is_cleared <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 453 | is_idcok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 454 | is_idlok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 455 | is_immedok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 456 | is_keypad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 457 | is_leaveok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 458 | is_linetouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 459 | is_nodelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 460 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 461 | is_notimeout <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 462 | is_pad <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 463 | is_scrollok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 464 | is_subwin <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 465 | is_syncok <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 466 | is_term_resized <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>* |
| 467 | is_wintouched <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 468 | isendwin <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 469 | key_defined <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>* |
| 470 | key_name <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 471 | keybound <STRONG><A HREF="keybound.3x.html">keybound(3x)</A></STRONG>* |
| 472 | keyname <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 473 | keyok <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG>* |
| 474 | keypad <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 475 | killchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 476 | killwchar <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 477 | leaveok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 478 | longname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 479 | mcprint <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG>* |
| 480 | meta <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 481 | mouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 482 | mouseinterval <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 483 | mousemask <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 484 | move <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> |
| 485 | mvadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 486 | mvadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 487 | mvadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 488 | mvaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 489 | mvaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 490 | mvaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 491 | mvaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 492 | mvaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 493 | mvaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 494 | mvaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 495 | mvchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 496 | mvcur <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 497 | mvdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG> |
| 498 | mvderwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 499 | mvget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> |
| 500 | mvget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 501 | mvgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> |
| 502 | mvgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 503 | mvgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 504 | mvgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 505 | mvhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 506 | mvhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 507 | mvin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> |
| 508 | mvin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 509 | mvin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 510 | mvinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG> |
| 511 | mvinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 512 | mvinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 513 | mvinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 514 | mvinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 515 | mvins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 516 | mvins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> |
| 517 | mvins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 518 | mvinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> |
| 519 | mvinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 520 | mvinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 521 | mvinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 522 | mvinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 523 | mvprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
| 524 | mvscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 525 | mvvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 526 | mvvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 527 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 528 | mvwadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 529 | mvwadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 530 | mvwadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 531 | mvwaddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 532 | mvwaddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 533 | mvwaddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 534 | mvwaddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 535 | mvwaddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 536 | mvwaddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 537 | mvwaddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 538 | mvwchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 539 | mvwdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG> |
| 540 | mvwget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> |
| 541 | mvwget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 542 | mvwgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> |
| 543 | mvwgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 544 | mvwgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 545 | mvwgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
| 546 | mvwhline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 547 | mvwhline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 548 | mvwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 549 | mvwin_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> |
| 550 | mvwin_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 551 | mvwin_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 552 | mvwinch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG> |
| 553 | mvwinchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 554 | mvwinchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 555 | mvwinnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 556 | mvwinnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 557 | mvwins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 558 | mvwins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> |
| 559 | mvwins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 560 | mvwinsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> |
| 561 | mvwinsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 562 | mvwinsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 563 | mvwinstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 564 | mvwinwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 565 | mvwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
| 566 | mvwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 567 | mvwvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 568 | mvwvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 569 | napms <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 570 | newpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> |
| 571 | newterm <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 572 | newwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 573 | nl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 574 | nocbreak <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 575 | nodelay <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 576 | noecho <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 577 | nofilter <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>* |
| 578 | nonl <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 579 | noqiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 580 | noraw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 581 | notimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 582 | overlay <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG> |
| 583 | overwrite <STRONG><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></STRONG> |
| 584 | pair_content <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 585 | pechochar <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> |
| 586 | pnoutrefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> |
| 587 | prefresh <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> |
| 588 | printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 589 | putp <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 590 | putwin <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 591 | qiflush <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 592 | raw <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 593 | redrawwin <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 594 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 595 | refresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
| 596 | reset_prog_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 597 | reset_shell_mode <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 598 | resetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 599 | resize_term <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 600 | resizeterm <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>* |
| 601 | restartterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 602 | ripoffline <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 603 | savetty <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 604 | scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 605 | scr_dump <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG> |
| 606 | scr_init <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG> |
| 607 | scr_restore <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG> |
| 608 | scr_set <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG> |
| 609 | scrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> |
| 610 | scroll <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> |
| 611 | scrollok <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 612 | set_curterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 613 | set_term <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG> |
| 614 | setcchar <STRONG><A HREF="curs_getcchar.3x.html">curs_getcchar(3x)</A></STRONG> |
| 615 | setscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 616 | setsyx <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG> |
| 617 | setterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 618 | setupterm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 619 | slk_attr <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG>* |
| 620 | slk_attr_off <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 621 | slk_attr_on <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 622 | slk_attr_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 623 | slk_attroff <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 624 | slk_attron <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 625 | slk_attrset <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 626 | slk_clear <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 627 | slk_color <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 628 | slk_init <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 629 | slk_label <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 630 | slk_noutrefresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 631 | slk_refresh <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 632 | slk_restore <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 633 | slk_set <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 634 | slk_touch <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> |
| 635 | standend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 636 | standout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 637 | start_color <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG> |
| 638 | subpad <STRONG><A HREF="curs_pad.3x.html">curs_pad(3x)</A></STRONG> |
| 639 | subwin <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 640 | syncok <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 641 | term_attrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 642 | termattrs <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 643 | termname <STRONG><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></STRONG> |
| 644 | tgetent <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 645 | tgetflag <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 646 | tgetnum <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 647 | tgetstr <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 648 | tgoto <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 649 | tigetflag <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 650 | tigetnum <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 651 | tigetstr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 652 | tiparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 653 | timeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 654 | touchline <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 655 | touchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 656 | tparm <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 657 | tputs <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG> |
| 658 | tputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 659 | trace <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG>* |
| 660 | typeahead <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 661 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 662 | unctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 663 | unget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> |
| 664 | ungetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> |
| 665 | ungetmouse <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 666 | untouchwin <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 667 | use_default_colors <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG>* |
| 668 | use_env <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 669 | use_extended_names <STRONG><A HREF="curs_extend.3x.html">curs_extend(3x)</A></STRONG>* |
| 670 | use_legacy_coding <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>* |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 671 | use_tioctl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 672 | vid_attr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 673 | vid_puts <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 674 | vidattr <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 675 | vidputs <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG> |
| 676 | vline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 677 | vline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 678 | vw_printw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
| 679 | vw_scanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 680 | vwprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
| 681 | vwscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 682 | wadd_wch <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 683 | wadd_wchnstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 684 | wadd_wchstr <STRONG><A HREF="curs_add_wchstr.3x.html">curs_add_wchstr(3x)</A></STRONG> |
| 685 | waddch <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 686 | waddchnstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 687 | waddchstr <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG> |
| 688 | waddnstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 689 | waddnwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 690 | waddstr <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG> |
| 691 | waddwstr <STRONG><A HREF="curs_addwstr.3x.html">curs_addwstr(3x)</A></STRONG> |
| 692 | wattr_get <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 693 | wattr_off <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 694 | wattr_on <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 695 | wattr_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 696 | wattroff <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 697 | wattron <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 698 | wattrset <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 699 | wbkgd <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> |
| 700 | wbkgdset <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> |
| 701 | wbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 702 | wbkgrndset <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 703 | wborder <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 704 | wborder_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 705 | wchgat <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 706 | wclear <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 707 | wclrtobot <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 708 | wclrtoeol <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 709 | wcolor_set <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 710 | wcursyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 711 | wdelch <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG> |
| 712 | wdeleteln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 713 | wecho_wchar <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> |
| 714 | wechochar <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG> |
| 715 | wenclose <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 716 | werase <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG> |
| 717 | wget_wch <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG> |
| 718 | wget_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 719 | wgetbkgrnd <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> |
| 720 | wgetch <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 721 | wgetdelay <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 722 | wgetn_wstr <STRONG><A HREF="curs_get_wstr.3x.html">curs_get_wstr(3x)</A></STRONG> |
| 723 | wgetnstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 724 | wgetparent <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
| 725 | wgetscrreg <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>* |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 726 | wgetstr <STRONG><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 727 | whline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 728 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 729 | whline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 730 | win_wch <STRONG><A HREF="curs_in_wch.3x.html">curs_in_wch(3x)</A></STRONG> |
| 731 | win_wchnstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 732 | win_wchstr <STRONG><A HREF="curs_in_wchstr.3x.html">curs_in_wchstr(3x)</A></STRONG> |
| 733 | winch <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG> |
| 734 | winchnstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 735 | winchstr <STRONG><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></STRONG> |
| 736 | winnstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 737 | winnwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 738 | wins_nwstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 739 | wins_wch <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG> |
| 740 | wins_wstr <STRONG><A HREF="curs_ins_wstr.3x.html">curs_ins_wstr(3x)</A></STRONG> |
| 741 | winsch <STRONG><A HREF="curs_insch.3x.html">curs_insch(3x)</A></STRONG> |
| 742 | winsdelln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 743 | winsertln <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG> |
| 744 | winsnstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 745 | winsstr <STRONG><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></STRONG> |
| 746 | winstr <STRONG><A HREF="curs_instr.3x.html">curs_instr(3x)</A></STRONG> |
| 747 | winwstr <STRONG><A HREF="curs_inwstr.3x.html">curs_inwstr(3x)</A></STRONG> |
| 748 | wmouse_trafo <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>* |
| 749 | wmove <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG> |
| 750 | wnoutrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
| 751 | wprintw <STRONG><A HREF="curs_printw.3x.html">curs_printw(3x)</A></STRONG> |
| 752 | wredrawln <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
| 753 | wrefresh <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG> |
| 754 | wresize <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>* |
| 755 | wscanw <STRONG><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></STRONG> |
| 756 | wscrl <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG> |
| 757 | wsetscrreg <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG> |
| 758 | wstandend <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 759 | wstandout <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> |
| 760 | wsyncdown <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 761 | wsyncup <STRONG><A HREF="curs_window.3x.html">curs_window(3x)</A></STRONG> |
| 762 | wtimeout <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> |
| 763 | wtouchln <STRONG><A HREF="curs_touch.3x.html">curs_touch(3x)</A></STRONG> |
| 764 | wunctrl <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> |
| 765 | wvline <STRONG><A HREF="curs_border.3x.html">curs_border(3x)</A></STRONG> |
| 766 | wvline_set <STRONG><A HREF="curs_border_set.3x.html">curs_border_set(3x)</A></STRONG> |
| 767 | |
| 768 | |
| 769 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 770 | <H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 771 | Routines that return an integer return <STRONG>ERR</STRONG> upon failure |
| 772 | and an integer value other than <STRONG>ERR</STRONG> upon successful com- |
| 773 | pletion, unless otherwise noted in the routine descrip- |
| 774 | tions. |
| 775 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 776 | As a general rule, routines check for null pointers passed |
| 777 | as parameters, and handle this as an error. |
| 778 | |
| 779 | All macros return the value of the <STRONG>w</STRONG> version, except |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 780 | <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, and <STRONG>getmaxyx</STRONG>. The |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 781 | return values of <STRONG>setscrreg</STRONG>, <STRONG>wsetscrreg</STRONG>, <STRONG>getyx</STRONG>, <STRONG>getbegyx</STRONG>, |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 782 | and <STRONG>getmaxyx</STRONG> are undefined (i.e., these should not be used |
| 783 | as the right-hand side of assignment statements). |
| 784 | |
| 785 | Routines that return pointers return <STRONG>NULL</STRONG> on error. |
| 786 | |
| 787 | |
| 788 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 789 | <H2><a name="h2-ENVIRONMENT">ENVIRONMENT</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 790 | The following environment symbols are useful for customiz- |
| 791 | ing the runtime behavior of the <STRONG>ncurses</STRONG> library. The most |
| 792 | important ones have been already discussed in detail. |
| 793 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 794 | <STRONG>CC</STRONG> |
| 795 | When set, change occurrences of the command_character |
| 796 | (i.e., the <STRONG>cmdch</STRONG> capability) of the loaded terminfo |
| 797 | entries to the value of this variable. Very few terminfo |
| 798 | entries provide this feature. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 799 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 800 | Because this name is also used in development environments |
| 801 | to represent the C compiler's name, <STRONG>ncurses</STRONG> ignores it if |
| 802 | it does not happen to be a single character. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 803 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 804 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 805 | </PRE> |
| 806 | <H3><a name="h3-BAUDRATE">BAUDRATE</a></H3><PRE> |
| 807 | The debugging library checks this environment variable |
| 808 | when the application has redirected output to a file. The |
| 809 | variable's numeric value is used for the baudrate. If no |
| 810 | value is found, <STRONG>ncurses</STRONG> uses 9600. This allows testers to |
| 811 | construct repeatable test-cases that take into account |
| 812 | costs that depend on baudrate. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 813 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 814 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 815 | </PRE> |
| 816 | <H3><a name="h3-COLUMNS">COLUMNS</a></H3><PRE> |
| 817 | Specify the width of the screen in characters. Applica- |
| 818 | tions running in a windowing environment usually are able |
| 819 | to obtain the width of the window in which they are exe- |
| 820 | cuting. If neither the <STRONG>COLUMNS</STRONG> value nor the terminal's |
| 821 | screen size is available, <STRONG>ncurses</STRONG> uses the size which may |
| 822 | be specified in the terminfo database (i.e., the <STRONG>cols</STRONG> |
| 823 | capability). |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 824 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 825 | It is important that your application use a correct size |
| 826 | for the screen. This is not always possible because your |
| 827 | application may be running on a host which does not honor |
| 828 | NAWS (Negotiations About Window Size), or because you are |
| 829 | temporarily running as another user. However, setting |
| 830 | <STRONG>COLUMNS</STRONG> and/or <STRONG>LINES</STRONG> overrides the library's use of the |
| 831 | screen size obtained from the operating system. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 832 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 833 | Either <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> symbols may be specified indepen- |
| 834 | dently. This is mainly useful to circumvent legacy mis- |
| 835 | features of terminal descriptions, e.g., xterm which com- |
| 836 | monly specifies a 65 line screen. For best results, <STRONG>lines</STRONG> |
| 837 | and <STRONG>cols</STRONG> should not be specified in a terminal description |
| 838 | for terminals which are run as emulations. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 839 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 840 | Use the <STRONG>use_env</STRONG> function to disable all use of external |
| 841 | environment (but not including system calls) to determine |
| 842 | the screen size. Use the <STRONG>use_tioctl</STRONG> function to update |
| 843 | <STRONG>COLUMNS</STRONG> or <STRONG>LINES</STRONG> to match the screen size obtained from |
| 844 | system calls or the terminal database. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 845 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 846 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 847 | </PRE> |
| 848 | <H3><a name="h3-ESCDELAY">ESCDELAY</a></H3><PRE> |
| 849 | Specifies the total time, in milliseconds, for which |
| 850 | ncurses will await a character sequence, e.g., a function |
| 851 | key. The default value, 1000 milliseconds, is enough for |
| 852 | most uses. However, it is made a variable to accommodate |
| 853 | unusual applications. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 854 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 855 | The most common instance where you may wish to change this |
| 856 | value is to work with slow hosts, e.g., running on a net- |
| 857 | work. If the host cannot read characters rapidly enough, |
| 858 | it will have the same effect as if the terminal did not |
| 859 | send characters rapidly enough. The library will still |
| 860 | see a timeout. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 861 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 862 | Note that xterm mouse events are built up from character |
| 863 | sequences received from the xterm. If your application |
| 864 | makes heavy use of multiple-clicking, you may wish to |
| 865 | lengthen this default value because the timeout applies to |
| 866 | the composed multi-click event as well as the individual |
| 867 | clicks. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 868 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 869 | In addition to the environment variable, this implementa- |
| 870 | tion provides a global variable with the same name. Por- |
| 871 | table applications should not rely upon the presence of |
| 872 | ESCDELAY in either form, but setting the environment vari- |
| 873 | able rather than the global variable does not create prob- |
| 874 | lems when compiling an application. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 875 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 876 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 877 | </PRE> |
| 878 | <H3><a name="h3-HOME">HOME</a></H3><PRE> |
| 879 | Tells <STRONG>ncurses</STRONG> where your home directory is. That is where |
| 880 | it may read and write auxiliary terminal descriptions: |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 881 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 882 | $HOME/.termcap |
| 883 | $HOME/.terminfo |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 884 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 885 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 886 | </PRE> |
| 887 | <H3><a name="h3-LINES">LINES</a></H3><PRE> |
| 888 | Like COLUMNS, specify the height of the screen in charac- |
| 889 | ters. See COLUMNS for a detailed description. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 890 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 891 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 892 | </PRE> |
| 893 | <H3><a name="h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></H3><PRE> |
| 894 | This applies only to the OS/2 EMX port. It specifies the |
| 895 | order of buttons on the mouse. OS/2 numbers a 3-button |
| 896 | mouse inconsistently from other platforms: |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 897 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 898 | 1 = left |
| 899 | 2 = right |
| 900 | 3 = middle. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 901 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 902 | This variable lets you customize the mouse. The variable |
| 903 | must be three numeric digits 1-3 in any order, e.g., 123 |
| 904 | or 321. If it is not specified, <STRONG>ncurses</STRONG> uses 132. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 905 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 906 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 907 | </PRE> |
| 908 | <H3><a name="h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></H3><PRE> |
| 909 | Override the compiled-in assumption that the terminal's |
| 910 | default colors are white-on-black (see <STRONG>default_col-</STRONG> |
| 911 | <STRONG><A HREF="default_colors.3x.html">ors(3x)</A></STRONG>). You may set the foreground and background color |
| 912 | values with this environment variable by proving a 2-ele- |
| 913 | ment list: foreground,background. For example, to tell |
| 914 | ncurses to not assume anything about the colors, set this |
| 915 | to "-1,-1". To make it green-on-black, set it to "2,0". |
| 916 | Any positive value from zero to the terminfo <STRONG>max_colors</STRONG> |
| 917 | value is allowed. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 918 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 919 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 920 | </PRE> |
| 921 | <H3><a name="h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></H3><PRE> |
| 922 | This applies only to the MinGW port of ncurses. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 923 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 924 | The <STRONG>Console2</STRONG> program's handling of the Microsoft Console |
| 925 | API call <STRONG>CreateConsoleScreenBuffer</STRONG> is defective. Applica- |
| 926 | tions which use this will hang. However, it is possible |
| 927 | to simulate the action of this call by mapping coordi- |
| 928 | nates, explicitly saving and restoring the original screen |
| 929 | contents. Setting the environment variable <STRONG>NCGDB</STRONG> has the |
| 930 | same effect. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 931 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 932 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 933 | </PRE> |
| 934 | <H3><a name="h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></H3><PRE> |
| 935 | This applies only to ncurses configured to use the GPM |
| 936 | interface. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 937 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 938 | If present, the environment variable is a list of one or |
| 939 | more terminal names against which the TERM environment |
| 940 | variable is matched. Setting it to an empty value dis- |
| 941 | ables the GPM interface; using the built-in support for |
| 942 | xterm, etc. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 943 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 944 | If the environment variable is absent, ncurses will |
| 945 | attempt to open GPM if TERM contains "linux". |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 946 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 947 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 948 | </PRE> |
| 949 | <H3><a name="h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></H3><PRE> |
| 950 | <STRONG>Ncurses</STRONG> may use tabs as part of the cursor movement opti- |
| 951 | mization. In some cases, your terminal driver may not |
| 952 | handle these properly. Set this environment variable to |
| 953 | disable the feature. You can also adjust your <STRONG>stty</STRONG> set- |
| 954 | tings to avoid the problem. NCURSES_NO_MAGIC_COOKIE Some |
| 955 | terminals use a magic-cookie feature which requires spe- |
| 956 | cial handling to make highlighting and other video |
| 957 | attributes display properly. You can suppress the high- |
| 958 | lighting entirely for these terminals by setting this |
| 959 | environment variable. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 960 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 961 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 962 | </PRE> |
| 963 | <H3><a name="h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></H3><PRE> |
| 964 | Most of the terminal descriptions in the terminfo database |
| 965 | are written for real "hardware" terminals. Many people |
| 966 | use terminal emulators which run in a windowing environ- |
| 967 | ment and use curses-based applications. Terminal emula- |
| 968 | tors can duplicate all of the important aspects of a hard- |
| 969 | ware terminal, but they do not have the same limitations. |
| 970 | The chief limitation of a hardware terminal from the |
| 971 | standpoint of your application is the management of |
| 972 | dataflow, i.e., timing. Unless a hardware terminal is |
| 973 | interfaced into a terminal concentrator (which does flow |
| 974 | control), it (or your application) must manage dataflow, |
| 975 | preventing overruns. The cheapest solution (no hardware |
| 976 | cost) is for your program to do this by pausing after |
| 977 | operations that the terminal does slowly, such as clearing |
| 978 | the display. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 979 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 980 | As a result, many terminal descriptions (including the |
| 981 | vt100) have delay times embedded. You may wish to use |
| 982 | these descriptions, but not want to pay the performance |
| 983 | penalty. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 984 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 985 | Set the NCURSES_NO_PADDING environment variable to disable |
| 986 | all but mandatory padding. Mandatory padding is used as a |
| 987 | part of special control sequences such as <EM>flash</EM>. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 988 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 989 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 990 | </PRE> |
| 991 | <H3><a name="h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></H3><PRE> |
| 992 | This setting is obsolete. Before changes |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 993 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 994 | <STRONG>o</STRONG> started with 5.9 patch 20120825 and |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 995 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 996 | <STRONG>o</STRONG> continued though 5.9 patch 20130126 |
| 997 | |
| 998 | <STRONG>ncurses</STRONG> enabled buffered output during terminal initial- |
| 999 | ization. This was done (as in SVr4 curses) for perfor- |
| 1000 | mance reasons. For testing purposes, both of <STRONG>ncurses</STRONG> and |
| 1001 | certain applications, this feature was made optional. |
| 1002 | Setting the NCURSES_NO_SETBUF variable disabled output |
| 1003 | buffering, leaving the output in the original (usually |
| 1004 | line buffered) mode. |
| 1005 | |
| 1006 | In the current implementation, ncurses performs its own |
| 1007 | buffering and does not require this workaround. It does |
| 1008 | not modify the buffering of the standard output. |
| 1009 | |
| 1010 | The reason for the change was to make the behavior for |
| 1011 | interrupts and other signals more robust. One drawback is |
| 1012 | that certain nonconventional programs would mix ordinary |
| 1013 | stdio calls with ncurses calls and (usually) work. This |
| 1014 | is no longer possible since ncurses is not using the |
| 1015 | buffered standard output but its own output (to the same |
| 1016 | file descriptor). As a special case, the low-level calls |
| 1017 | such as <STRONG>putp</STRONG> still use the standard output. But high- |
| 1018 | level curses calls do not. |
| 1019 | |
| 1020 | |
| 1021 | </PRE> |
| 1022 | <H3><a name="h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></H3><PRE> |
| 1023 | During initialization, the <STRONG>ncurses</STRONG> library checks for spe- |
| 1024 | cial cases where VT100 line-drawing (and the corresponding |
| 1025 | alternate character set capabilities) described in the |
| 1026 | terminfo are known to be missing. Specifically, when run- |
| 1027 | ning in a UTF-8 locale, the Linux console emulator and the |
| 1028 | GNU screen program ignore these. Ncurses checks the TERM |
| 1029 | environment variable for these. For other special cases, |
| 1030 | you should set this environment variable. Doing this |
| 1031 | tells ncurses to use Unicode values which correspond to |
| 1032 | the VT100 line-drawing glyphs. That works for the special |
| 1033 | cases cited, and is likely to work for terminal emulators. |
| 1034 | |
| 1035 | When setting this variable, you should set it to a nonzero |
| 1036 | value. Setting it to zero (or to a nonnumber) disables |
| 1037 | the special check for "linux" and "screen". |
| 1038 | |
| 1039 | As an alternative to the environment variable, ncurses |
| 1040 | checks for an extended terminfo capability <STRONG>U8</STRONG>. This is a |
| 1041 | numeric capability which can be compiled using <STRONG>tic</STRONG> <STRONG>-x</STRONG>. |
| 1042 | For example |
| 1043 | |
| 1044 | # linux console, if patched to provide working |
| 1045 | # VT100 shift-in/shift-out, with corresponding font. |
| 1046 | linux-vt100|linux console with VT100 line-graphics, |
| 1047 | U8#0, use=linux, |
| 1048 | |
| 1049 | # uxterm with vt100Graphics resource set to false |
| 1050 | xterm-utf8|xterm relying on UTF-8 line-graphics, |
| 1051 | U8#1, use=xterm, |
| 1052 | |
| 1053 | The name "U8" is chosen to be two characters, to permit it |
| 1054 | to be used by applications that use ncurses' termcap |
| 1055 | interface. |
| 1056 | |
| 1057 | |
| 1058 | </PRE> |
| 1059 | <H3><a name="h3-NCURSES_TRACE">NCURSES_TRACE</a></H3><PRE> |
| 1060 | During initialization, the <STRONG>ncurses</STRONG> debugging library |
| 1061 | checks the NCURSES_TRACE environment variable. If it is |
| 1062 | defined, to a numeric value, <STRONG>ncurses</STRONG> calls the <STRONG>trace</STRONG> func- |
| 1063 | tion, using that value as the argument. |
| 1064 | |
| 1065 | The argument values, which are defined in <STRONG>curses.h</STRONG>, pro- |
| 1066 | vide several types of information. When running with |
| 1067 | traces enabled, your application will write the file <STRONG>trace</STRONG> |
| 1068 | to the current directory. |
| 1069 | |
| 1070 | See <STRONG><A HREF="curs_trace.3x.html">curs_trace(3x)</A></STRONG> for more information. |
| 1071 | |
| 1072 | |
| 1073 | </PRE> |
| 1074 | <H3><a name="h3-TERM">TERM</a></H3><PRE> |
| 1075 | Denotes your terminal type. Each terminal type is dis- |
| 1076 | tinct, though many are similar. |
| 1077 | |
| 1078 | <STRONG>TERM</STRONG> is commonly set by terminal emulators to help appli- |
| 1079 | cations find a workable terminal description. Some of |
| 1080 | those choose a popular approximation, e.g., "ansi", |
| 1081 | "vt100", "xterm" rather than an exact fit. Not infre- |
| 1082 | quently, your application will have problems with that |
| 1083 | approach, e.g., incorrect function-key definitions. |
| 1084 | |
| 1085 | If you set <STRONG>TERM</STRONG> in your environment, it has no effect on |
| 1086 | the operation of the terminal emulator. It only affects |
| 1087 | the way applications work within the terminal. Likewise, |
| 1088 | as a general rule (<STRONG>xterm</STRONG> being a rare exception), terminal |
| 1089 | emulators which allow you to specify <STRONG>TERM</STRONG> as a parameter |
| 1090 | or configuration value do not change their behavior to |
| 1091 | match that setting. |
| 1092 | |
| 1093 | |
| 1094 | </PRE> |
| 1095 | <H3><a name="h3-TERMCAP">TERMCAP</a></H3><PRE> |
| 1096 | If the <STRONG>ncurses</STRONG> library has been configured with <EM>termcap</EM> |
| 1097 | support, <STRONG>ncurses</STRONG> will check for a terminal's description |
| 1098 | in termcap form if it is not available in the terminfo |
| 1099 | database. |
| 1100 | |
| 1101 | The TERMCAP environment variable contains either a termi- |
| 1102 | nal description (with newlines stripped out), or a file |
| 1103 | name telling where the information denoted by the TERM |
| 1104 | environment variable exists. In either case, setting it |
| 1105 | directs <STRONG>ncurses</STRONG> to ignore the usual place for this infor- |
| 1106 | mation, e.g., /etc/termcap. |
| 1107 | |
| 1108 | |
| 1109 | </PRE> |
| 1110 | <H3><a name="h3-TERMINFO">TERMINFO</a></H3><PRE> |
| 1111 | Overrides the directory in which <STRONG>ncurses</STRONG> searches for your |
| 1112 | terminal description. This is the simplest, but not the |
| 1113 | only way to change the list of directories. The complete |
| 1114 | list of directories in order follows: |
| 1115 | |
| 1116 | <STRONG>o</STRONG> the last directory to which <STRONG>ncurses</STRONG> wrote, if any, |
| 1117 | is searched first |
| 1118 | |
| 1119 | <STRONG>o</STRONG> the directory specified by the TERMINFO environment |
| 1120 | variable |
| 1121 | |
| 1122 | <STRONG>o</STRONG> $HOME/.terminfo |
| 1123 | |
| 1124 | <STRONG>o</STRONG> directories listed in the TERMINFO_DIRS environment |
| 1125 | variable |
| 1126 | |
| 1127 | <STRONG>o</STRONG> one or more directories whose names are configured |
| 1128 | and compiled into the ncurses library, i.e., |
| 1129 | |
| 1130 | <STRONG>o</STRONG> /usr/local/ncurses/share/ter- |
| 1131 | minfo:/usr/share/terminfo (corresponding to the |
| 1132 | TERMINFO_DIRS variable) |
| 1133 | |
| 1134 | <STRONG>o</STRONG> /usr/share/terminfo (corresponding to the TER- |
| 1135 | MINFO variable) |
| 1136 | |
| 1137 | |
| 1138 | </PRE> |
| 1139 | <H3><a name="h3-TERMINFO_DIRS">TERMINFO_DIRS</a></H3><PRE> |
| 1140 | Specifies a list of directories to search for terminal |
| 1141 | descriptions. The list is separated by colons (i.e., ":") |
| 1142 | on Unix, semicolons on OS/2 EMX. |
| 1143 | |
| 1144 | All of the terminal descriptions are in terminfo form. |
| 1145 | Normally these are stored in a directory tree, using sub- |
| 1146 | directories named by the first letter of the terminal |
| 1147 | names therein. |
| 1148 | |
| 1149 | If <STRONG>ncurses</STRONG> is built with a hashed database, then each |
| 1150 | entry in this list can also be the path of the correspond- |
| 1151 | ing database file. |
| 1152 | |
| 1153 | If <STRONG>ncurses</STRONG> is built with a support for reading termcap |
| 1154 | files directly, then an entry in this list may be the path |
| 1155 | of a termcap file. |
| 1156 | |
| 1157 | |
| 1158 | </PRE> |
| 1159 | <H3><a name="h3-TERMPATH">TERMPATH</a></H3><PRE> |
| 1160 | If TERMCAP does not hold a file name then <STRONG>ncurses</STRONG> checks |
| 1161 | the TERMPATH environment variable. This is a list of |
| 1162 | filenames separated by spaces or colons (i.e., ":") on |
| 1163 | Unix, semicolons on OS/2 EMX. |
| 1164 | |
| 1165 | If the TERMPATH environment variable is not set, <STRONG>ncurses</STRONG> |
| 1166 | looks in the files /etc/termcap, /usr/share/misc/termcap |
| 1167 | and $HOME/.termcap, in that order. |
| 1168 | |
| 1169 | The library may be configured to disregard the following |
| 1170 | variables when the current user is the superuser (root), |
| 1171 | or if the application uses setuid or setgid permissions: |
| 1172 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1173 | $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME. |
| 1174 | |
| 1175 | |
| 1176 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1177 | <H2><a name="h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1178 | Several different configurations are possible, depending |
| 1179 | on the configure script options used when building |
| 1180 | <STRONG>ncurses</STRONG>. There are a few main options whose effects are |
| 1181 | visible to the applications developer using <STRONG>ncurses</STRONG>: |
| 1182 | |
| 1183 | --disable-overwrite |
| 1184 | The standard include for <STRONG>ncurses</STRONG> is as noted in <STRONG>SYN-</STRONG> |
| 1185 | <STRONG>OPSIS</STRONG>: |
| 1186 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1187 | <STRONG>#include</STRONG> <STRONG><curses.h></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1188 | |
| 1189 | This option is used to avoid filename conflicts when |
| 1190 | <STRONG>ncurses</STRONG> is not the main implementation of curses of |
| 1191 | the computer. If <STRONG>ncurses</STRONG> is installed disabling |
| 1192 | overwrite, it puts its headers in a subdirectory, |
| 1193 | e.g., |
| 1194 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1195 | <STRONG>#include</STRONG> <STRONG><ncurses/curses.h></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1196 | |
| 1197 | It also omits a symbolic link which would allow you |
| 1198 | to use <STRONG>-lcurses</STRONG> to build executables. |
| 1199 | |
| 1200 | --enable-widec |
| 1201 | The configure script renames the library and (if the |
| 1202 | <STRONG>--disable-overwrite</STRONG> option is used) puts the header |
| 1203 | files in a different subdirectory. All of the |
| 1204 | library names have a "w" appended to them, i.e., |
| 1205 | instead of |
| 1206 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1207 | <STRONG>-lncurses</STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1208 | |
| 1209 | you link with |
| 1210 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1211 | <STRONG>-lncursesw</STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1212 | |
| 1213 | You must also define <STRONG>_XOPEN_SOURCE_EXTENDED</STRONG> when com- |
| 1214 | piling for the wide-character library to use the |
| 1215 | extended (wide-character) functions. The <STRONG>curses.h</STRONG> |
| 1216 | file which is installed for the wide-character |
| 1217 | library is designed to be compatible with the normal |
| 1218 | library's header. Only the size of the <STRONG>WINDOW</STRONG> struc- |
| 1219 | ture differs, and very few applications require more |
| 1220 | than a pointer to <STRONG>WINDOW</STRONG>s. If the headers are |
| 1221 | installed allowing overwrite, the wide-character |
| 1222 | library's headers should be installed last, to allow |
| 1223 | applications to be built using either library from |
| 1224 | the same set of headers. |
| 1225 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1226 | --with-pthread |
| 1227 | The configure script renames the library. All of the |
| 1228 | library names have a "t" appended to them (before any |
| 1229 | "w" added by <STRONG>--enable-widec</STRONG>). |
| 1230 | |
| 1231 | The global variables such as <STRONG>LINES</STRONG> are replaced by |
| 1232 | macros to allow read-only access. At the same time, |
| 1233 | setter-functions are provided to set these values. |
| 1234 | Some applications (very few) may require changes to |
| 1235 | work with this convention. |
| 1236 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1237 | --with-shared |
| 1238 | |
| 1239 | --with-normal |
| 1240 | |
| 1241 | --with-debug |
| 1242 | |
| 1243 | --with-profile |
| 1244 | The shared and normal (static) library names differ |
| 1245 | by their suffixes, e.g., <STRONG>libncurses.so</STRONG> and <STRONG>libn-</STRONG> |
| 1246 | <STRONG>curses.a</STRONG>. The debug and profiling libraries add a |
| 1247 | "_g" and a "_p" to the root names respectively, e.g., |
| 1248 | <STRONG>libncurses_g.a</STRONG> and <STRONG>libncurses_p.a</STRONG>. |
| 1249 | |
| 1250 | --with-trace |
| 1251 | The <STRONG>trace</STRONG> function normally resides in the debug |
| 1252 | library, but it is sometimes useful to configure this |
| 1253 | in the shared library. Configure scripts should |
| 1254 | check for the function's existence rather than assum- |
| 1255 | ing it is always in the debug library. |
| 1256 | |
| 1257 | |
| 1258 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1259 | <H2><a name="h2-FILES">FILES</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1260 | /usr/share/tabset |
| 1261 | directory containing initialization files for the |
| 1262 | terminal capability database /usr/share/terminfo ter- |
| 1263 | minal capability database |
| 1264 | |
| 1265 | |
| 1266 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1267 | <H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1268 | <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG> and related pages whose names begin "curs_" |
| 1269 | for detailed routine descriptions. |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1270 | <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1271 | |
| 1272 | |
| 1273 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1274 | <H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1275 | The <STRONG>ncurses</STRONG> library can be compiled with an option |
| 1276 | (<STRONG>-DUSE_GETCAP</STRONG>) that falls back to the old-style /etc/term- |
| 1277 | cap file if the terminal setup code cannot find a terminfo |
| 1278 | entry corresponding to <STRONG>TERM</STRONG>. Use of this feature is not |
| 1279 | recommended, as it essentially includes an entire termcap |
| 1280 | compiler in the <STRONG>ncurses</STRONG> startup code, at significant cost |
| 1281 | in core and startup cycles. |
| 1282 | |
| 1283 | The <STRONG>ncurses</STRONG> library includes facilities for capturing |
| 1284 | mouse events on certain terminals (including xterm). See |
| 1285 | the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details. |
| 1286 | |
| 1287 | The <STRONG>ncurses</STRONG> library includes facilities for responding to |
| 1288 | window resizing events, e.g., when running in an xterm. |
| 1289 | See the <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> and <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual pages for |
| 1290 | details. In addition, the library may be configured with |
| 1291 | a SIGWINCH handler. |
| 1292 | |
| 1293 | The <STRONG>ncurses</STRONG> library extends the fixed set of function key |
| 1294 | capabilities of terminals by allowing the application |
| 1295 | designer to define additional key sequences at runtime. |
| 1296 | See the <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG> <STRONG><A HREF="key_defined.3x.html">key_defined(3x)</A></STRONG>, and <STRONG><A HREF="keyok.3x.html">keyok(3x)</A></STRONG> man- |
| 1297 | ual pages for details. |
| 1298 | |
| 1299 | The <STRONG>ncurses</STRONG> library can exploit the capabilities of termi- |
| 1300 | nals which implement the ISO-6429 SGR 39 and SGR 49 con- |
| 1301 | trols, which allow an application to reset the terminal to |
| 1302 | its original foreground and background colors. From the |
| 1303 | users' perspective, the application is able to draw col- |
| 1304 | ored text on a background whose color is set indepen- |
| 1305 | dently, providing better control over color contrasts. |
| 1306 | See the <STRONG><A HREF="default_colors.3x.html">default_colors(3x)</A></STRONG> manual page for details. |
| 1307 | |
| 1308 | The <STRONG>ncurses</STRONG> library includes a function for directing |
| 1309 | application output to a printer attached to the terminal |
| 1310 | device. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual page for details. |
| 1311 | |
| 1312 | |
| 1313 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1314 | <H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1315 | The <STRONG>ncurses</STRONG> library is intended to be BASE-level confor- |
| 1316 | mant with XSI Curses. The EXTENDED XSI Curses functional- |
| 1317 | ity (including color support) is supported. |
| 1318 | |
| 1319 | A small number of local differences (that is, individual |
| 1320 | differences between the XSI Curses and <STRONG>ncurses</STRONG> calls) are |
| 1321 | described in <STRONG>PORTABILITY</STRONG> sections of the library man |
| 1322 | pages. |
| 1323 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1324 | Unlike other implementations, this one checks parameters |
| 1325 | such as pointers to WINDOW structures to ensure they are |
| 1326 | not null. The main reason for providing this behavior is |
| 1327 | to guard against programmer error. The standard interface |
| 1328 | does not provide a way for the library to tell an applica- |
| 1329 | tion which of several possible errors were detected. |
| 1330 | Relying on this (or some other) extension will adversely |
| 1331 | affect the portability of curses applications. |
| 1332 | |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1333 | This implementation also contains several extensions: |
| 1334 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1335 | <STRONG>o</STRONG> The routine <STRONG>has_key</STRONG> is not part of XPG4, nor is it |
| 1336 | present in SVr4. See the <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> manual page |
| 1337 | for details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1338 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1339 | <STRONG>o</STRONG> The routine <STRONG>slk_attr</STRONG> is not part of XPG4, nor is it |
| 1340 | present in SVr4. See the <STRONG><A HREF="curs_slk.3x.html">curs_slk(3x)</A></STRONG> manual page for |
| 1341 | details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1342 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1343 | <STRONG>o</STRONG> The routines <STRONG>getmouse</STRONG>, <STRONG>mousemask</STRONG>, <STRONG>ungetmouse</STRONG>, <STRONG>mousein-</STRONG> |
| 1344 | <STRONG>terval</STRONG>, and <STRONG>wenclose</STRONG> relating to mouse interfacing are |
| 1345 | not part of XPG4, nor are they present in SVr4. See |
| 1346 | the <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG> manual page for details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1347 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1348 | <STRONG>o</STRONG> The routine <STRONG>mcprint</STRONG> was not present in any previous |
| 1349 | curses implementation. See the <STRONG><A HREF="curs_print.3x.html">curs_print(3x)</A></STRONG> manual |
| 1350 | page for details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1351 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1352 | <STRONG>o</STRONG> The routine <STRONG>wresize</STRONG> is not part of XPG4, nor is it |
| 1353 | present in SVr4. See the <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG> manual page for |
| 1354 | details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1355 | |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1356 | <STRONG>o</STRONG> The WINDOW structure's internal details can be hidden |
| 1357 | from application programs. See <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG> for |
| 1358 | the discussion of <STRONG>is_scrollok</STRONG>, etc. |
| 1359 | |
| 1360 | <STRONG>o</STRONG> This implementation can be configured to provide rudi- |
| 1361 | mentary support for multi-threaded applications. See |
| 1362 | <STRONG><A HREF="curs_threads.3x.html">curs_threads(3x)</A></STRONG> for details. |
| 1363 | |
| 1364 | <STRONG>o</STRONG> This implementation can also be configured to provide |
| 1365 | a set of functions which improve the ability to manage |
| 1366 | multiple screens. See <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG> for details. |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1367 | |
| 1368 | In historic curses versions, delays embedded in the capa- |
| 1369 | bilities <STRONG>cr</STRONG>, <STRONG>ind</STRONG>, <STRONG>cub1</STRONG>, <STRONG>ff</STRONG> and <STRONG>tab</STRONG> activated corresponding |
| 1370 | delay bits in the UNIX tty driver. In this implementa- |
| 1371 | tion, all padding is done by sending NUL bytes. This |
| 1372 | method is slightly more expensive, but narrows the inter- |
| 1373 | face to the UNIX kernel significantly and increases the |
| 1374 | package's portability correspondingly. |
| 1375 | |
| 1376 | |
| 1377 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1378 | <H2><a name="h2-NOTES">NOTES</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1379 | The header file <STRONG><curses.h></STRONG> automatically includes the |
| 1380 | header files <STRONG><stdio.h></STRONG> and <STRONG><unctrl.h></STRONG>. |
| 1381 | |
| 1382 | If standard output from a <STRONG>ncurses</STRONG> program is re-directed |
| 1383 | to something which is not a tty, screen updates will be |
| 1384 | directed to standard error. This was an undocumented fea- |
| 1385 | ture of AT&T System V Release 3 curses. |
| 1386 | |
| 1387 | |
| 1388 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1389 | <H2><a name="h2-AUTHORS">AUTHORS</a></H2><PRE> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1390 | Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey. |
| 1391 | Based on pcurses by Pavel Curtis. |
| 1392 | |
| 1393 | |
| 1394 | |
| 1395 | <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> |
| 1396 | </PRE> |
Steve Kondik | ae271bc | 2015-11-15 02:50:53 +0100 | [diff] [blame] | 1397 | <div class="nav"> |
| 1398 | <ul> |
| 1399 | <li><a href="#h2-NAME">NAME</a></li> |
| 1400 | <li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li> |
| 1401 | <li><a href="#h2-DESCRIPTION">DESCRIPTION</a> |
| 1402 | <ul> |
| 1403 | <li><a href="#h3-Initialization">Initialization</a></li> |
| 1404 | <li><a href="#h3-Datatypes">Datatypes</a></li> |
| 1405 | <li><a href="#h3-Environment-variables">Environment variables</a></li> |
| 1406 | <li><a href="#h3-Routine-and-Argument-Names">Routine and Argument Names</a></li> |
| 1407 | <li><a href="#h3-Routine-Name-Index">Routine Name Index</a></li> |
| 1408 | </ul> |
| 1409 | </li> |
| 1410 | <li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li> |
| 1411 | <li><a href="#h2-ENVIRONMENT">ENVIRONMENT</a> |
| 1412 | <ul> |
| 1413 | <li><a href="#h3-BAUDRATE">BAUDRATE</a></li> |
| 1414 | <li><a href="#h3-COLUMNS">COLUMNS</a></li> |
| 1415 | <li><a href="#h3-ESCDELAY">ESCDELAY</a></li> |
| 1416 | <li><a href="#h3-HOME">HOME</a></li> |
| 1417 | <li><a href="#h3-LINES">LINES</a></li> |
| 1418 | <li><a href="#h3-MOUSE_BUTTONS_123">MOUSE_BUTTONS_123</a></li> |
| 1419 | <li><a href="#h3-NCURSES_ASSUMED_COLORS">NCURSES_ASSUMED_COLORS</a></li> |
| 1420 | <li><a href="#h3-NCURSES_CONSOLE2">NCURSES_CONSOLE2</a></li> |
| 1421 | <li><a href="#h3-NCURSES_GPM_TERMS">NCURSES_GPM_TERMS</a></li> |
| 1422 | <li><a href="#h3-NCURSES_NO_HARD_TABS">NCURSES_NO_HARD_TABS</a></li> |
| 1423 | <li><a href="#h3-NCURSES_NO_PADDING">NCURSES_NO_PADDING</a></li> |
| 1424 | <li><a href="#h3-NCURSES_NO_SETBUF">NCURSES_NO_SETBUF</a></li> |
| 1425 | <li><a href="#h3-NCURSES_NO_UTF8_ACS">NCURSES_NO_UTF8_ACS</a></li> |
| 1426 | <li><a href="#h3-NCURSES_TRACE">NCURSES_TRACE</a></li> |
| 1427 | <li><a href="#h3-TERM">TERM</a></li> |
| 1428 | <li><a href="#h3-TERMCAP">TERMCAP</a></li> |
| 1429 | <li><a href="#h3-TERMINFO">TERMINFO</a></li> |
| 1430 | <li><a href="#h3-TERMINFO_DIRS">TERMINFO_DIRS</a></li> |
| 1431 | <li><a href="#h3-TERMPATH">TERMPATH</a></li> |
| 1432 | </ul> |
| 1433 | </li> |
| 1434 | <li><a href="#h2-ALTERNATE-CONFIGURATIONS">ALTERNATE CONFIGURATIONS</a></li> |
| 1435 | <li><a href="#h2-FILES">FILES</a></li> |
| 1436 | <li><a href="#h2-SEE-ALSO">SEE ALSO</a></li> |
| 1437 | <li><a href="#h2-EXTENSIONS">EXTENSIONS</a></li> |
| 1438 | <li><a href="#h2-PORTABILITY">PORTABILITY</a></li> |
| 1439 | <li><a href="#h2-NOTES">NOTES</a></li> |
| 1440 | <li><a href="#h2-AUTHORS">AUTHORS</a></li> |
| 1441 | </ul> |
| 1442 | </div> |
Amit Daniel Kachhap | e6a01f5 | 2011-07-20 11:45:59 +0530 | [diff] [blame] | 1443 | </BODY> |
| 1444 | </HTML> |