1 | '\" t
|
---|
2 | .\"***************************************************************************
|
---|
3 | .\" Copyright (c) 1998-2004,2005 Free Software Foundation, Inc. *
|
---|
4 | .\" *
|
---|
5 | .\" Permission is hereby granted, free of charge, to any person obtaining a *
|
---|
6 | .\" copy of this software and associated documentation files (the *
|
---|
7 | .\" "Software"), to deal in the Software without restriction, including *
|
---|
8 | .\" without limitation the rights to use, copy, modify, merge, publish, *
|
---|
9 | .\" distribute, distribute with modifications, sublicense, and/or sell *
|
---|
10 | .\" copies of the Software, and to permit persons to whom the Software is *
|
---|
11 | .\" furnished to do so, subject to the following conditions: *
|
---|
12 | .\" *
|
---|
13 | .\" The above copyright notice and this permission notice shall be included *
|
---|
14 | .\" in all copies or substantial portions of the Software. *
|
---|
15 | .\" *
|
---|
16 | .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
|
---|
17 | .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
|
---|
18 | .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
|
---|
19 | .\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
|
---|
20 | .\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
|
---|
21 | .\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
|
---|
22 | .\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
|
---|
23 | .\" *
|
---|
24 | .\" Except as contained in this notice, the name(s) of the above copyright *
|
---|
25 | .\" holders shall not be used in advertising or otherwise to promote the *
|
---|
26 | .\" sale, use or other dealings in this Software without prior written *
|
---|
27 | .\" authorization. *
|
---|
28 | .\"***************************************************************************
|
---|
29 | .\"
|
---|
30 | .\" $Id: ncurses.3x,v 1.76 2005/09/03 17:42:29 tom Exp $
|
---|
31 | .hy 0
|
---|
32 | .TH ncurses 3X ""
|
---|
33 | .ds n 5
|
---|
34 | .ds d @TERMINFO@
|
---|
35 | .SH NAME
|
---|
36 | \fBncurses\fR - CRT screen handling and optimization package
|
---|
37 | .SH SYNOPSIS
|
---|
38 | \fB#include <curses.h>\fR
|
---|
39 | .br
|
---|
40 | .SH DESCRIPTION
|
---|
41 | The \fBncurses\fR library routines give the user a terminal-independent method
|
---|
42 | of updating character screens with reasonable optimization. This
|
---|
43 | implementation is ``new curses'' (ncurses) and is the approved replacement for
|
---|
44 | 4.4BSD classic curses, which has been discontinued.
|
---|
45 | .PP
|
---|
46 | The \fBncurses\fR routines emulate the \fBcurses\fR(3X) library of System V
|
---|
47 | Release 4 UNIX, and the XPG4 curses standard (XSI curses) but the \fBncurses\fR
|
---|
48 | library is freely redistributable in source form. Differences from the SVr4
|
---|
49 | curses are summarized under the EXTENSIONS and PORTABILITY sections below and
|
---|
50 | described in detail in the respective EXTENSIONS, PORTABILITY and BUGS sections
|
---|
51 | of individual man pages.
|
---|
52 | .PP
|
---|
53 | A program using these routines must be linked with the \fB-lncurses\fR option,
|
---|
54 | or (if it has been generated) with the debugging library \fB-lncurses_g\fR.
|
---|
55 | (Your system integrator may also have installed these libraries under
|
---|
56 | the names \fB-lcurses\fR and \fB-lcurses_g\fR.)
|
---|
57 | The ncurses_g library generates trace logs (in a file called 'trace' in the
|
---|
58 | current directory) that describe curses actions.
|
---|
59 | .PP
|
---|
60 | The \fBncurses\fR package supports: overall screen, window and pad
|
---|
61 | manipulation; output to windows and pads; reading terminal input; control over
|
---|
62 | terminal and \fBcurses\fR input and output options; environment query
|
---|
63 | routines; color manipulation; use of soft label keys; terminfo capabilities;
|
---|
64 | and access to low-level terminal-manipulation routines.
|
---|
65 | .PP
|
---|
66 | To initialize the routines, the routine \fBinitscr\fR or \fBnewterm\fR
|
---|
67 | must be called before any of the other routines that deal with windows
|
---|
68 | and screens are used. The routine \fBendwin\fR must be called before
|
---|
69 | exiting. To get character-at-a-time input without echoing (most
|
---|
70 | interactive, screen oriented programs want this), the following
|
---|
71 | sequence should be used:
|
---|
72 | .sp
|
---|
73 | \fBinitscr(); cbreak(); noecho();\fR
|
---|
74 | .sp
|
---|
75 | Most programs would additionally use the sequence:
|
---|
76 | .sp
|
---|
77 | \fBnonl();\fR
|
---|
78 | \fBintrflush(stdscr, FALSE);\fR
|
---|
79 | \fBkeypad(stdscr, TRUE);\fR
|
---|
80 | .sp
|
---|
81 | Before a \fBcurses\fR program is run, the tab stops of the terminal
|
---|
82 | should be set and its initialization strings, if defined, must be
|
---|
83 | output. This can be done by executing the \fBtput init\fR command
|
---|
84 | after the shell environment variable \fBTERM\fR has been exported.
|
---|
85 | \fBtset(1)\fR is usually responsible for doing this.
|
---|
86 | [See \fBterminfo\fR(\*n) for further details.]
|
---|
87 | .PP
|
---|
88 | The \fBncurses\fR library permits manipulation of data structures,
|
---|
89 | called \fIwindows\fR, which can be thought of as two-dimensional
|
---|
90 | arrays of characters representing all or part of a CRT screen. A
|
---|
91 | default window called \fBstdscr\fR, which is the size of the terminal
|
---|
92 | screen, is supplied. Others may be created with \fBnewwin\fR.
|
---|
93 | .PP
|
---|
94 | Note that \fBcurses\fR does not handle overlapping windows, that's done by
|
---|
95 | the \fBpanel\fR(3X) library. This means that you can either use
|
---|
96 | \fBstdscr\fR or divide the screen into tiled windows and not using
|
---|
97 | \fBstdscr\fR at all. Mixing the two will result in unpredictable, and
|
---|
98 | undesired, effects.
|
---|
99 | .PP
|
---|
100 | Windows are referred to by variables declared as \fBWINDOW *\fR.
|
---|
101 | These data structures are manipulated with routines described here and
|
---|
102 | elsewhere in the \fBncurses\fR manual pages. Among which the most basic
|
---|
103 | routines are \fBmove\fR and \fBaddch\fR. More general versions of
|
---|
104 | these routines are included with names beginning with \fBw\fR,
|
---|
105 | allowing the user to specify a window. The routines not beginning
|
---|
106 | with \fBw\fR affect \fBstdscr\fR.)
|
---|
107 | .PP
|
---|
108 | After using routines to manipulate a window, \fBrefresh\fR is called,
|
---|
109 | telling \fBcurses\fR to make the user's CRT screen look like
|
---|
110 | \fBstdscr\fR. The characters in a window are actually of type
|
---|
111 | \fBchtype\fR, (character and attribute data) so that other information
|
---|
112 | about the character may also be stored with each character.
|
---|
113 | .PP
|
---|
114 | Special windows called \fIpads\fR may also be manipulated. These are windows
|
---|
115 | which are not constrained to the size of the screen and whose contents need not
|
---|
116 | be completely displayed. See \fBcurs_pad\fR(3X) for more information.
|
---|
117 | .PP
|
---|
118 | In addition to drawing characters on the screen, video attributes and colors
|
---|
119 | may be supported, causing the characters to show up in such modes as
|
---|
120 | underlined, in reverse video, or in color on terminals that support such
|
---|
121 | display enhancements. Line drawing characters may be specified to be output.
|
---|
122 | On input, \fBcurses\fR is also able to translate arrow and function keys that
|
---|
123 | transmit escape sequences into single values. The video attributes, line
|
---|
124 | drawing characters, and input values use names, defined in \fB<curses.h>\fR,
|
---|
125 | such as \fBA_REVERSE\fR, \fBACS_HLINE\fR, and \fBKEY_LEFT\fR.
|
---|
126 | .PP
|
---|
127 | If the environment variables \fBLINES\fR and \fBCOLUMNS\fR are set, or if the
|
---|
128 | program is executing in a window environment, line and column information in
|
---|
129 | the environment will override information read by \fIterminfo\fR. This would
|
---|
130 | effect a program running in an AT&T 630 layer, for example, where the size of a
|
---|
131 | screen is changeable (see \fBENVIRONMENT\fR).
|
---|
132 | .PP
|
---|
133 | If the environment variable \fBTERMINFO\fR is defined, any program using
|
---|
134 | \fBcurses\fR checks for a local terminal definition before checking in the
|
---|
135 | standard place. For example, if \fBTERM\fR is set to \fBatt4424\fR, then the
|
---|
136 | compiled terminal definition is found in
|
---|
137 | .sp
|
---|
138 | \fB\*d/a/att4424\fR.
|
---|
139 | .sp
|
---|
140 | (The \fBa\fR is copied from the first letter of \fBatt4424\fR to avoid
|
---|
141 | creation of huge directories.) However, if \fBTERMINFO\fR is set to
|
---|
142 | \fB$HOME/myterms\fR, \fBcurses\fR first checks
|
---|
143 | .sp
|
---|
144 | \fB$HOME/myterms/a/att4424\fR,
|
---|
145 | .sp
|
---|
146 | and if that fails, it then checks
|
---|
147 | .sp
|
---|
148 | \fB\*d/a/att4424\fR.
|
---|
149 | .sp
|
---|
150 | This is useful for developing experimental definitions or when write
|
---|
151 | permission in \fB\*d\fR is not available.
|
---|
152 | .PP
|
---|
153 | The integer variables \fBLINES\fR and \fBCOLS\fR are defined in
|
---|
154 | \fB<curses.h>\fR and will be filled in by \fBinitscr\fR with the size of the
|
---|
155 | screen. The constants \fBTRUE\fR and \fBFALSE\fR have the values \fB1\fR and
|
---|
156 | \fB0\fR, respectively.
|
---|
157 | .PP
|
---|
158 | The \fBcurses\fR routines also define the \fBWINDOW *\fR variable \fBcurscr\fR
|
---|
159 | which is used for certain low-level operations like clearing and redrawing a
|
---|
160 | screen containing garbage. The \fBcurscr\fR can be used in only a few
|
---|
161 | routines.
|
---|
162 | .
|
---|
163 | .SS Routine and Argument Names
|
---|
164 | Many \fBcurses\fR routines have two or more versions. The routines prefixed
|
---|
165 | with \fBw\fR require a window argument. The routines prefixed with \fBp\fR
|
---|
166 | require a pad argument. Those without a prefix generally use \fBstdscr\fR.
|
---|
167 | .PP
|
---|
168 | The routines prefixed with \fBmv\fR require a \fIy\fR and \fIx\fR
|
---|
169 | coordinate to move to before performing the appropriate action. The
|
---|
170 | \fBmv\fR routines imply a call to \fBmove\fR before the call to the
|
---|
171 | other routine. The coordinate \fIy\fR always refers to the row (of
|
---|
172 | the window), and \fIx\fR always refers to the column. The upper
|
---|
173 | left-hand corner is always (0,0), not (1,1).
|
---|
174 | .PP
|
---|
175 | The routines prefixed with \fBmvw\fR take both a window argument and
|
---|
176 | \fIx\fR and \fIy\fR coordinates. The window argument is always
|
---|
177 | specified before the coordinates.
|
---|
178 | .PP
|
---|
179 | In each case, \fIwin\fR is the window affected, and \fIpad\fR is the
|
---|
180 | pad affected; \fIwin\fR and \fIpad\fR are always pointers to type
|
---|
181 | \fBWINDOW\fR.
|
---|
182 | .PP
|
---|
183 | Option setting routines require a Boolean flag \fIbf\fR with the value
|
---|
184 | \fBTRUE\fR or \fBFALSE\fR; \fIbf\fR is always of type \fBbool\fR. The
|
---|
185 | variables \fIch\fR and \fIattrs\fR below are always of type
|
---|
186 | \fBchtype\fR. The types \fBWINDOW\fR, \fBSCREEN\fR, \fBbool\fR, and
|
---|
187 | \fBchtype\fR are defined in \fB<curses.h>\fR. The type \fBTERMINAL\fR
|
---|
188 | is defined in \fB<term.h>\fR. All other arguments are integers.
|
---|
189 | .SS Routine Name Index
|
---|
190 | The following table lists each \fBcurses\fR routine and the name of
|
---|
191 | the manual page on which it is described. Routines flagged with `*'
|
---|
192 | are ncurses-specific, not described by XPG4 or present in SVr4.
|
---|
193 | .PP
|
---|
194 | .TS
|
---|
195 | center tab(/);
|
---|
196 | l l
|
---|
197 | l l .
|
---|
198 | \fBcurses\fR Routine Name/Manual Page Name
|
---|
199 | =
|
---|
200 | COLOR_PAIR/\fBcurs_color\fR(3X)
|
---|
201 | PAIR_NUMBER/\fBcurs_attr\fR(3X)
|
---|
202 | _nc_tracebits/\fBcurs_trace\fR(3X)*
|
---|
203 | _traceattr/\fBcurs_trace\fR(3X)*
|
---|
204 | _traceattr2/\fBcurs_trace\fR(3X)*
|
---|
205 | _tracechar/\fBcurs_trace\fR(3X)*
|
---|
206 | _tracechtype/\fBcurs_trace\fR(3X)*
|
---|
207 | _tracechtype2/\fBcurs_trace\fR(3X)*
|
---|
208 | _tracedump/\fBcurs_trace\fR(3X)*
|
---|
209 | _tracef/\fBcurs_trace\fR(3X)*
|
---|
210 | _tracemouse/\fBcurs_trace\fR(3X)*
|
---|
211 | add_wch/\fBcurs_add_wch\fR(3X)
|
---|
212 | add_wchnstr/\fBcurs_add_wchstr\fR(3X)
|
---|
213 | add_wchstr/\fBcurs_add_wchstr\fR(3X)
|
---|
214 | addch/\fBcurs_addch\fR(3X)
|
---|
215 | addchnstr/\fBcurs_addchstr\fR(3X)
|
---|
216 | addchstr/\fBcurs_addchstr\fR(3X)
|
---|
217 | addnstr/\fBcurs_addstr\fR(3X)
|
---|
218 | addnwstr/\fBcurs_addwstr\fR(3X)
|
---|
219 | addstr/\fBcurs_addstr\fR(3X)
|
---|
220 | addwstr/\fBcurs_addwstr\fR(3X)
|
---|
221 | assume_default_colors/\fBdefault_colors\fR(3X)*
|
---|
222 | attr_get/\fBcurs_attr\fR(3X)
|
---|
223 | attr_off/\fBcurs_attr\fR(3X)
|
---|
224 | attr_on/\fBcurs_attr\fR(3X)
|
---|
225 | attr_set/\fBcurs_attr\fR(3X)
|
---|
226 | attroff/\fBcurs_attr\fR(3X)
|
---|
227 | attron/\fBcurs_attr\fR(3X)
|
---|
228 | attrset/\fBcurs_attr\fR(3X)
|
---|
229 | baudrate/\fBcurs_termattrs\fR(3X)
|
---|
230 | beep/\fBcurs_beep\fR(3X)
|
---|
231 | bkgd/\fBcurs_bkgd\fR(3X)
|
---|
232 | bkgdset/\fBcurs_bkgd\fR(3X)
|
---|
233 | bkgrnd/\fBcurs_bkgrnd\fR(3X)
|
---|
234 | bkgrndset/\fBcurs_bkgrnd\fR(3X)
|
---|
235 | border/\fBcurs_border\fR(3X)
|
---|
236 | border_set/\fBcurs_border_set\fR(3X)
|
---|
237 | box/\fBcurs_border\fR(3X)
|
---|
238 | box_set/\fBcurs_border_set\fR(3X)
|
---|
239 | can_change_color/\fBcurs_color\fR(3X)
|
---|
240 | cbreak/\fBcurs_inopts\fR(3X)
|
---|
241 | chgat/\fBcurs_attr\fR(3X)
|
---|
242 | clear/\fBcurs_clear\fR(3X)
|
---|
243 | clearok/\fBcurs_outopts\fR(3X)
|
---|
244 | clrtobot/\fBcurs_clear\fR(3X)
|
---|
245 | clrtoeol/\fBcurs_clear\fR(3X)
|
---|
246 | color_content/\fBcurs_color\fR(3X)
|
---|
247 | color_set/\fBcurs_attr\fR(3X)
|
---|
248 | copywin/\fBcurs_overlay\fR(3X)
|
---|
249 | curs_set/\fBcurs_kernel\fR(3X)
|
---|
250 | curses_version/\fBcurs_extend\fR(3X)*
|
---|
251 | def_prog_mode/\fBcurs_kernel\fR(3X)
|
---|
252 | def_shell_mode/\fBcurs_kernel\fR(3X)
|
---|
253 | define_key/\fBdefine_key\fR(3X)*
|
---|
254 | del_curterm/\fBcurs_terminfo\fR(3X)
|
---|
255 | delay_output/\fBcurs_util\fR(3X)
|
---|
256 | delch/\fBcurs_delch\fR(3X)
|
---|
257 | deleteln/\fBcurs_deleteln\fR(3X)
|
---|
258 | delscreen/\fBcurs_initscr\fR(3X)
|
---|
259 | delwin/\fBcurs_window\fR(3X)
|
---|
260 | derwin/\fBcurs_window\fR(3X)
|
---|
261 | doupdate/\fBcurs_refresh\fR(3X)
|
---|
262 | dupwin/\fBcurs_window\fR(3X)
|
---|
263 | echo/\fBcurs_inopts\fR(3X)
|
---|
264 | echo_wchar/\fBcurs_add_wch\fR(3X)
|
---|
265 | echochar/\fBcurs_addch\fR(3X)
|
---|
266 | endwin/\fBcurs_initscr\fR(3X)
|
---|
267 | erase/\fBcurs_clear\fR(3X)
|
---|
268 | erasechar/\fBcurs_termattrs\fR(3X)
|
---|
269 | erasewchar/\fBcurs_termattrs\fR(3X)
|
---|
270 | filter/\fBcurs_util\fR(3X)
|
---|
271 | flash/\fBcurs_beep\fR(3X)
|
---|
272 | flushinp/\fBcurs_util\fR(3X)
|
---|
273 | get_wch/\fBcurs_get_wch\fR(3X)
|
---|
274 | get_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
275 | getbegyx/\fBcurs_getyx\fR(3X)
|
---|
276 | getbkgd/\fBcurs_bkgd\fR(3X)
|
---|
277 | getbkgrnd/\fBcurs_bkgrnd\fR(3X)
|
---|
278 | getcchar/\fBcurs_getcchar\fR(3X)
|
---|
279 | getch/\fBcurs_getch\fR(3X)
|
---|
280 | getmaxyx/\fBcurs_getyx\fR(3X)
|
---|
281 | getmouse/\fBcurs_mouse\fR(3X)*
|
---|
282 | getn_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
283 | getnstr/\fBcurs_getstr\fR(3X)
|
---|
284 | getparyx/\fBcurs_getyx\fR(3X)
|
---|
285 | getstr/\fBcurs_getstr\fR(3X)
|
---|
286 | getsyx/\fBcurs_kernel\fR(3X)
|
---|
287 | getwin/\fBcurs_util\fR(3X)
|
---|
288 | getyx/\fBcurs_getyx\fR(3X)
|
---|
289 | halfdelay/\fBcurs_inopts\fR(3X)
|
---|
290 | has_colors/\fBcurs_color\fR(3X)
|
---|
291 | has_ic/\fBcurs_termattrs\fR(3X)
|
---|
292 | has_il/\fBcurs_termattrs\fR(3X)
|
---|
293 | has_key/\fBcurs_getch\fR(3X)*
|
---|
294 | hline/\fBcurs_border\fR(3X)
|
---|
295 | hline_set/\fBcurs_border_set\fR(3X)
|
---|
296 | idcok/\fBcurs_outopts\fR(3X)
|
---|
297 | idlok/\fBcurs_outopts\fR(3X)
|
---|
298 | immedok/\fBcurs_outopts\fR(3X)
|
---|
299 | in_wch/\fBcurs_in_wch\fR(3X)
|
---|
300 | in_wchnstr/\fBcurs_in_wchstr\fR(3X)
|
---|
301 | in_wchstr/\fBcurs_in_wchstr\fR(3X)
|
---|
302 | inch/\fBcurs_inch\fR(3X)
|
---|
303 | inchnstr/\fBcurs_inchstr\fR(3X)
|
---|
304 | inchstr/\fBcurs_inchstr\fR(3X)
|
---|
305 | init_color/\fBcurs_color\fR(3X)
|
---|
306 | init_pair/\fBcurs_color\fR(3X)
|
---|
307 | initscr/\fBcurs_initscr\fR(3X)
|
---|
308 | innstr/\fBcurs_instr\fR(3X)
|
---|
309 | innwstr/\fBcurs_inwstr\fR(3X)
|
---|
310 | ins_nwstr/\fBcurs_ins_wstr\fR(3X)
|
---|
311 | ins_wch/\fBcurs_ins_wch\fR(3X)
|
---|
312 | ins_wstr/\fBcurs_ins_wstr\fR(3X)
|
---|
313 | insch/\fBcurs_insch\fR(3X)
|
---|
314 | insdelln/\fBcurs_deleteln\fR(3X)
|
---|
315 | insertln/\fBcurs_deleteln\fR(3X)
|
---|
316 | insnstr/\fBcurs_insstr\fR(3X)
|
---|
317 | insstr/\fBcurs_insstr\fR(3X)
|
---|
318 | instr/\fBcurs_instr\fR(3X)
|
---|
319 | intrflush/\fBcurs_inopts\fR(3X)
|
---|
320 | inwstr/\fBcurs_inwstr\fR(3X)
|
---|
321 | is_linetouched/\fBcurs_touch\fR(3X)
|
---|
322 | is_wintouched/\fBcurs_touch\fR(3X)
|
---|
323 | isendwin/\fBcurs_initscr\fR(3X)
|
---|
324 | key_defined/\fBkey_defined\fR(3X)*
|
---|
325 | key_name/\fBcurs_util\fR(3X)
|
---|
326 | keybound/\fBkeybound\fR(3X)*
|
---|
327 | keyname/\fBcurs_util\fR(3X)
|
---|
328 | keyok/\fBkeyok\fR(3X)*
|
---|
329 | keypad/\fBcurs_inopts\fR(3X)
|
---|
330 | killchar/\fBcurs_termattrs\fR(3X)
|
---|
331 | killwchar/\fBcurs_termattrs\fR(3X)
|
---|
332 | leaveok/\fBcurs_outopts\fR(3X)
|
---|
333 | longname/\fBcurs_termattrs\fR(3X)
|
---|
334 | mcprint/\fBcurs_print\fR(3X)*
|
---|
335 | meta/\fBcurs_inopts\fR(3X)
|
---|
336 | mouse_trafo/\fBcurs_mouse\fR(3X)*
|
---|
337 | mouseinterval/\fBcurs_mouse\fR(3X)*
|
---|
338 | mousemask/\fBcurs_mouse\fR(3X)*
|
---|
339 | move/\fBcurs_move\fR(3X)
|
---|
340 | mvadd_wch/\fBcurs_add_wch\fR(3X)
|
---|
341 | mvadd_wchnstr/\fBcurs_add_wchstr\fR(3X)
|
---|
342 | mvadd_wchstr/\fBcurs_add_wchstr\fR(3X)
|
---|
343 | mvaddch/\fBcurs_addch\fR(3X)
|
---|
344 | mvaddchnstr/\fBcurs_addchstr\fR(3X)
|
---|
345 | mvaddchstr/\fBcurs_addchstr\fR(3X)
|
---|
346 | mvaddnstr/\fBcurs_addstr\fR(3X)
|
---|
347 | mvaddnwstr/\fBcurs_addwstr\fR(3X)
|
---|
348 | mvaddstr/\fBcurs_addstr\fR(3X)
|
---|
349 | mvaddwstr/\fBcurs_addwstr\fR(3X)
|
---|
350 | mvchgat/\fBcurs_attr\fR(3X)
|
---|
351 | mvcur/\fBcurs_terminfo\fR(3X)
|
---|
352 | mvdelch/\fBcurs_delch\fR(3X)
|
---|
353 | mvderwin/\fBcurs_window\fR(3X)
|
---|
354 | mvget_wch/\fBcurs_get_wch\fR(3X)
|
---|
355 | mvget_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
356 | mvgetch/\fBcurs_getch\fR(3X)
|
---|
357 | mvgetn_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
358 | mvgetnstr/\fBcurs_getstr\fR(3X)
|
---|
359 | mvgetstr/\fBcurs_getstr\fR(3X)
|
---|
360 | mvhline/\fBcurs_border\fR(3X)
|
---|
361 | mvhline_set/\fBcurs_border_set\fR(3X)
|
---|
362 | mvin_wch/\fBcurs_in_wch\fR(3X)
|
---|
363 | mvin_wchnstr/\fBcurs_in_wchstr\fR(3X)
|
---|
364 | mvin_wchstr/\fBcurs_in_wchstr\fR(3X)
|
---|
365 | mvinch/\fBcurs_inch\fR(3X)
|
---|
366 | mvinchnstr/\fBcurs_inchstr\fR(3X)
|
---|
367 | mvinchstr/\fBcurs_inchstr\fR(3X)
|
---|
368 | mvinnstr/\fBcurs_instr\fR(3X)
|
---|
369 | mvinnwstr/\fBcurs_inwstr\fR(3X)
|
---|
370 | mvins_nwstr/\fBcurs_ins_wstr\fR(3X)
|
---|
371 | mvins_wch/\fBcurs_ins_wch\fR(3X)
|
---|
372 | mvins_wstr/\fBcurs_ins_wstr\fR(3X)
|
---|
373 | mvinsch/\fBcurs_insch\fR(3X)
|
---|
374 | mvinsnstr/\fBcurs_insstr\fR(3X)
|
---|
375 | mvinsstr/\fBcurs_insstr\fR(3X)
|
---|
376 | mvinstr/\fBcurs_instr\fR(3X)
|
---|
377 | mvinwstr/\fBcurs_inwstr\fR(3X)
|
---|
378 | mvprintw/\fBcurs_printw\fR(3X)
|
---|
379 | mvscanw/\fBcurs_scanw\fR(3X)
|
---|
380 | mvvline/\fBcurs_border\fR(3X)
|
---|
381 | mvvline_set/\fBcurs_border_set\fR(3X)
|
---|
382 | mvwadd_wch/\fBcurs_add_wch\fR(3X)
|
---|
383 | mvwadd_wchnstr/\fBcurs_add_wchstr\fR(3X)
|
---|
384 | mvwadd_wchstr/\fBcurs_add_wchstr\fR(3X)
|
---|
385 | mvwaddch/\fBcurs_addch\fR(3X)
|
---|
386 | mvwaddchnstr/\fBcurs_addchstr\fR(3X)
|
---|
387 | mvwaddchstr/\fBcurs_addchstr\fR(3X)
|
---|
388 | mvwaddnstr/\fBcurs_addstr\fR(3X)
|
---|
389 | mvwaddnwstr/\fBcurs_addwstr\fR(3X)
|
---|
390 | mvwaddstr/\fBcurs_addstr\fR(3X)
|
---|
391 | mvwaddwstr/\fBcurs_addwstr\fR(3X)
|
---|
392 | mvwchgat/\fBcurs_attr\fR(3X)
|
---|
393 | mvwdelch/\fBcurs_delch\fR(3X)
|
---|
394 | mvwget_wch/\fBcurs_get_wch\fR(3X)
|
---|
395 | mvwget_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
396 | mvwgetch/\fBcurs_getch\fR(3X)
|
---|
397 | mvwgetn_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
398 | mvwgetnstr/\fBcurs_getstr\fR(3X)
|
---|
399 | mvwgetstr/\fBcurs_getstr\fR(3X)
|
---|
400 | mvwhline/\fBcurs_border\fR(3X)
|
---|
401 | mvwhline_set/\fBcurs_border_set\fR(3X)
|
---|
402 | mvwin/\fBcurs_window\fR(3X)
|
---|
403 | mvwin_wch/\fBcurs_in_wch\fR(3X)
|
---|
404 | mvwin_wchnstr/\fBcurs_in_wchstr\fR(3X)
|
---|
405 | mvwin_wchstr/\fBcurs_in_wchstr\fR(3X)
|
---|
406 | mvwinch/\fBcurs_inch\fR(3X)
|
---|
407 | mvwinchnstr/\fBcurs_inchstr\fR(3X)
|
---|
408 | mvwinchstr/\fBcurs_inchstr\fR(3X)
|
---|
409 | mvwinnstr/\fBcurs_instr\fR(3X)
|
---|
410 | mvwinnwstr/\fBcurs_inwstr\fR(3X)
|
---|
411 | mvwins_nwstr/\fBcurs_ins_wstr\fR(3X)
|
---|
412 | mvwins_wch/\fBcurs_ins_wch\fR(3X)
|
---|
413 | mvwins_wstr/\fBcurs_ins_wstr\fR(3X)
|
---|
414 | mvwinsch/\fBcurs_insch\fR(3X)
|
---|
415 | mvwinsnstr/\fBcurs_insstr\fR(3X)
|
---|
416 | mvwinsstr/\fBcurs_insstr\fR(3X)
|
---|
417 | mvwinstr/\fBcurs_instr\fR(3X)
|
---|
418 | mvwinwstr/\fBcurs_inwstr\fR(3X)
|
---|
419 | mvwprintw/\fBcurs_printw\fR(3X)
|
---|
420 | mvwscanw/\fBcurs_scanw\fR(3X)
|
---|
421 | mvwvline/\fBcurs_border\fR(3X)
|
---|
422 | mvwvline_set/\fBcurs_border_set\fR(3X)
|
---|
423 | napms/\fBcurs_kernel\fR(3X)
|
---|
424 | newpad/\fBcurs_pad\fR(3X)
|
---|
425 | newterm/\fBcurs_initscr\fR(3X)
|
---|
426 | newwin/\fBcurs_window\fR(3X)
|
---|
427 | nl/\fBcurs_outopts\fR(3X)
|
---|
428 | nocbreak/\fBcurs_inopts\fR(3X)
|
---|
429 | nodelay/\fBcurs_inopts\fR(3X)
|
---|
430 | noecho/\fBcurs_inopts\fR(3X)
|
---|
431 | nonl/\fBcurs_outopts\fR(3X)
|
---|
432 | noqiflush/\fBcurs_inopts\fR(3X)
|
---|
433 | noraw/\fBcurs_inopts\fR(3X)
|
---|
434 | notimeout/\fBcurs_inopts\fR(3X)
|
---|
435 | overlay/\fBcurs_overlay\fR(3X)
|
---|
436 | overwrite/\fBcurs_overlay\fR(3X)
|
---|
437 | pair_content/\fBcurs_color\fR(3X)
|
---|
438 | pechochar/\fBcurs_pad\fR(3X)
|
---|
439 | pnoutrefresh/\fBcurs_pad\fR(3X)
|
---|
440 | prefresh/\fBcurs_pad\fR(3X)
|
---|
441 | printw/\fBcurs_printw\fR(3X)
|
---|
442 | putp/\fBcurs_terminfo\fR(3X)
|
---|
443 | putwin/\fBcurs_util\fR(3X)
|
---|
444 | qiflush/\fBcurs_inopts\fR(3X)
|
---|
445 | raw/\fBcurs_inopts\fR(3X)
|
---|
446 | redrawwin/\fBcurs_refresh\fR(3X)
|
---|
447 | refresh/\fBcurs_refresh\fR(3X)
|
---|
448 | reset_prog_mode/\fBcurs_kernel\fR(3X)
|
---|
449 | reset_shell_mode/\fBcurs_kernel\fR(3X)
|
---|
450 | resetty/\fBcurs_kernel\fR(3X)
|
---|
451 | resizeterm/\fBresizeterm\fR(3X)*
|
---|
452 | restartterm/\fBcurs_terminfo\fR(3X)
|
---|
453 | ripoffline/\fBcurs_kernel\fR(3X)
|
---|
454 | savetty/\fBcurs_kernel\fR(3X)
|
---|
455 | scanw/\fBcurs_scanw\fR(3X)
|
---|
456 | scr_dump/\fBcurs_scr_dump\fR(3X)
|
---|
457 | scr_init/\fBcurs_scr_dump\fR(3X)
|
---|
458 | scr_restore/\fBcurs_scr_dump\fR(3X)
|
---|
459 | scr_set/\fBcurs_scr_dump\fR(3X)
|
---|
460 | scrl/\fBcurs_scroll\fR(3X)
|
---|
461 | scroll/\fBcurs_scroll\fR(3X)
|
---|
462 | scrollok/\fBcurs_outopts\fR(3X)
|
---|
463 | set_curterm/\fBcurs_terminfo\fR(3X)
|
---|
464 | set_term/\fBcurs_initscr\fR(3X)
|
---|
465 | setcchar/\fBcurs_getcchar\fR(3X)
|
---|
466 | setscrreg/\fBcurs_outopts\fR(3X)
|
---|
467 | setsyx/\fBcurs_kernel\fR(3X)
|
---|
468 | setterm/\fBcurs_terminfo\fR(3X)
|
---|
469 | setupterm/\fBcurs_terminfo\fR(3X)
|
---|
470 | slk_attr/\fBcurs_slk\fR(3X)*
|
---|
471 | slk_attr_off/\fBcurs_slk\fR(3X)
|
---|
472 | slk_attr_on/\fBcurs_slk\fR(3X)
|
---|
473 | slk_attr_set/\fBcurs_slk\fR(3X)
|
---|
474 | slk_attroff/\fBcurs_slk\fR(3X)
|
---|
475 | slk_attron/\fBcurs_slk\fR(3X)
|
---|
476 | slk_attrset/\fBcurs_slk\fR(3X)
|
---|
477 | slk_clear/\fBcurs_slk\fR(3X)
|
---|
478 | slk_color/\fBcurs_slk\fR(3X)
|
---|
479 | slk_init/\fBcurs_slk\fR(3X)
|
---|
480 | slk_label/\fBcurs_slk\fR(3X)
|
---|
481 | slk_noutrefresh/\fBcurs_slk\fR(3X)
|
---|
482 | slk_refresh/\fBcurs_slk\fR(3X)
|
---|
483 | slk_restore/\fBcurs_slk\fR(3X)
|
---|
484 | slk_set/\fBcurs_slk\fR(3X)
|
---|
485 | slk_touch/\fBcurs_slk\fR(3X)
|
---|
486 | standend/\fBcurs_attr\fR(3X)
|
---|
487 | standout/\fBcurs_attr\fR(3X)
|
---|
488 | start_color/\fBcurs_color\fR(3X)
|
---|
489 | subpad/\fBcurs_pad\fR(3X)
|
---|
490 | subwin/\fBcurs_window\fR(3X)
|
---|
491 | syncok/\fBcurs_window\fR(3X)
|
---|
492 | term_attrs/\fBcurs_termattrs\fR(3X)
|
---|
493 | termattrs/\fBcurs_termattrs\fR(3X)
|
---|
494 | termname/\fBcurs_termattrs\fR(3X)
|
---|
495 | tgetent/\fBcurs_termcap\fR(3X)
|
---|
496 | tgetflag/\fBcurs_termcap\fR(3X)
|
---|
497 | tgetnum/\fBcurs_termcap\fR(3X)
|
---|
498 | tgetstr/\fBcurs_termcap\fR(3X)
|
---|
499 | tgoto/\fBcurs_termcap\fR(3X)
|
---|
500 | tigetflag/\fBcurs_terminfo\fR(3X)
|
---|
501 | tigetnum/\fBcurs_terminfo\fR(3X)
|
---|
502 | tigetstr/\fBcurs_terminfo\fR(3X)
|
---|
503 | timeout/\fBcurs_inopts\fR(3X)
|
---|
504 | touchline/\fBcurs_touch\fR(3X)
|
---|
505 | touchwin/\fBcurs_touch\fR(3X)
|
---|
506 | tparm/\fBcurs_terminfo\fR(3X)
|
---|
507 | tputs/\fBcurs_termcap\fR(3X)
|
---|
508 | tputs/\fBcurs_terminfo\fR(3X)
|
---|
509 | trace/\fBcurs_trace\fR(3X)*
|
---|
510 | typeahead/\fBcurs_inopts\fR(3X)
|
---|
511 | unctrl/\fBcurs_util\fR(3X)
|
---|
512 | unget_wch/\fBcurs_get_wch\fR(3X)
|
---|
513 | ungetch/\fBcurs_getch\fR(3X)
|
---|
514 | ungetmouse/\fBcurs_mouse\fR(3X)*
|
---|
515 | untouchwin/\fBcurs_touch\fR(3X)
|
---|
516 | use_default_colors/\fBdefault_colors\fR(3X)*
|
---|
517 | use_env/\fBcurs_util\fR(3X)
|
---|
518 | use_extended_names/\fBcurs_extend\fR(3X)*
|
---|
519 | vid_attr/\fBcurs_terminfo\fR(3X)
|
---|
520 | vid_puts/\fBcurs_terminfo\fR(3X)
|
---|
521 | vidattr/\fBcurs_terminfo\fR(3X)
|
---|
522 | vidputs/\fBcurs_terminfo\fR(3X)
|
---|
523 | vline/\fBcurs_border\fR(3X)
|
---|
524 | vline_set/\fBcurs_border_set\fR(3X)
|
---|
525 | vw_printw/\fBcurs_printw\fR(3X)
|
---|
526 | vw_scanw/\fBcurs_scanw\fR(3X)
|
---|
527 | vwprintw/\fBcurs_printw\fR(3X)
|
---|
528 | vwscanw/\fBcurs_scanw\fR(3X)
|
---|
529 | wadd_wch/\fBcurs_add_wch\fR(3X)
|
---|
530 | wadd_wchnstr/\fBcurs_add_wchstr\fR(3X)
|
---|
531 | wadd_wchstr/\fBcurs_add_wchstr\fR(3X)
|
---|
532 | waddch/\fBcurs_addch\fR(3X)
|
---|
533 | waddchnstr/\fBcurs_addchstr\fR(3X)
|
---|
534 | waddchstr/\fBcurs_addchstr\fR(3X)
|
---|
535 | waddnstr/\fBcurs_addstr\fR(3X)
|
---|
536 | waddnwstr/\fBcurs_addwstr\fR(3X)
|
---|
537 | waddstr/\fBcurs_addstr\fR(3X)
|
---|
538 | waddwstr/\fBcurs_addwstr\fR(3X)
|
---|
539 | wattr_get/\fBcurs_attr\fR(3X)
|
---|
540 | wattr_off/\fBcurs_attr\fR(3X)
|
---|
541 | wattr_on/\fBcurs_attr\fR(3X)
|
---|
542 | wattr_set/\fBcurs_attr\fR(3X)
|
---|
543 | wattroff/\fBcurs_attr\fR(3X)
|
---|
544 | wattron/\fBcurs_attr\fR(3X)
|
---|
545 | wattrset/\fBcurs_attr\fR(3X)
|
---|
546 | wbkgd/\fBcurs_bkgd\fR(3X)
|
---|
547 | wbkgdset/\fBcurs_bkgd\fR(3X)
|
---|
548 | wbkgrnd/\fBcurs_bkgrnd\fR(3X)
|
---|
549 | wbkgrndset/\fBcurs_bkgrnd\fR(3X)
|
---|
550 | wborder/\fBcurs_border\fR(3X)
|
---|
551 | wborder_set/\fBcurs_border_set\fR(3X)
|
---|
552 | wchgat/\fBcurs_attr\fR(3X)
|
---|
553 | wclear/\fBcurs_clear\fR(3X)
|
---|
554 | wclrtobot/\fBcurs_clear\fR(3X)
|
---|
555 | wclrtoeol/\fBcurs_clear\fR(3X)
|
---|
556 | wcolor_set/\fBcurs_attr\fR(3X)
|
---|
557 | wcursyncup/\fBcurs_window\fR(3X)
|
---|
558 | wdelch/\fBcurs_delch\fR(3X)
|
---|
559 | wdeleteln/\fBcurs_deleteln\fR(3X)
|
---|
560 | wecho_wchar/\fBcurs_add_wch\fR(3X)
|
---|
561 | wechochar/\fBcurs_addch\fR(3X)
|
---|
562 | wenclose/\fBcurs_mouse\fR(3X)*
|
---|
563 | werase/\fBcurs_clear\fR(3X)
|
---|
564 | wget_wch/\fBcurs_get_wch\fR(3X)
|
---|
565 | wget_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
566 | wgetbkgrnd/\fBcurs_bkgrnd\fR(3X)
|
---|
567 | wgetch/\fBcurs_getch\fR(3X)
|
---|
568 | wgetn_wstr/\fBcurs_get_wstr\fR(3X)
|
---|
569 | wgetnstr/\fBcurs_getstr\fR(3X)
|
---|
570 | wgetstr/\fBcurs_getstr\fR(3X)
|
---|
571 | whline/\fBcurs_border\fR(3X)
|
---|
572 | whline_set/\fBcurs_border_set\fR(3X)
|
---|
573 | win_wch/\fBcurs_in_wch\fR(3X)
|
---|
574 | win_wchnstr/\fBcurs_in_wchstr\fR(3X)
|
---|
575 | win_wchstr/\fBcurs_in_wchstr\fR(3X)
|
---|
576 | winch/\fBcurs_inch\fR(3X)
|
---|
577 | winchnstr/\fBcurs_inchstr\fR(3X)
|
---|
578 | winchstr/\fBcurs_inchstr\fR(3X)
|
---|
579 | winnstr/\fBcurs_instr\fR(3X)
|
---|
580 | winnwstr/\fBcurs_inwstr\fR(3X)
|
---|
581 | wins_nwstr/\fBcurs_ins_wstr\fR(3X)
|
---|
582 | wins_wch/\fBcurs_ins_wch\fR(3X)
|
---|
583 | wins_wstr/\fBcurs_ins_wstr\fR(3X)
|
---|
584 | winsch/\fBcurs_insch\fR(3X)
|
---|
585 | winsdelln/\fBcurs_deleteln\fR(3X)
|
---|
586 | winsertln/\fBcurs_deleteln\fR(3X)
|
---|
587 | winsnstr/\fBcurs_insstr\fR(3X)
|
---|
588 | winsstr/\fBcurs_insstr\fR(3X)
|
---|
589 | winstr/\fBcurs_instr\fR(3X)
|
---|
590 | winwstr/\fBcurs_inwstr\fR(3X)
|
---|
591 | wmouse_trafo/\fBcurs_mouse\fR(3X)*
|
---|
592 | wmove/\fBcurs_move\fR(3X)
|
---|
593 | wnoutrefresh/\fBcurs_refresh\fR(3X)
|
---|
594 | wprintw/\fBcurs_printw\fR(3X)
|
---|
595 | wredrawln/\fBcurs_refresh\fR(3X)
|
---|
596 | wrefresh/\fBcurs_refresh\fR(3X)
|
---|
597 | wresize/\fBwresize\fR(3X)*
|
---|
598 | wscanw/\fBcurs_scanw\fR(3X)
|
---|
599 | wscrl/\fBcurs_scroll\fR(3X)
|
---|
600 | wsetscrreg/\fBcurs_outopts\fR(3X)
|
---|
601 | wstandend/\fBcurs_attr\fR(3X)
|
---|
602 | wstandout/\fBcurs_attr\fR(3X)
|
---|
603 | wsyncdown/\fBcurs_window\fR(3X)
|
---|
604 | wsyncup/\fBcurs_window\fR(3X)
|
---|
605 | wtimeout/\fBcurs_inopts\fR(3X)
|
---|
606 | wtouchln/\fBcurs_touch\fR(3X)
|
---|
607 | wunctrl/\fBcurs_util\fR(3X)
|
---|
608 | wvline/\fBcurs_border\fR(3X)
|
---|
609 | wvline_set/\fBcurs_border_set\fR(3X)
|
---|
610 | .TE
|
---|
611 | .SH RETURN VALUE
|
---|
612 | Routines that return an integer return \fBERR\fR upon failure and an
|
---|
613 | integer value other than \fBERR\fR upon successful completion, unless
|
---|
614 | otherwise noted in the routine descriptions.
|
---|
615 | .PP
|
---|
616 | All macros return the value of the \fBw\fR version, except \fBsetscrreg\fR,
|
---|
617 | \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and \fBgetmaxyx\fR. The return
|
---|
618 | values of \fBsetscrreg\fR, \fBwsetscrreg\fR, \fBgetyx\fR, \fBgetbegyx\fR, and
|
---|
619 | \fBgetmaxyx\fR are undefined (i.e., these should not be used as the
|
---|
620 | right-hand side of assignment statements).
|
---|
621 | .PP
|
---|
622 | Routines that return pointers return \fBNULL\fR on error.
|
---|
623 | .SH ENVIRONMENT
|
---|
624 | The following environment symbols are useful for customizing the
|
---|
625 | runtime behavior of the \fBncurses\fR library. The most important
|
---|
626 | ones have been already discussed in detail.
|
---|
627 | .TP 5
|
---|
628 | BAUDRATE
|
---|
629 | The debugging library checks this environment symbol when the application
|
---|
630 | has redirected output to a file.
|
---|
631 | The symbol's numeric value is used for the baudrate.
|
---|
632 | If no value is found, \fBncurses\fR uses 9600.
|
---|
633 | This allows testers to construct repeatable test-cases
|
---|
634 | that take into account costs that depend on baudrate.
|
---|
635 | .TP 5
|
---|
636 | CC
|
---|
637 | When set, change occurrences of the command_character
|
---|
638 | (i.e., the \fBcmdch\fP capability)
|
---|
639 | of the loaded terminfo entries to the value of this symbol.
|
---|
640 | Very few terminfo entries provide this feature.
|
---|
641 | .TP 5
|
---|
642 | COLUMNS
|
---|
643 | Specify the width of the screen in characters.
|
---|
644 | Applications running in a windowing environment usually are able to
|
---|
645 | obtain the width of the window in which they are executing.
|
---|
646 | If neither the \fBCOLUMNS\fP value nor the terminal's screen size is available,
|
---|
647 | \fBncurses\fR uses the size which may be specified in the terminfo database
|
---|
648 | (i.e., the \fBcols\fR capability).
|
---|
649 | .IP
|
---|
650 | It is important that your application use a correct size for the screen.
|
---|
651 | This is not always possible because your application may be
|
---|
652 | running on a host which does not honor NAWS (Negotiations About Window
|
---|
653 | Size), or because you are temporarily running as another user.
|
---|
654 | However, setting \fBCOLUMNS\fP and/or \fBLINES\fP overrides the library's
|
---|
655 | use of the screen size obtained from the operating system.
|
---|
656 | .IP
|
---|
657 | Either \fBCOLUMNS\fP or \fBLINES\fP symbols may be specified independently.
|
---|
658 | This is mainly useful to circumvent legacy misfeatures of terminal descriptions,
|
---|
659 | e.g., xterm which commonly specifies a 65 line screen.
|
---|
660 | For best results, \fBlines\fR and \fBcols\fR should not be specified in
|
---|
661 | a terminal description for terminals which are run as emulations.
|
---|
662 | .IP
|
---|
663 | Use the \fBuse_env\fR function to disable all use of external environment
|
---|
664 | (including system calls) to determine the screen size.
|
---|
665 | .TP 5
|
---|
666 | ESCDELAY
|
---|
667 | Specifies the total time, in milliseconds, for which ncurses will
|
---|
668 | await a character sequence, e.g., a function key.
|
---|
669 | The default value, 1000 milliseconds, is enough for most uses.
|
---|
670 | However, it is made a variable to accommodate unusual applications.
|
---|
671 | .IP
|
---|
672 | The most common instance where you may wish to change this value
|
---|
673 | is to work with slow hosts, e.g., running on a network.
|
---|
674 | If the host cannot read characters rapidly enough, it will have the same
|
---|
675 | effect as if the terminal did not send characters rapidly enough.
|
---|
676 | The library will still see a timeout.
|
---|
677 | .IP
|
---|
678 | Note that xterm mouse events are built up from character sequences
|
---|
679 | received from the xterm.
|
---|
680 | If your application makes heavy use of multiple-clicking, you may
|
---|
681 | wish to lengthen this default value because the timeout applies
|
---|
682 | to the composed multi-click event as well as the individual clicks.
|
---|
683 | .IP
|
---|
684 | In addition to the environment variable,
|
---|
685 | this implementation provides a global variable with the same name.
|
---|
686 | Portable applications should not rely upon the presence of ESCDELAY
|
---|
687 | in either form,
|
---|
688 | but setting the environment variable rather than the global variable
|
---|
689 | does not create problems when compiling an application.
|
---|
690 | .TP 5
|
---|
691 | HOME
|
---|
692 | Tells \fBncurses\fR where your home directory is.
|
---|
693 | That is where it may read and write auxiliary terminal descriptions:
|
---|
694 | .IP
|
---|
695 | $HOME/.termcap
|
---|
696 | .br
|
---|
697 | $HOME/.terminfo
|
---|
698 | .TP 5
|
---|
699 | LINES
|
---|
700 | Like COLUMNS, specify the height of the screen in characters.
|
---|
701 | See COLUMNS for a detailed description.
|
---|
702 | .TP 5
|
---|
703 | MOUSE_BUTTONS_123
|
---|
704 | This applies only to the OS/2 EMX port.
|
---|
705 | It specifies the order of buttons on the mouse.
|
---|
706 | OS/2 numbers a 3-button mouse inconsistently from other
|
---|
707 | platforms:
|
---|
708 | .sp
|
---|
709 | 1 = left
|
---|
710 | .br
|
---|
711 | 2 = right
|
---|
712 | .br
|
---|
713 | 3 = middle.
|
---|
714 | .sp
|
---|
715 | This symbol lets you customize the mouse.
|
---|
716 | The symbol must be three numeric digits 1-3 in any order, e.g., 123 or 321.
|
---|
717 | If it is not specified, \fBncurses\fR uses 132.
|
---|
718 | .TP 5
|
---|
719 | NCURSES_ASSUMED_COLORS
|
---|
720 | Override the compiled-in assumption that the
|
---|
721 | terminal's default colors are white-on-black
|
---|
722 | (see \fBassume_default_colors\fR(3X)).
|
---|
723 | You may set the foreground and background color values with this environment
|
---|
724 | variable by proving a 2-element list: foreground,background.
|
---|
725 | For example, to tell ncurses to not assume anything
|
---|
726 | about the colors, set this to "-1,-1".
|
---|
727 | To make it green-on-black, set it to "2,0".
|
---|
728 | Any positive value from zero to the terminfo \fBmax_colors\fR value is allowed.
|
---|
729 | .TP 5
|
---|
730 | NCURSES_NO_PADDING
|
---|
731 | Most of the terminal descriptions in the terminfo database are written
|
---|
732 | for real "hardware" terminals.
|
---|
733 | Many people use terminal emulators
|
---|
734 | which run in a windowing environment and use curses-based applications.
|
---|
735 | Terminal emulators can duplicate
|
---|
736 | all of the important aspects of a hardware terminal, but they do not
|
---|
737 | have the same limitations.
|
---|
738 | The chief limitation of a hardware terminal from the standpoint
|
---|
739 | of your application is the management of dataflow, i.e., timing.
|
---|
740 | Unless a hardware terminal is interfaced into a terminal concentrator
|
---|
741 | (which does flow control),
|
---|
742 | it (or your application) must manage dataflow, preventing overruns.
|
---|
743 | The cheapest solution (no hardware cost)
|
---|
744 | is for your program to do this by pausing after
|
---|
745 | operations that the terminal does slowly, such as clearing the display.
|
---|
746 | .IP
|
---|
747 | As a result, many terminal descriptions (including the vt100)
|
---|
748 | have delay times embedded. You may wish to use these descriptions,
|
---|
749 | but not want to pay the performance penalty.
|
---|
750 | .IP
|
---|
751 | Set the NCURSES_NO_PADDING symbol to disable all but mandatory
|
---|
752 | padding. Mandatory padding is used as a part of special control
|
---|
753 | sequences such as \fIflash\fR.
|
---|
754 | .TP 5
|
---|
755 | NCURSES_NO_SETBUF
|
---|
756 | Normally \fBncurses\fR enables buffered output during terminal initialization.
|
---|
757 | This is done (as in SVr4 curses) for performance reasons.
|
---|
758 | For testing purposes, both of \fBncurses\fR and certain applications,
|
---|
759 | this feature is made optional. Setting the NCURSES_NO_SETBUF variable
|
---|
760 | disables output buffering, leaving the output in the original (usually
|
---|
761 | line buffered) mode.
|
---|
762 | .TP 5
|
---|
763 | NCURSES_NO_UTF8_ACS
|
---|
764 | During initialization, the \fBncurses\fR library
|
---|
765 | checks for special cases where VT100 line-drawing (and the corresponding
|
---|
766 | alternate character set capabilities) described in the terminfo are known
|
---|
767 | to be missing.
|
---|
768 | Specifically, when running in a UTF-8 locale,
|
---|
769 | the Linux console emulator and the GNU screen program ignore these.
|
---|
770 | Ncurses checks the TERM environment variable for these.
|
---|
771 | For other special cases, you should set this environment variable.
|
---|
772 | Doing this tells ncurses to use Unicode values which correspond to
|
---|
773 | the VT100 line-drawing glyphs.
|
---|
774 | That works for the special cases cited,
|
---|
775 | and is likely to work for terminal emulators.
|
---|
776 | .IP
|
---|
777 | When setting this variable, you should set it to a nonzero value.
|
---|
778 | Setting it to zero (or to a nonnumber)
|
---|
779 | disables the special check for Linux and screen.
|
---|
780 | .TP 5
|
---|
781 | NCURSES_TRACE
|
---|
782 | During initialization, the \fBncurses\fR debugging library
|
---|
783 | checks the NCURSES_TRACE symbol.
|
---|
784 | If it is defined, to a numeric value, \fBncurses\fR calls the \fBtrace\fR
|
---|
785 | function, using that value as the argument.
|
---|
786 | .IP
|
---|
787 | The argument values, which are defined in \fBcurses.h\fR, provide several
|
---|
788 | types of information.
|
---|
789 | When running with traces enabled, your application will write the
|
---|
790 | file \fBtrace\fR to the current directory.
|
---|
791 | .TP 5
|
---|
792 | TERM
|
---|
793 | Denotes your terminal type.
|
---|
794 | Each terminal type is distinct, though many are similar.
|
---|
795 | .TP 5
|
---|
796 | TERMCAP
|
---|
797 | If the \fBncurses\fR library has been configured with \fItermcap\fR
|
---|
798 | support, \fBncurses\fR will check for a terminal's description in
|
---|
799 | termcap form if it is not available in the terminfo database.
|
---|
800 | .IP
|
---|
801 | The TERMCAP symbol contains either a terminal description (with
|
---|
802 | newlines stripped out),
|
---|
803 | or a file name telling where the information denoted by the TERM symbol exists.
|
---|
804 | In either case, setting it directs \fBncurses\fR to ignore
|
---|
805 | the usual place for this information, e.g., /etc/termcap.
|
---|
806 | .TP 5
|
---|
807 | TERMINFO
|
---|
808 | Overrides the directory in which \fBncurses\fR searches for your terminal
|
---|
809 | description.
|
---|
810 | This is the simplest, but not the only way to change the list of directories.
|
---|
811 | The complete list of directories in order follows:
|
---|
812 | .RS
|
---|
813 | .TP 3
|
---|
814 | -
|
---|
815 | the last directory to which \fBncurses\fR wrote, if any, is searched first
|
---|
816 | .TP 3
|
---|
817 | -
|
---|
818 | the directory specified by the TERMINFO symbol
|
---|
819 | .TP 3
|
---|
820 | -
|
---|
821 | $HOME/.terminfo
|
---|
822 | .TP 3
|
---|
823 | -
|
---|
824 | directories listed in the TERMINFO_DIRS symbol
|
---|
825 | .TP 3
|
---|
826 | -
|
---|
827 | one or more directories whose names are configured and compiled into the
|
---|
828 | ncurses library, e.g.,
|
---|
829 | @TERMINFO@
|
---|
830 | .RE
|
---|
831 | .TP 5
|
---|
832 | TERMINFO_DIRS
|
---|
833 | Specifies a list of directories to search for terminal descriptions.
|
---|
834 | The list is separated by colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
|
---|
835 | All of the terminal descriptions are in terminfo form, which makes
|
---|
836 | a subdirectory named for the first letter of the terminal names therein.
|
---|
837 | .TP 5
|
---|
838 | TERMPATH
|
---|
839 | If TERMCAP does not hold a file name then \fBncurses\fR checks
|
---|
840 | the TERMPATH symbol.
|
---|
841 | This is a list of filenames separated by spaces or colons (i.e., ":") on Unix, semicolons on OS/2 EMX.
|
---|
842 | If the TERMPATH symbol is not set, \fBncurses\fR looks in the files
|
---|
843 | /etc/termcap, /usr/share/misc/termcap and $HOME/.termcap, in that order.
|
---|
844 | .PP
|
---|
845 | The library may be configured to disregard the following variables when the
|
---|
846 | current user is the superuser (root), or if the application uses setuid or
|
---|
847 | setgid permissions:
|
---|
848 | $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME.
|
---|
849 | .SH FILES
|
---|
850 | .TP 5
|
---|
851 | @DATADIR@/tabset
|
---|
852 | directory containing initialization files for the terminal capability database
|
---|
853 | @TERMINFO@
|
---|
854 | terminal capability database
|
---|
855 | .SH SEE ALSO
|
---|
856 | \fBterminfo\fR(\*n) and related pages whose names begin "curs_" for detailed routine
|
---|
857 | descriptions.
|
---|
858 | .SH EXTENSIONS
|
---|
859 | The \fBncurses\fR library can be compiled with an option (\fB-DUSE_GETCAP\fR)
|
---|
860 | that falls back to the old-style /etc/termcap file if the terminal setup code
|
---|
861 | cannot find a terminfo entry corresponding to \fBTERM\fR. Use of this feature
|
---|
862 | is not recommended, as it essentially includes an entire termcap compiler in
|
---|
863 | the \fBncurses\fR startup code, at significant cost in core and startup cycles.
|
---|
864 | .PP
|
---|
865 | The \fBncurses\fR library includes facilities for capturing mouse events on
|
---|
866 | certain terminals (including xterm). See the \fBcurs_mouse\fR(3X)
|
---|
867 | manual page for details.
|
---|
868 | .PP
|
---|
869 | The \fBncurses\fR library includes facilities for responding to window
|
---|
870 | resizing events, e.g., when running in an xterm.
|
---|
871 | See the \fBresizeterm\fR(3X)
|
---|
872 | and \fBwresize\fR(3X) manual pages for details.
|
---|
873 | In addition, the library may be configured with a SIGWINCH handler.
|
---|
874 | .PP
|
---|
875 | The \fBncurses\fR library extends the fixed set of function key capabilities
|
---|
876 | of terminals by allowing the application designer to define additional
|
---|
877 | key sequences at runtime.
|
---|
878 | See the \fBdefine_key\fR(3X)
|
---|
879 | \fBkey_defined\fR(3X),
|
---|
880 | and \fBkeyok\fR(3X) manual pages for details.
|
---|
881 | .PP
|
---|
882 | The \fBncurses\fR library can exploit the capabilities of terminals which
|
---|
883 | implement the ISO-6429 SGR 39 and SGR 49 controls, which allow an application
|
---|
884 | to reset the terminal to its original foreground and background colors.
|
---|
885 | From the users' perspective, the application is able to draw colored
|
---|
886 | text on a background whose color is set independently, providing better
|
---|
887 | control over color contrasts.
|
---|
888 | See the \fBdefault_colors\fR(3X) manual page for details.
|
---|
889 | .PP
|
---|
890 | The \fBncurses\fR library includes a function for directing application output
|
---|
891 | to a printer attached to the terminal device. See the \fBcurs_print\fR(3X)
|
---|
892 | manual page for details.
|
---|
893 | .SH PORTABILITY
|
---|
894 | The \fBncurses\fR library is intended to be BASE-level conformant with the XSI
|
---|
895 | Curses standard. The EXTENDED XSI Curses functionality
|
---|
896 | (including color support) is supported.
|
---|
897 | .PP
|
---|
898 | A small number of local differences (that is, individual differences between
|
---|
899 | the XSI Curses and \fBncurses\fR calls) are described in \fBPORTABILITY\fR
|
---|
900 | sections of the library man pages.
|
---|
901 | .PP
|
---|
902 | The routine \fBhas_key\fR is not part of XPG4, nor is it present in SVr4. See
|
---|
903 | the \fBcurs_getch\fR(3X) manual page for details.
|
---|
904 | .PP
|
---|
905 | The routine \fBslk_attr\fR is not part of XPG4, nor is it present in SVr4. See
|
---|
906 | the \fBcurs_slk\fR(3X) manual page for details.
|
---|
907 | .PP
|
---|
908 | The routines \fBgetmouse\fR, \fBmousemask\fR, \fBungetmouse\fR,
|
---|
909 | \fBmouseinterval\fR, and \fBwenclose\fR relating to mouse interfacing are not
|
---|
910 | part of XPG4, nor are they present in SVr4. See the \fBcurs_mouse\fR(3X)
|
---|
911 | manual page for details.
|
---|
912 | .PP
|
---|
913 | The routine \fBmcprint\fR was not present in any previous curses
|
---|
914 | implementation. See the \fBcurs_print\fR(3X) manual page for details.
|
---|
915 | .PP
|
---|
916 | The routine \fBwresize\fR is not part of XPG4, nor is it present in SVr4. See
|
---|
917 | the \fBwresize\fR(3X) manual page for details.
|
---|
918 | .PP
|
---|
919 | In historic curses versions, delays embedded in the capabilities \fBcr\fR,
|
---|
920 | \fBind\fR, \fBcub1\fR, \fBff\fR and \fBtab\fR activated corresponding delay
|
---|
921 | bits in the UNIX tty driver. In this implementation, all padding is done by
|
---|
922 | NUL sends. This method is slightly more expensive, but narrows the interface
|
---|
923 | to the UNIX kernel significantly and increases the package's portability
|
---|
924 | correspondingly.
|
---|
925 | .SH NOTES
|
---|
926 | The header file \fB<curses.h>\fR automatically includes the header files
|
---|
927 | \fB<stdio.h>\fR and \fB<unctrl.h>\fR.
|
---|
928 | .PP
|
---|
929 | If standard output from a \fBncurses\fR program is re-directed to something
|
---|
930 | which is not a tty, screen updates will be directed to standard error. This
|
---|
931 | was an undocumented feature of AT&T System V Release 3 curses.
|
---|
932 | .SH AUTHORS
|
---|
933 | Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey.
|
---|
934 | Based on pcurses by Pavel Curtis.
|
---|
935 | .\"#
|
---|
936 | .\"# The following sets edit modes for GNU EMACS
|
---|
937 | .\"# Local Variables:
|
---|
938 | .\"# mode:nroff
|
---|
939 | .\"# fill-column:79
|
---|
940 | .\"# End:
|
---|