<!--
****************************************************************************
- * Copyright (c) 1998-2013,2015 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2015,2016 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inopts.3x,v 1.19 2015/04/11 10:21:38 tom Exp @
+ * @Id: curs_inopts.3x,v 1.23 2016/10/22 19:54:35 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
-</PRE>
-<H2><a name="h2-NAME">NAME</a></H2><PRE>
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
<STRONG>cbreak</STRONG>, <STRONG>nocbreak</STRONG>, <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>,
<STRONG>keypad</STRONG>, <STRONG>meta</STRONG>, <STRONG>nodelay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>raw</STRONG>, <STRONG>noraw</STRONG>, <STRONG>noqiflush</STRONG>,
<STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, <STRONG>wtimeout</STRONG>, <STRONG>typeahead</STRONG> - <STRONG>curses</STRONG> input
options
-</PRE>
-<H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
<STRONG>int</STRONG> <STRONG>cbreak(void);</STRONG>
<STRONG>int</STRONG> <STRONG>typeahead(int</STRONG> <STRONG>fd);</STRONG>
-</PRE>
-<H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The <STRONG>ncurses</STRONG> library provides several functions which let
- an application change way input from the terminal is han-
- dled. Some are global, applying to all windows. Others
- apply only to a specific window. Window-specific settings
- are not automatically applied to new or derived windows.
- An application must apply these to each window, if the
- same behavior is needed.
+ an application change the way input from the terminal is
+ handled. Some are global, applying to all windows. Oth-
+ ers apply only to a specific window. Window-specific set-
+ tings are not automatically applied to new or derived win-
+ dows. An application must apply these to each window, if
+ the same behavior is needed.
-</PRE>
-<H3><a name="h3-cbreak">cbreak</a></H3><PRE>
+</PRE><H3><a name="h3-cbreak">cbreak</a></H3><PRE>
Normally, the tty driver buffers typed characters until a
newline or carriage return is typed. The <STRONG>cbreak</STRONG> routine
disables line buffering and erase/kill character-process-
these routines interact with <STRONG>echo</STRONG> and <STRONG>noecho</STRONG>.]
-</PRE>
-<H3><a name="h3-echo_noecho">echo/noecho</a></H3><PRE>
+</PRE><H3><a name="h3-echo_noecho">echo/noecho</a></H3><PRE>
The <STRONG>echo</STRONG> and <STRONG>noecho</STRONG> routines control whether characters
typed by the user are echoed by <STRONG>getch</STRONG> as they are typed.
Echoing by the tty driver is always disabled, but initial-
interact with <STRONG>cbreak</STRONG> and <STRONG>nocbreak</STRONG>.]
-</PRE>
-<H3><a name="h3-halfdelay">halfdelay</a></H3><PRE>
+</PRE><H3><a name="h3-halfdelay">halfdelay</a></H3><PRE>
The <STRONG>halfdelay</STRONG> routine is used for half-delay mode, which
is similar to <STRONG>cbreak</STRONG> mode in that characters typed by the
user are immediately available to the program. However,
after blocking for <EM>tenths</EM> tenths of seconds, ERR is re-
- turned if nothing has been typed. The value of <STRONG>tenths</STRONG>
+ turned if nothing has been typed. The value of <EM>tenths</EM>
must be a number between 1 and 255. Use <STRONG>nocbreak</STRONG> to leave
half-delay mode.
-</PRE>
-<H3><a name="h3-intrflush">intrflush</a></H3><PRE>
- If the <STRONG>intrflush</STRONG> option is enabled, (<EM>bf</EM> is <STRONG>TRUE</STRONG>), when an
+</PRE><H3><a name="h3-intrflush">intrflush</a></H3><PRE>
+ If the <STRONG>intrflush</STRONG> option is enabled (<EM>bf</EM> is <STRONG>TRUE</STRONG>), and an
interrupt key is pressed on the keyboard (interrupt,
- break, quit) all output in the tty driver queue will be
+ break, quit), all output in the tty driver queue will be
flushed, giving the effect of faster response to the in-
terrupt, but causing <STRONG>curses</STRONG> to have the wrong idea of what
- is on the screen. Disabling (<EM>bf</EM> is <STRONG>FALSE</STRONG>), the option
- prevents the flush. The default for the option is inher-
- ited from the tty driver settings. The window argument is
- ignored.
+ is on the screen. Disabling the option (<EM>bf</EM> is <STRONG>FALSE</STRONG>) pre-
+ vents the flush. The default for the option is inherited
+ from the tty driver settings. The window argument is ig-
+ nored.
-</PRE>
-<H3><a name="h3-keypad">keypad</a></H3><PRE>
+</PRE><H3><a name="h3-keypad">keypad</a></H3><PRE>
The <STRONG>keypad</STRONG> option enables the keypad of the user's termi-
nal. If enabled (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the user can press a func-
tion key (such as an arrow key) and <STRONG>wgetch</STRONG> returns a sin-
keypad is <STRONG>FALSE</STRONG>.
-</PRE>
-<H3><a name="h3-meta">meta</a></H3><PRE>
+</PRE><H3><a name="h3-meta">meta</a></H3><PRE>
Initially, whether the terminal returns 7 or 8 significant
bits on input depends on the control mode of the tty driv-
er [see <STRONG>termio(7)</STRONG>]. To force 8 bits to be returned, in-
<STRONG>FALSE</STRONG>) is called.
-</PRE>
-<H3><a name="h3-nodelay">nodelay</a></H3><PRE>
+</PRE><H3><a name="h3-nodelay">nodelay</a></H3><PRE>
The <STRONG>nodelay</STRONG> option causes <STRONG>getch</STRONG> to be a non-blocking call.
If no input is ready, <STRONG>getch</STRONG> returns <STRONG>ERR</STRONG>. If disabled (<EM>bf</EM>
is <STRONG>FALSE</STRONG>), <STRONG>getch</STRONG> waits until a key is pressed.
typed by a user.
-</PRE>
-<H3><a name="h3-raw_noraw">raw/noraw</a></H3><PRE>
+</PRE><H3><a name="h3-raw_noraw">raw/noraw</a></H3><PRE>
The <STRONG>raw</STRONG> and <STRONG>noraw</STRONG> routines place the terminal into or out
of raw mode. Raw mode is similar to <STRONG>cbreak</STRONG> mode, in that
characters typed are immediately passed through to the us-
bits in the tty driver that are not set by <STRONG>curses</STRONG>.
-</PRE>
-<H3><a name="h3-noqiflush">noqiflush</a></H3><PRE>
+</PRE><H3><a name="h3-noqiflush">noqiflush</a></H3><PRE>
When the <STRONG>noqiflush</STRONG> routine is used, normal flush of input
and output queues associated with the <STRONG>INTR</STRONG>, <STRONG>QUIT</STRONG> and <STRONG>SUSP</STRONG>
characters will not be done [see <STRONG>termio(7)</STRONG>]. When <STRONG>qiflush</STRONG>
is called, the queues will be flushed when these control
- characters are read. You may want to call <STRONG>noqiflush()</STRONG> in
- a signal handler if you want output to continue as though
+ characters are read. You may want to call <STRONG>noqiflush</STRONG> in a
+ signal handler if you want output to continue as though
the interrupt had not occurred, after the handler exits.
-</PRE>
-<H3><a name="h3-timeout_wtimeout">timeout/wtimeout</a></H3><PRE>
+</PRE><H3><a name="h3-timeout_wtimeout">timeout/wtimeout</a></H3><PRE>
The <STRONG>timeout</STRONG> and <STRONG>wtimeout</STRONG> routines set blocking or non-
blocking read for a given window. If <EM>delay</EM> is negative,
blocking read is used (i.e., waits indefinitely for in-
<EM>lay</EM> milliseconds (where <EM>delay</EM> is positive).
-</PRE>
-<H3><a name="h3-typeahead">typeahead</a></H3><PRE>
+</PRE><H3><a name="h3-typeahead">typeahead</a></H3><PRE>
The <STRONG>curses</STRONG> library does "line-breakout optimization" by
looking for typeahead periodically while updating the
screen. If input is found, and it is coming from a tty,
typeahead checking is done.
-</PRE>
-<H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
All routines that return an integer return <STRONG>ERR</STRONG> upon fail-
ure and OK (SVr4 specifies only "an integer value other
than <STRONG>ERR</STRONG>") upon successful completion, unless otherwise
the range 1..255.
-</PRE>
-<H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
These functions are described in the XSI Curses standard,
Issue 4.
When <STRONG>keypad</STRONG> is first enabled, ncurses loads the key-defi-
nitions for the current terminal description. If the ter-
minal description includes extended string capabilities,
- e.g., from using the <STRONG>-x</STRONG> option of tic, then ncurses also
+ e.g., from using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>, then ncurses also
defines keys for the capabilities whose names begin with
"k". The corresponding keycodes are generated and (de-
pending on previous loads of terminal descriptions) may
curses key-names). On the other hand, an application can
use <STRONG>define_key</STRONG> to establish a specific keycode for a given
string. This makes it possible for an application to
- check for an extended capability's presence with <EM>tigetstr</EM>,
+ check for an extended capability's presence with <STRONG>tigetstr</STRONG>,
and reassign the keycode to match its own needs.
Low-level applications can use <STRONG>tigetstr</STRONG> to obtain the def-
used.
-</PRE>
-<H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
Note that <STRONG>echo</STRONG>, <STRONG>noecho</STRONG>, <STRONG>halfdelay</STRONG>, <STRONG>intrflush</STRONG>, <STRONG>meta</STRONG>, <STRONG>node-</STRONG>
<STRONG>lay</STRONG>, <STRONG>notimeout</STRONG>, <STRONG>noqiflush</STRONG>, <STRONG>qiflush</STRONG>, <STRONG>timeout</STRONG>, and <STRONG>wtimeout</STRONG>
may be macros.
recommended.
-</PRE>
-<H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
+</PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,
<STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>, <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>, <STRONG>termio(7)</STRONG>