diff options
Diffstat (limited to 'ncurses-5.2/doc/html/man/ncurses.3x.html')
-rw-r--r-- | ncurses-5.2/doc/html/man/ncurses.3x.html | 899 |
1 files changed, 899 insertions, 0 deletions
diff --git a/ncurses-5.2/doc/html/man/ncurses.3x.html b/ncurses-5.2/doc/html/man/ncurses.3x.html new file mode 100644 index 0000000..5fb8400 --- /dev/null +++ b/ncurses-5.2/doc/html/man/ncurses.3x.html @@ -0,0 +1,899 @@ +<HTML> +<BODY> +<PRE> +<!-- Manpage converted by man2html 3.0.1 --> + +</PRE> +<H2>NAME</H2><PRE> + <B>ncurses</B> - CRT screen handling and optimization package + + +</PRE> +<H2>SYNOPSIS</H2><PRE> + <B>#include</B> <B><curses.h></B> + + +</PRE> +<H2>DESCRIPTION</H2><PRE> + The <B>ncurses</B> library routines give the user a terminal- + independent method of updating character screens with + reasonable optimization. This implementation is ``new + curses'' (ncurses) and is the approved replacement for + 4.4BSD classic curses, which has been discontinued. + + The <B>ncurses</B> routines emulate the <B><A HREF="ncurses.3x.html">curses(3x)</A></B> library of + System V Release 4 UNIX, and the XPG4 curses standard (XSI + curses) but the <B>ncurses</B> library is freely redistributable + in source form. Differences from the SVr4 curses are + summarized under the EXTENSIONS and BUGS sections below + and described in detail in the EXTENSIONS and BUGS + sections of individual man pages. + + A program using these routines must be linked with the + <B>-lncurses</B> option, or (if it has been generated) with the + debugging library <B>-lncurses_g</B>. (Your system integrator + may also have installed these libraries under the names + <B>-lcurses</B> and <B>-lcurses_g</B>.) The ncurses_g library generates + trace logs (in a file called 'trace' in the current + directory) that describe curses actions. + + The <B>ncurses</B> package supports: overall screen, window and + pad manipulation; output to windows and pads; reading + terminal input; control over terminal and <B>curses</B> input and + output options; environment query routines; color + manipulation; use of soft label keys; terminfo + capabilities; and access to low-level terminal- + manipulation routines. + + To initialize the routines, the routine <B>initscr</B> or <B>newterm</B> + must be called before any of the other routines that deal + with windows and screens are used. The routine <B>endwin</B> + must be called before exiting. To get character-at-a-time + input without echoing (most interactive, screen oriented + programs want this), the following sequence should be + used: + + <B>initscr();</B> <B>cbreak();</B> <B>noecho();</B> + + Most programs would additionally use the sequence: + + <B>nonl();</B> + <B>intrflush(stdscr,</B> <B>FALSE);</B> + <B>keypad(stdscr,</B> <B>TRUE);</B> + + Before a <B>curses</B> program is run, the tab stops of the + terminal should be set and its initialization strings, if + defined, must be output. This can be done by executing + the <B>tput</B> <B>init</B> command after the shell environment variable + <B>TERM</B> has been exported. <B>tset(1)</B> is usually responsible + for doing this. [See <B><A HREF="terminfo.5.html">terminfo(5)</A></B> for further details.] + + The <B>ncurses</B> library permits manipulation of data + structures, called <I>windows</I>, which can be thought of as + two-dimensional arrays of characters representing all or + part of a CRT screen. A default window called <B>stdscr</B>, + which is the size of the terminal screen, is supplied. + Others may be created with <B>newwin</B>. + + Note that <B>curses</B> does not handle overlapping windows, + that's done by the <B><A HREF="panel.3x.html">panel(3x)</A></B> library. This means that you + can either use <B>stdscr</B> or divide the screen into tiled + windows and not using <B>stdscr</B> at all. Mixing the two will + result in unpredictable, and undesired, effects. + + Windows are referred to by variables declared as <B>WINDOW</B> <B>*</B>. + These data structures are manipulated with routines + described here and elsewhere in the <B>ncurses</B> manual pages. + Among which the most basic routines are <B>move</B> and <B>addch</B>. + More general versions of these routines are included with + names beginning with <B>w</B>, allowing the user to specify a + window. The routines not beginning with <B>w</B> affect <B>stdscr</B>.) + + After using routines to manipulate a window, <B>refresh</B> is + called, telling <B>curses</B> to make the user's CRT screen look + like <B>stdscr</B>. The characters in a window are actually of + type <B>chtype</B>, (character and attribute data) so that other + information about the character may also be stored with + each character. + + Special windows called <I>pads</I> may also be manipulated. + These are windows which are not constrained to the size of + the screen and whose contents need not be completely + displayed. See <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> for more information. + + In addition to drawing characters on the screen, video + attributes and colors may be supported, causing the + characters to show up in such modes as underlined, in + reverse video, or in color on terminals that support such + display enhancements. Line drawing characters may be + specified to be output. On input, <B>curses</B> is also able to + translate arrow and function keys that transmit escape + sequences into single values. The video attributes, line + drawing characters, and input values use names, defined in + <B><curses.h></B>, such as <B>A_REVERSE</B>, <B>ACS_HLINE</B>, and <B>KEY_LEFT</B>. + + If the environment variables <B>LINES</B> and <B>COLUMNS</B> are set, or + if the program is executing in a window environment, line + and column information in the environment will override + information read by <I>terminfo</I>. This would effect a program + running in an AT&T 630 layer, for example, where the size + of a screen is changeable (see <B>ENVIRONMENT</B>). + + If the environment variable <B>TERMINFO</B> is defined, any + program using <B>curses</B> checks for a local terminal + definition before checking in the standard place. For + example, if <B>TERM</B> is set to <B>att4424</B>, then the compiled + terminal definition is found in + + <B>/usr/share/terminfo/a/att4424</B>. + + (The <B>a</B> is copied from the first letter of <B>att4424</B> to avoid + creation of huge directories.) However, if <B>TERMINFO</B> is + set to <B>$HOME/myterms</B>, <B>curses</B> first checks + + <B>$HOME/myterms/a/att4424</B>, + + and if that fails, it then checks + + <B>/usr/share/terminfo/a/att4424</B>. + + This is useful for developing experimental definitions or + when write permission in <B>/usr/share/terminfo</B> is not + available. + + The integer variables <B>LINES</B> and <B>COLS</B> are defined in + <B><curses.h></B> and will be filled in by <B>initscr</B> with the size + of the screen. The constants <B>TRUE</B> and <B>FALSE</B> have the + values <B>1</B> and <B>0</B>, respectively. + + The <B>curses</B> routines also define the <B>WINDOW</B> <B>*</B> variable + <B>curscr</B> which is used for certain low-level operations like + clearing and redrawing a screen containing garbage. The + <B>curscr</B> can be used in only a few routines. + + + <B>Routine</B> <B>and</B> <B>Argument</B> <B>Names</B> + Many <B>curses</B> routines have two or more versions. The + routines prefixed with <B>w</B> require a window argument. The + routines prefixed with <B>p</B> require a pad argument. Those + without a prefix generally use <B>stdscr</B>. + + The routines prefixed with <B>mv</B> require a <I>y</I> and <I>x</I> coordinate + to move to before performing the appropriate action. The + <B>mv</B> routines imply a call to <B>move</B> before the call to the + other routine. The coordinate <I>y</I> always refers to the row + (of the window), and <I>x</I> always refers to the column. The + upper left-hand corner is always (0,0), not (1,1). + + The routines prefixed with <B>mvw</B> take both a window argument + and <I>x</I> and <I>y</I> coordinates. The window argument is always + specified before the coordinates. + + In each case, <I>win</I> is the window affected, and <I>pad</I> is the + pad affected; <I>win</I> and <I>pad</I> are always pointers to type + <B>WINDOW</B>. + + Option setting routines require a Boolean flag <I>bf</I> with the + value <B>TRUE</B> or <B>FALSE</B>; <I>bf</I> is always of type <B>bool</B>. The + variables <I>ch</I> and <I>attrs</I> below are always of type <B>chtype</B>. + The types <B>WINDOW</B>, <B>SCREEN</B>, <B>bool</B>, and <B>chtype</B> are defined in + <B><curses.h></B>. The type <B>TERMINAL</B> is defined in <B><term.h></B>. + All other arguments are integers. + + + <B>Routine</B> <B>Name</B> <B>Index</B> + The following table lists each <B>curses</B> routine and the name + of the manual page on which it is described. Routines + flagged with `*' are ncurses-specific, not described by + XPG4 or present in SVr4. + + <B>curses</B> Routine Name Manual Page Name + -------------------------------------------- + COLOR_PAIR <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + PAIR_NUMBER <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + _nc_tracebits <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _traceattr <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _traceattr2 <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracechar <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracechtype <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracechtype2 <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracedump <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracef <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + _tracemouse <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + addch <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + addchnstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + addchstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + addnstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + addstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + assume_default_colors <B><A HREF="default_colors.3x.html">default_colors(3x)</A></B>* + attr_get <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attr_off <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attr_on <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attr_set <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attroff <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attron <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + attrset <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + baudrate <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + beep <B><A HREF="curs_beep.3x.html">curs_beep(3x)</A></B> + bkgd <B><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></B> + bkgdset <B><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></B> + border <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + box <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + can_change_color <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + cbreak <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + chgat <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + clear <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + + clearok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + clrtobot <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + clrtoeol <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + color_content <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + color_set <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + copywin <B><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></B> + curs_set <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + curses_version <B><A HREF="curs_extend.3x.html">curs_extend(3x)</A></B>* + def_prog_mode <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + def_shell_mode <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + define_key <B><A HREF="define_key.3x.html">define_key(3x)</A></B>* + del_curterm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + delay_output <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + delch <B><A HREF="curs_delch.3x.html">curs_delch(3x)</A></B> + deleteln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + delscreen <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + delwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + derwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + doupdate <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + dupwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + echo <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + echochar <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + endwin <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + erase <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + erasechar <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + filter <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + flash <B><A HREF="curs_beep.3x.html">curs_beep(3x)</A></B> + flushinp <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + getbegyx <B><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></B> + getbkgd <B><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></B> + getch <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> + getmaxyx <B><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></B> + getmouse <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + getnstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + getparyx <B><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></B> + getstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + getsyx <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + getwin <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + getyx <B><A HREF="curs_getyx.3x.html">curs_getyx(3x)</A></B> + halfdelay <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + has_colors <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + has_ic <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + has_il <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + has_key <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B>* + hline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + idcok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + idlok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + immedok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + inch <B><A HREF="curs_inch.3x.html">curs_inch(3x)</A></B> + inchnstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + inchstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + init_color <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + init_pair <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + + initscr <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + innstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + insch <B><A HREF="curs_insch.3x.html">curs_insch(3x)</A></B> + insdelln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + insertln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + insnstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + insstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + instr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + intrflush <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + is_linetouched <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + is_wintouched <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + isendwin <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + keybound <B><A HREF="keybound.3x.html">keybound(3x)</A></B>* + keyname <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + keyok <B><A HREF="keyok.3x.html">keyok(3x)</A></B>* + keypad <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + killchar <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + leaveok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + longname <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + mcprint <B><A HREF="curs_print.3x.html">curs_print(3x)</A></B>* + meta <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + mouse_trafo <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + mouseinterval <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + mousemask <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + move <B><A HREF="curs_move.3x.html">curs_move(3x)</A></B> + mvaddch <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + mvaddchnstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + mvaddchstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + mvaddnstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + mvaddstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + mvchgat <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + mvcur <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + mvdelch <B><A HREF="curs_delch.3x.html">curs_delch(3x)</A></B> + mvderwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + mvgetch <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> + mvgetnstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + mvgetstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + mvhline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + mvinch <B><A HREF="curs_inch.3x.html">curs_inch(3x)</A></B> + mvinchnstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + mvinchstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + mvinnstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + mvinsch <B><A HREF="curs_insch.3x.html">curs_insch(3x)</A></B> + mvinsnstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + mvinsstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + mvinstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + mvprintw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + mvscanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + mvvline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + mvwaddch <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + mvwaddchnstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + mvwaddchstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + mvwaddnstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + + mvwaddstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + mvwchgat <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + mvwdelch <B><A HREF="curs_delch.3x.html">curs_delch(3x)</A></B> + mvwgetch <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> + mvwgetnstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + mvwgetstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + mvwhline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + mvwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + mvwinch <B><A HREF="curs_inch.3x.html">curs_inch(3x)</A></B> + mvwinchnstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + mvwinchstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + mvwinnstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + mvwinsch <B><A HREF="curs_insch.3x.html">curs_insch(3x)</A></B> + mvwinsnstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + mvwinsstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + mvwinstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + mvwprintw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + mvwscanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + mvwvline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + napms <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + newpad <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> + newterm <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + newwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + nl <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + nocbreak <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + nodelay <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + noecho <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + nonl <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + noqiflush <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + noraw <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + notimeout <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + overlay <B><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></B> + overwrite <B><A HREF="curs_overlay.3x.html">curs_overlay(3x)</A></B> + pair_content <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + pechochar <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> + pnoutrefresh <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> + prefresh <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> + printw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + putp <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + putwin <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + qiflush <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + raw <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + redrawwin <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + refresh <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + reset_prog_mode <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + reset_shell_mode <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + resetty <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + resizeterm <B><A HREF="resizeterm.3x.html">resizeterm(3x)</A></B>* + restartterm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + ripoffline <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + savetty <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + scanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + scr_dump <B><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></B> + + scr_init <B><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></B> + scr_restore <B><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></B> + scr_set <B><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></B> + scrl <B><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></B> + scroll <B><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></B> + scrollok <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + set_curterm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + set_term <B><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></B> + setscrreg <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + setsyx <B><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></B> + setterm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + setupterm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + slk_attr <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B>* + slk_attr_off <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_attr_on <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_attr_set <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_attroff <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_attron <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_attrset <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_clear <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_color <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_init <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_label <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_noutrefresh <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_refresh <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_restore <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_set <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + slk_touch <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> + standend <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + standout <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + start_color <B><A HREF="curs_color.3x.html">curs_color(3x)</A></B> + subpad <B><A HREF="curs_pad.3x.html">curs_pad(3x)</A></B> + subwin <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + syncok <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + termattrs <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + termname <B><A HREF="curs_termattrs.3x.html">curs_termattrs(3x)</A></B> + tgetent <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tgetflag <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tgetnum <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tgetstr <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tgoto <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tigetflag <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + tigetnum <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + tigetstr <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + timeout <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + touchline <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + touchwin <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + tparm <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + tputs <B><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></B> + tputs <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + trace <B><A HREF="curs_trace.3x.html">curs_trace(3x)</A></B>* + typeahead <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + unctrl <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + + ungetch <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> + ungetmouse <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + untouchwin <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + use_default_colors <B><A HREF="default_colors.3x.html">default_colors(3x)</A></B>* + use_env <B><A HREF="curs_util.3x.html">curs_util(3x)</A></B> + use_extended_names <B><A HREF="curs_extend.3x.html">curs_extend(3x)</A></B>* + vidattr <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + vidputs <B><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></B> + vline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + vw_printw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + vw_scanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + vwprintw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + vwscanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + waddch <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + waddchnstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + waddchstr <B><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></B> + waddnstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + waddstr <B><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></B> + wattr_get <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattr_off <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattr_on <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattr_set <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattroff <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattron <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wattrset <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wbkgd <B><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></B> + wbkgdset <B><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></B> + wborder <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + wchgat <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wclear <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + wclrtobot <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + wclrtoeol <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + wcolor_set <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wcursyncup <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + wdelch <B><A HREF="curs_delch.3x.html">curs_delch(3x)</A></B> + wdeleteln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + wechochar <B><A HREF="curs_addch.3x.html">curs_addch(3x)</A></B> + wenclose <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + werase <B><A HREF="curs_clear.3x.html">curs_clear(3x)</A></B> + wgetch <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> + wgetnstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + wgetstr <B><A HREF="curs_getstr.3x.html">curs_getstr(3x)</A></B> + whline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + winch <B><A HREF="curs_inch.3x.html">curs_inch(3x)</A></B> + winchnstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + winchstr <B><A HREF="curs_inchstr.3x.html">curs_inchstr(3x)</A></B> + winnstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + winsch <B><A HREF="curs_insch.3x.html">curs_insch(3x)</A></B> + winsdelln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + winsertln <B><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></B> + winsnstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + winsstr <B><A HREF="curs_insstr.3x.html">curs_insstr(3x)</A></B> + winstr <B><A HREF="curs_instr.3x.html">curs_instr(3x)</A></B> + + wmouse_trafo <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B>* + wmove <B><A HREF="curs_move.3x.html">curs_move(3x)</A></B> + wnoutrefresh <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + wprintw <B><A HREF="curs_printw.3x.html">curs_printw(3x)</A></B> + wredrawln <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + wrefresh <B><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></B> + wresize <B><A HREF="wresize.3x.html">wresize(3x)</A></B>* + wscanw <B><A HREF="curs_scanw.3x.html">curs_scanw(3x)</A></B> + wscrl <B><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></B> + wsetscrreg <B><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></B> + wstandend <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wstandout <B><A HREF="curs_attr.3x.html">curs_attr(3x)</A></B> + wsyncdown <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + wsyncup <B><A HREF="curs_window.3x.html">curs_window(3x)</A></B> + wtimeout <B><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></B> + wtouchln <B><A HREF="curs_touch.3x.html">curs_touch(3x)</A></B> + wvline <B><A HREF="curs_border.3x.html">curs_border(3x)</A></B> + + +</PRE> +<H2>RETURN VALUE</H2><PRE> + Routines that return an integer return <B>ERR</B> upon failure + and an integer value other than <B>ERR</B> upon successful + completion, unless otherwise noted in the routine + descriptions. + + All macros return the value of the <B>w</B> version, except + <B>setscrreg</B>, <B>wsetscrreg</B>, <B>getyx</B>, <B>getbegyx</B>, <B>getmaxyx</B>. The + return values of <B>setscrreg</B>, <B>wsetscrreg</B>, <B>getyx</B>, <B>getbegyx</B>, + and <B>getmaxyx</B> are undefined (<I>i</I>.<I>e</I>., these should not be used + as the right-hand side of assignment statements). + + Routines that return pointers return <B>NULL</B> on error. + + +</PRE> +<H2>ENVIRONMENT</H2><PRE> + The following environment symbols are useful for + customizing the runtime behavior of the <B>ncurses</B> library. + The most important ones have been already discussed in + detail. + + BAUDRATE + The debugging library checks this environment symbol + when the application has redirected output to a file. + The symbol's numeric value is used for the baudrate. + If no value is found <B>ncurses</B> uses 9600. This allows + testers to construct repeatable test-cases that take + into account costs that depend on baudrate. + + CC When set, change occurrences of the command_character + (i.e., the <B>cmdch</B> capability) of the loaded terminfo + entries to the value of this symbol. Very few + terminfo entries provide this feature. + + COLUMNS + Specify the width of the screen in characters. + Applications running in a windowing environment + usually are able to obtain the width of the window in + which they are executing. If neither the $COLUMNS + value nor the terminal's screen size is available, + <B>ncurses</B> uses the size which may be specified in the + terminfo database (i.e., the <B>cols</B> capability). + + It is important that your application use a correct + size for the screen. However, this is not always + possible because your application may be running on a + host which does not honor NAWS (Negotiations About + Window Size), or because you are temporarily running + as another user. + + Either COLUMNS or LINES symbols may be specified + independently. This is mainly useful to circumvent + legacy misfeatures of terminal descriptions, e.g., + xterm which commonly specifies a 65 line screen. For + best results, <B>lines</B> and <B>cols</B> should not be specified + in a terminal description for terminals which are run + as emulations. + + Use the <B>use_env</B> function to disable this feature. + + ESCDELAY + Specifies the total time, in milliseconds, for which + ncurses will await a character sequence, e.g., a + function key. The default value, 1000 milliseconds, + is enough for most uses. However, it is made a + variable to accommodate unusual applications. + + The most common instance where you may wish to change + this value is to work with slow hosts, e.g., running + on a network. If the host cannot read characters + rapidly enough, it will have the same effect as if + the terminal did not send characters rapidly enough. + The library will still see a timeout. + + Note that xterm mouse events are built up from + character sequences received from the xterm. If your + application makes heavy use of multiple-clicking, you + may wish to lengthen this default value because the + timeout applies to the composed multi-click event as + well as the individual clicks. + + HOME Tells <B>ncurses</B> where your home directory is. That is + where it may read and write auxiliary terminal + descriptions: + + $HOME/.termcap + $HOME/.terminfo + + LINES + Like COLUMNS, specify the height of the screen in + characters. See COLUMNS for a detailed description. + + MOUSE_BUTTONS_123 + This applies only to the OS/2 EMX port. It specifies + the order of buttons on the mouse. OS/2 numbers a + 3-button mouse inconsistently from other platforms: + + 1 = left + 2 = right + 3 = middle. + + This symbol lets you customize the mouse. The symbol + must be three numeric digits 1-3 in any order, e.g., + 123 or 321. If it is not specified, <B>ncurses</B> uses + 132. + + NCURSES_NO_PADDING + Most of the terminal descriptions in the terminfo + database are written for real "hardware" terminals. + Many people use terminal emulators which run in a + windowing environment and use curses-based + applications. Terminal emulators can duplicate all + of the important aspects of a hardware terminal, but + they do not have the same limitations. The chief + limitation of a hardware terminal from the standpoint + of your application is the management of dataflow, + i.e., timing. Unless a hardware terminal is + interfaced into a terminal concentrator (which does + flow control), it (or your application) must manage + dataflow, preventing overruns. The cheapest solution + (no hardware cost) is for your program to do this by + pausing after operations that the terminal does + slowly, such as clearing the display. + + As a result, many terminal descriptions (including + the vt100) have delay times embedded. You may wish + to use these descriptions, but not want to pay the + performance penalty. + + Set the NCURSES_NO_PADDING symbol to disable all but + mandatory padding. Mandatory padding is used as a + part of special control sequences such as <I>flash</I>. + + NCURSES_NO_SETBUF + Normally <B>ncurses</B> enables buffered output during + terminal initialization. This is done (as in SVr4 + curses) for performance reasons. For testing + purposes, both of <B>ncurses</B> and certain applications, + this feature is made optional. Setting the + NCURSES_NO_SETBUF variable disables output buffering, + leaving the output in the original (usually line + buffered) mode. + + NCURSES_TRACE + During initialization, the <B>ncurses</B> debugging library + checks the NCURSES_TRACE symbol. If it is defined, + to a numeric value, <B>ncurses</B> calls the <B>trace</B> function, + using that value as the argument. + + The argument values, which are defined in <B>curses.h</B>, + provide several types of information. When running + with traces enabled, your application will write the + file <B>trace</B> to the current directory. + + TERM Denotes your terminal type. Each terminal type is + distinct, though many are similar. + + TERMCAP + If the <B>ncurses</B> library has been configured with + <I>termcap</I> support, <B>ncurses</B> will check for a terminal's + description in termcap form if it is not available in + the terminfo database. + + The TERMCAP symbol contains either a terminal + description (with newlines stripped out), or a file + name telling where the information denoted by the + TERM symbol exists. In either case, setting it + directs <B>ncurses</B> to ignore the usual place for this + information, e.g., /etc/termcap. + + TERMINFO + Overrides the directory in which <B>ncurses</B> searches for + your terminal description. This is the simplest, but + not the only way to change the list of directories. + The complete list of directories in order follows: + + - the last directory to which <B>ncurses</B> wrote, if any, + is searched first. + + - the directory specified by the TERMINFO symbol + + - $HOME/.terminfo + + - directories listed in the TERMINFO_DIRS symbol + + - one or more directories whose names are configured + and compiled into the ncurses library, e.g., + /usr/share/terminfo + + TERMINFO_DIRS + Specifies a list of directories to search for + terminal descriptions. The list is separated by + colons (i.e., ":"). All of the terminal descriptions + are in terminfo form, which makes a subdirectory + named for the first letter of the terminal names + therein. + + TERMPATH + If TERMCAP does not hold a file name then <B>ncurses</B> + checks the TERMPATH symbol. This is a list of + filenames separated by colons (i.e., ":"). If the + TERMPATH symbol is not set, <B>ncurses</B> looks in the + files /etc/termcap, /usr/share/misc/termcap and + $HOME/.termcap, in that order. + + The library may be configured to disregard the following + variables when the current user is the superuser (root), + or if the application uses setuid or setgid permissions: + $TERMINFO, $TERMINFO_DIRS, $TERMPATH, as well as $HOME. + + +</PRE> +<H2>FILES</H2><PRE> + /usr/share/tabset + directory containing initialization files for the + terminal capability database /usr/share/terminfo + terminal capability database + + +</PRE> +<H2>SEE ALSO</H2><PRE> + <B><A HREF="terminfo.5.html">terminfo(5)</A></B> and 3x pages whose names begin "curs_" for + detailed routine descriptions. + + +</PRE> +<H2>EXTENSIONS</H2><PRE> + The <B>ncurses</B> library can be compiled with an option + (<B>-DUSE_GETCAP</B>) that falls back to the old-style + /etc/termcap file if the terminal setup code cannot find a + terminfo entry corresponding to <B>TERM</B>. Use of this feature + is not recommended, as it essentially includes an entire + termcap compiler in the <B>ncurses</B> startup code, at + significant cost in core and startup cycles. + + The <B>ncurses</B> library includes facilities for capturing + mouse events on certain terminals (including xterm). See + the <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B> manual page for details. + + The <B>ncurses</B> library includes facilities for responding to + window resizing events, e.g., when running in an xterm. + See the <B><A HREF="resizeterm.3x.html">resizeterm(3x)</A></B> and <B><A HREF="wresize.3x.html">wresize(3x)</A></B> manual pages for + details. In addition, the library may be configured with + a SIGWINCH handler. + + The <B>ncurses</B> library extends the fixed set of function key + capabilities of terminals by allowing the application + designer to define additional key sequences at runtime. + See the <B><A HREF="define_key.3x.html">define_key(3x)</A></B> and <B><A HREF="keyok.3x.html">keyok(3x)</A></B> manual pages for + details. + + The <B>ncurses</B> library can exploit the capabilities of + terminals which implement the ISO-6429 SGR 39 and SGR 49 + controls, which allow an application to reset the terminal + to its original foreground and background colors. From + the users' perspective, the application is able to draw + colored text on a background whose color is set + independently, providing better control over color + contrasts. See the <B><A HREF="use_default_colors.3x.html">use_default_colors(3x)</A></B> manual page for + details. + The <B>ncurses</B> library includes a function for directing + application output to a printer attached to the terminal + device. See the <B><A HREF="curs_print.3x.html">curs_print(3x)</A></B> manual page for details. + + +</PRE> +<H2>PORTABILITY</H2><PRE> + The <B>ncurses</B> library is intended to be BASE-level + conformant with the XSI Curses standard. Certain portions + of the EXTENDED XSI Curses functionality (including color + support) are supported. The following EXTENDED XSI Curses + calls in support of wide (multibyte) characters are not + yet implemented: <B>add_wch</B>, <B>add_wchnstr</B>, <B>add_wchstr</B>, + <B>addnwstr</B>, <B>addwstr</B>, <B>bkgrnd</B>, <B>bkgrndset</B>, <B>border_set</B>, <B>box_set</B>, + <B>echo_wchar</B>, <B>erasewchar</B>, <B>get_wch</B>, <B>get_wstr</B>, <B>getbkgrnd</B>, + <B>getcchar</B>, <B>getn_wstr</B>, <B>getwchtype</B>, <B>hline_set</B>, <B>in_wch</B>, + <B>in_wchnstr</B>, <B>in_wchstr</B>, <B>innwstr</B>, <B>ins_nwstr</B>, <B>ins_wch</B>, + <B>ins_wstr</B>, <B>inwchnstr</B>, <B>inwchstr</B>, <B>inwstr</B>, <B>key_name</B>, + <B>killwchar</B>, <B>mvadd_wch</B>, <B>mvadd_wchnstr</B>, <B>mvadd_wchstr</B>, + <B>mvaddnwstr</B>, <B>mvaddwstr</B>, <B>mvget_wch</B>, <B>mvget_wstr</B>, <B>mvgetn_wstr</B>, + <B>mvhline_set</B>, <B>mvin_wch</B>, <B>mvinnwstr</B>, <B>mvins_nwstr</B>, <B>mvins_wch</B>, + <B>mvins_wstr</B>, <B>mvinwchnstr</B>, <B>mvinwchstr</B>, <B>mvinwchstr</B>, <B>mvinwstr</B>, + <B>mvvline_set</B>, <B>mvwadd_wch</B>, <B>mvwadd_wchnstr</B>, <B>mvwadd_wchstr</B>, + <B>mvwaddnwstr</B>, <B>mvwaddwstr</B>, <B>mvwget_ch</B>, <B>mvwget_wch</B>, + <B>mvwget_wstr</B>, <B>mvwgetn_wstr</B>, <B>mvwhline_set</B>, <B>mvwin_wch</B>, + <B>mvwin_wchnstr</B>, <B>mvwin_wchstr</B>, <B>mvwinnwstr</B>, <B>mvwins_nwstr</B>, + <B>mvwins_wch</B>, <B>mvwins_wstr</B>, <B>mvwinwchnstr</B>. <B>mvwinwstr</B>, + <B>mvwvline_set</B>, <B>pecho_wchar</B>, <B>setcchar</B>, <B>slk_wset</B>, <B>term_attrs</B>, + <B>unget_wch</B>, <B>vhline_set</B>, <B>vid_attr</B>, <B>vid_puts</B>, <B>vline_set</B>, + <B>wadd_wch</B>, <B>wadd_wchnstr</B>, <B>wadd_wchstr</B>, <B>waddnwstr</B>, <B>waddwstr</B>, + <B>waddwstr</B>, <B>wbkgrnd</B>, <B>wbkgrndset</B>, <B>wbkgrndset</B>, <B>wborder_set</B>, + <B>wecho_wchar</B>, <B>wecho_wchar</B>, <B>wget_wch</B>, <B>wget_wstr</B>, <B>wgetbkgrnd</B>, + <B>wgetn_wstr</B>, <B>whline_set</B>, <B>win_wch</B>, <B>win_wchnstr</B>, <B>win_wchstr</B>, + <B>winnwstr</B>, <B>wins_nwstr</B>, <B>wins_wch</B>, <B>wins_wstr</B>, <B>winwchnstr</B>, + <B>winwchstr</B>, <B>winwstr</B>, <B>wunctrl</B>, <B>wvline_set</B>, + + A small number of local differences (that is, individual + differences between the XSI Curses and <B>ncurses</B> calls) are + described in <B>PORTABILITY</B> sections of the library man + pages. + + The routine <B>has_key</B> is not part of XPG4, nor is it present + in SVr4. See the <B><A HREF="curs_getch.3x.html">curs_getch(3x)</A></B> manual page for details. + + The routine <B>slk_attr</B> is not part of XPG4, nor is it + present in SVr4. See the <B><A HREF="curs_slk.3x.html">curs_slk(3x)</A></B> manual page for + details. + + The routines <B>getmouse</B>, <B>mousemask</B>, <B>ungetmouse</B>, + <B>mouseinterval</B>, and <B>wenclose</B> relating to mouse interfacing + are not part of XPG4, nor are they present in SVr4. See + the <B><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></B> manual page for details. + + The routine <B>mcprint</B> was not present in any previous curses + implementation. See the <B><A HREF="curs_print.3x.html">curs_print(3x)</A></B> manual page for + details. + The routine <B>wresize</B> is not part of XPG4, nor is it present + in SVr4. See the <B><A HREF="wresize.3x.html">wresize(3x)</A></B> manual page for details. + + In historic curses versions, delays embedded in the + capabilities <B>cr</B>, <B>ind</B>, <B>cub1</B>, <B>ff</B> and <B>tab</B> activated + corresponding delay bits in the UNIX tty driver. In this + implementation, all padding is done by NUL sends. This + method is slightly more expensive, but narrows the + interface to the UNIX kernel significantly and increases + the package's portability correspondingly. + + In the XSI standard and SVr4 manual pages, many entry + points have prototype arguments of the for <B>char</B> <B>*const</B> (or + <B>cchar_t</B> <B>*const</B>, or <B>wchar_t</B> <B>*const</B>, or <B>void</B> <B>*const</B>). + Depending on one's interpretation of the ANSI C standard + (see section 3.5.4.1), these declarations are either (a) + meaningless, or (b) meaningless and illegal. The + declaration <B>const</B> <B>char</B> <B>*x</B> is a modifiable pointer to + unmodifiable data, but <B>char</B> <B>*const</B> <B>x</B>' is an unmodifiable + pointer to modifiable data. Given that C passes arguments + by value, <B><type></B> <B>*const</B> as a formal type is at best + dubious. Some compilers choke on the prototypes. + Therefore, in this implementation, they have been changed + to <B>const</B> <B><type></B> <B>*</B> globally. + + +</PRE> +<H2>NOTES</H2><PRE> + The header file <B><curses.h></B> automatically includes the + header files <B><stdio.h></B> and <B><unctrl.h></B>. + + If standard output from a <B>ncurses</B> program is re-directed + to something which is not a tty, screen updates will be + directed to standard error. This was an undocumented + feature of AT&T System V Release 3 curses. + + +</PRE> +<H2>AUTHORS</H2><PRE> + Zeyd M. Ben-Halim, Eric S. Raymond, Thomas E. Dickey. + Based on pcurses by Pavel Curtis. + + + + + + + + + + + + + + + + + +</PRE> +<HR> +<ADDRESS> +Man(1) output converted with +<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a> +</ADDRESS> +</BODY> +</HTML> |