-<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--
* t
****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2012,2013 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_util.3x,v 1.36 2012/07/21 18:51:10 tom Exp @
+ * @Id: curs_util.3x,v 1.37 2013/07/20 19:43:45 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 http://invisible-island.net/scripts/readme.html#others_scripts">
<TITLE>curs_util 3x</TITLE>
<link rev=made href="mailto:bug-ncurses@gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<H1>curs_util 3x</H1>
<HR>
<PRE>
-<!-- Manpage converted by man2html 3.0.1 -->
<STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG> <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
</PRE>
-<H2>NAME</H2><PRE>
+<H2><a name="h2-NAME">NAME</a></H2><PRE>
<STRONG>delay_output</STRONG>, <STRONG>filter</STRONG>, <STRONG>flushinp</STRONG>, <STRONG>getwin</STRONG>, <STRONG>key_name</STRONG>, <STRONG>keyname</STRONG>,
<STRONG>nofilter</STRONG>, <STRONG>putwin</STRONG>, <STRONG>unctrl</STRONG>, <STRONG>use_env</STRONG>, <STRONG>use_tioctl</STRONG>, <STRONG>wunctrl</STRONG> -
miscellaneous <STRONG>curses</STRONG> utility routines
</PRE>
-<H2>SYNOPSIS</H2><PRE>
+<H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
<STRONG>#include</STRONG> <STRONG><curses.h></STRONG>
<STRONG>char</STRONG> <STRONG>*unctrl(chtype</STRONG> <STRONG>c);</STRONG>
</PRE>
-<H2>DESCRIPTION</H2><PRE>
+<H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
The <STRONG>unctrl</STRONG> routine returns a character string which is a
printable representation of the character <EM>c</EM>, ignoring at-
tributes. Control characters are displayed in the <STRONG>^</STRONG><EM>X</EM> no-
</PRE>
-<H2>RETURN VALUE</H2><PRE>
+<H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
Except for <STRONG>flushinp</STRONG>, routines that return an integer re-
turn <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> (SVr4 specifies only "an in-
teger value other than <STRONG>ERR</STRONG>") upon successful completion.
</PRE>
-<H2>PORTABILITY</H2><PRE>
+<H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
The XSI Curses standard, Issue 4 describes these func-
tions. It states that <STRONG>unctrl</STRONG> and <STRONG>wunctrl</STRONG> will return a
null pointer if unsuccessful, but does not define any er-
control code. If <STRONG>use_legacy_coding</STRONG> has been called
with a <STRONG>2</STRONG> parameter, <STRONG>unctrl</STRONG> returns the parameter,
i.e., a one-character string with the parameter as
- the first character. Otherwise, it returns ``~@'',
- ``~A'', etc., analogous to ``^@'', ``^A'', C0 con-
- trols.
+ the first character. Otherwise, it returns "~@",
+ "~A", etc., analogous to "^@", "^A", C0 controls.
- X/Open Curses does not document whether <STRONG>unctrl</STRONG> can
- be called before initializing curses. This imple-
- mentation permits that, and returns the ``~@'',
- etc., values in that case.
+ X/Open Curses does not document whether <STRONG>unctrl</STRONG> can
+ be called before initializing curses. This imple-
+ mentation permits that, and returns the "~@", etc.,
+ values in that case.
- <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG>
+ <STRONG>o</STRONG> parameter values outside the 0 to 255 range. <STRONG>unc-</STRONG>
<STRONG>trl</STRONG> returns a null pointer.
The SVr4 documentation describes the action of <STRONG>filter</STRONG> only
- in the vaguest terms. The description here is adapted
- from the XSI Curses standard (which erroneously fails to
+ in the vaguest terms. The description here is adapted
+ from the XSI Curses standard (which erroneously fails to
describe the disabling of <STRONG>cuu</STRONG>).
- The strings returned by <STRONG>unctrl</STRONG> in this implementation are
- determined at compile time, showing C1 controls from the
- upper-128 codes with a `~' prefix rather than `^'. Other
- implementations have different conventions. For example,
- they may show both sets of control characters with `^',
- and strip the parameter to 7 bits. Or they may ignore C1
- controls and treat all of the upper-128 codes as print-
+ The strings returned by <STRONG>unctrl</STRONG> in this implementation are
+ determined at compile time, showing C1 controls from the
+ upper-128 codes with a `~' prefix rather than `^'. Other
+ implementations have different conventions. For example,
+ they may show both sets of control characters with `^',
+ and strip the parameter to 7 bits. Or they may ignore C1
+ controls and treat all of the upper-128 codes as print-
able. This implementation uses 8 bits but does not modify
the string to reflect locale. The <STRONG>use_legacy_coding</STRONG> func-
tion allows the caller to change the output of <STRONG>unctrl</STRONG>.
- Likewise, the <STRONG>meta</STRONG> function allows the caller to change
- the output of <STRONG>keyname</STRONG>, i.e., it determines whether to use
- the `M-' prefix for ``meta'' keys (codes in the range 128
- to 255). Both <STRONG>use_legacy_coding</STRONG> and <STRONG>meta</STRONG> succeed only af-
- ter curses is initialized. X/Open Curses does not docu-
- ment the treatment of codes 128 to 159. When treating
- them as ``meta'' keys (or if <STRONG>keyname</STRONG> is called before ini-
- tializing curses), this implementation returns strings
- ``M-^@'', ``M-^A'', etc.
-
- The <STRONG>keyname</STRONG> function may return the names of user-defined
- string capabilities which are defined in the terminfo en-
- try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto-
- matically assigns at run-time keycodes to user-defined
- strings which begin with "k". The keycodes start at
- KEY_MAX, but are not guaranteed to be the same value for
- different runs because user-defined codes are merged from
- all terminal descriptions which have been loaded. The
- <STRONG>use_extended_names</STRONG> function controls whether this data is
- loaded when the terminal description is read by the li-
+ Likewise, the <STRONG>meta</STRONG> function allows the caller to change
+ the output of <STRONG>keyname</STRONG>, i.e., it determines whether to use
+ the `M-' prefix for "meta" keys (codes in the range 128 to
+ 255). Both <STRONG>use_legacy_coding</STRONG> and <STRONG>meta</STRONG> succeed only after
+ curses is initialized. X/Open Curses does not document
+ the treatment of codes 128 to 159. When treating them as
+ "meta" keys (or if <STRONG>keyname</STRONG> is called before initializing
+ curses), this implementation returns strings "M-^@",
+ "M-^A", etc.
+
+ The <STRONG>keyname</STRONG> function may return the names of user-defined
+ string capabilities which are defined in the terminfo en-
+ try via the <STRONG>-x</STRONG> option of <STRONG>tic</STRONG>. This implementation auto-
+ matically assigns at run-time keycodes to user-defined
+ strings which begin with "k". The keycodes start at
+ KEY_MAX, but are not guaranteed to be the same value for
+ different runs because user-defined codes are merged from
+ all terminal descriptions which have been loaded. The
+ <STRONG>use_extended_names</STRONG> function controls whether this data is
+ loaded when the terminal description is read by the li-
brary.
- The <STRONG>nofilter</STRONG> and <STRONG>use_tioctl</STRONG> routines are specific to
- ncurses. They were not supported on Version 7, BSD or
+ The <STRONG>nofilter</STRONG> and <STRONG>use_tioctl</STRONG> routines are specific to
+ ncurses. 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
NCURSES_VERSION.
</PRE>
-<H2>SEE ALSO</H2><PRE>
+<H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
<STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>, <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG>curs_ker-</STRONG>
- <STRONG><A HREF="curs_kernel.3x.html">nel(3x)</A></STRONG>, <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>lega-</STRONG>
+ <STRONG><A HREF="curs_kernel.3x.html">nel(3x)</A></STRONG>, <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>lega-</STRONG>
<STRONG><A HREF="legacy_coding.3x.html">cy_coding(3x)</A></STRONG>.
<STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
</PRE>
-<HR>
-<ADDRESS>
-Man(1) output converted with
-<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
-</ADDRESS>
+<div class="nav">
+<ul>
+<li><a href="#h2-NAME">NAME</a></li>
+<li><a href="#h2-SYNOPSIS">SYNOPSIS</a></li>
+<li><a href="#h2-DESCRIPTION">DESCRIPTION</a></li>
+<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+</ul>
+</div>
</BODY>
</HTML>