* sale, use or other dealings in this Software without prior written *
* authorization. *
****************************************************************************
- * @Id: curs_inopts.3x,v 1.47 2023/09/16 23:37:03 tom Exp @
+ * @Id: curs_inopts.3x,v 1.54 2023/09/23 22:24:15 tom Exp @
-->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_inopts 3x 2023-09-16 ncurses 6.4 Library calls</TITLE>
+<TITLE>curs_inopts 3x 2023-09-23 ncurses 6.4 Library calls</TITLE>
<link rel="author" href="mailto:bug-ncurses@gnu.org">
</HEAD>
<BODY>
-<H1 class="no-header">curs_inopts 3x 2023-09-16 ncurses 6.4 Library calls</H1>
+<H1 class="no-header">curs_inopts 3x 2023-09-23 ncurses 6.4 Library calls</H1>
<PRE>
<STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG> Library calls <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
<STRONG>int</STRONG> <STRONG>typeahead(int</STRONG> <EM>fd</EM><STRONG>);</STRONG>
- /* extensions */
+ <EM>/*</EM> <EM>extensions</EM> <EM>*/</EM>
<STRONG>int</STRONG> <STRONG>is_cbreak(void);</STRONG>
<STRONG>int</STRONG> <STRONG>is_echo(void);</STRONG>
<STRONG>int</STRONG> <STRONG>is_nl(void);</STRONG>
</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
- The <STRONG>ncurses</STRONG> library provides several functions which let an application
+ The <EM>ncurses</EM> library provides several functions which let an application
change the way input from the terminal is handled. Some are global,
applying to all windows. Others apply only to a specific window.
Window-specific settings are not automatically applied to new or
Initially the terminal may or may not be in <STRONG>cbreak</STRONG> mode, as the mode is
inherited; therefore, a program should call <STRONG>cbreak</STRONG> or <STRONG>nocbreak</STRONG>
- explicitly. Most interactive programs using <STRONG>curses</STRONG> set the <STRONG>cbreak</STRONG>
+ explicitly. Most interactive programs using <EM>curses</EM> set the <STRONG>cbreak</STRONG>
mode. Note that <STRONG>cbreak</STRONG> overrides <STRONG>raw</STRONG>. [See <STRONG><A HREF="curs_getch.3x.html">curs_getch(3x)</A></STRONG> for a
discussion of how these routines interact with <STRONG>echo</STRONG> and <STRONG>noecho</STRONG>.]
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 flushed, giving the effect of faster response
- to the interrupt, but causing <STRONG>curses</STRONG> to have the wrong idea of what is
+ to the interrupt, but causing <EM>curses</EM> to have the wrong idea of what is
on the screen. Disabling the option (<EM>bf</EM> is <STRONG>FALSE</STRONG>) prevents the flush.
The default for the option is inherited from the tty driver settings.
The window argument is ignored.
The <STRONG>keypad</STRONG> option enables the keypad of the user's terminal. If
enabled (<EM>bf</EM> is <STRONG>TRUE</STRONG>), the user can press a function key (such as an
arrow key) and <STRONG><A HREF="curs_getch.3x.html">wgetch(3x)</A></STRONG> returns a single value representing the
- function key, as in <STRONG>KEY_LEFT</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <STRONG>curses</STRONG> does
+ function key, as in <STRONG>KEY_LEFT</STRONG>. If disabled (<EM>bf</EM> is <STRONG>FALSE</STRONG>), <EM>curses</EM> does
not treat function keys specially and the program has to interpret the
escape sequences itself. If the keypad in the terminal can be turned
on (made to transmit) and off (made to work locally), turning on this
that in raw mode, the interrupt, quit, suspend, and flow control
characters are all passed through uninterpreted, instead of generating
a signal. The behavior of the BREAK key depends on other bits in the
- tty driver that are not set by <STRONG>curses</STRONG>.
+ tty driver that are not set by <EM>curses</EM>.
</PRE><H3><a name="h3-qiflush_noqiflush">qiflush/noqiflush</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
+ The <EM>curses</EM> 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, the current update is postponed until
<STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or <STRONG>doupdate</STRONG> is called again. This allows faster response
0 if the flag is reset, or
- -1 if the curses library was not initialized.
+ -1 if the <EM>curses</EM> library was not initialized.
- These routines are specific to ncurses. They were not supported on
+ These routines are specific to <EM>ncurses</EM>. They were not supported on
Version 7, BSD or System V implementations. It is recommended that any
- code depending on ncurses extensions be conditioned using
+ code depending on <EM>ncurses</EM> extensions be conditioned using
NCURSES_VERSION.
Except as noted in the section on extensions, these functions are
described in the XSI Curses standard, Issue 4.
- The ncurses library obeys the XPG4 standard and the historical practice
- of the AT&T curses implementations, in that the echo bit is cleared
- when curses initializes the terminal state. BSD curses differed from
+ The <EM>ncurses</EM> library obeys the XPG4 standard and the historical practice
+ of the AT&T <EM>curses</EM> implementations, in that the echo bit is cleared
+ when <EM>curses</EM> initializes the terminal state. BSD <EM>curses</EM> differed from
this slightly; it left the echo bit on at initialization, but the BSD
<STRONG>raw</STRONG> call turned it off as a side-effect. For best portability, set
<STRONG>echo</STRONG> or <STRONG>noecho</STRONG> explicitly just after initialization, even if your
The XSI Curses standard is ambiguous on the question of whether <STRONG>raw</STRONG>
should disable the CRLF translations controlled by <STRONG>nl</STRONG> and <STRONG>nonl</STRONG>. BSD
- curses did turn off these translations; AT&T curses (at least as late
+ <EM>curses</EM> did turn off these translations; AT&T <EM>curses</EM> (at least as late
as SVr1) did not. We chose to do so, on the theory that a programmer
requesting raw input wants a clean (ideally 8-bit clean) connection
that the operating system will not alter.
- When <STRONG>keypad</STRONG> is first enabled, ncurses loads the key-definitions for the
+ When <STRONG>keypad</STRONG> is first enabled, <EM>ncurses</EM> loads the key-definitions for the
current terminal description. If the terminal description includes
extended string capabilities, e.g., from using the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>,
- then ncurses also defines keys for the capabilities whose names begin
+ then <EM>ncurses</EM> also defines keys for the capabilities whose names begin
with "k". The corresponding keycodes are generated and (depending on
previous loads of terminal descriptions) may differ from one execution
of a program to the next. The generated keycodes are recognized by the
<STRONG>keyname</STRONG> function (which will then return a name beginning with "k"
- denoting the terminfo capability name rather than "K", used for curses
+ denoting the terminfo capability name rather than "K", used for <EM>curses</EM>
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
Low-level applications can use <STRONG>tigetstr</STRONG> to obtain the definition of any
particular string capability. Higher-level applications which use the
- curses <STRONG>wgetch</STRONG> and similar functions to return keycodes rely upon the
+ <EM>curses</EM> <STRONG>wgetch</STRONG> and similar functions to return keycodes rely upon the
order in which the strings are loaded. If more than one key definition
has the same string value, then <STRONG>wgetch</STRONG> can return only one keycode.
- Most curses implementations (including ncurses) load key definitions in
+ Most <EM>curses</EM> implementations (including <EM>ncurses</EM>) load key definitions in
the order defined by the array of string capability names. The last
key to be loaded determines the keycode which will be returned. In
- ncurses, you may also have extended capabilities interpreted as key
+ <EM>ncurses</EM>, you may also have extended capabilities interpreted as key
definitions. These are loaded after the predefined keys, and if a
capability's value is the same as a previously-loaded key definition,
the later definition is the one used.
-ncurses 6.4 2023-09-16 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+ncurses 6.4 2023-09-23 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
</PRE>
<div class="nav">
<ul>