X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fman%2Fcurs_util.3x.html;h=8181efa432f386223c3e02ac29ab60a833f53ba9;hp=46b73047c97b0a7d864e59248653d9dc57c047ef;hb=f86cbeb5f9bd96ab041d34039c35749a14965039;hpb=f70db18a0c3c6a828d8a5999be37239f01c9d98a;ds=sidebyside diff --git a/doc/html/man/curs_util.3x.html b/doc/html/man/curs_util.3x.html index 46b73047..8181efa4 100644 --- a/doc/html/man/curs_util.3x.html +++ b/doc/html/man/curs_util.3x.html @@ -1,7 +1,7 @@ @@ -57,7 +57,7 @@ #include <curses.h> char *unctrl(chtype c); - char *wunctrl(cchar_t *c); + wchar_t *wunctrl(cchar_t *c); char *keyname(int c); char *key_name(wchar_t w); void filter(void); @@ -76,17 +76,39 @@ tributes. Control characters are displayed in the ^X no- tation. Printing characters are displayed as is. The corresponding wunctrl returns a printable representation - of a wide-character. + of a wide character. The keyname routine returns a character string correspond- - ing to the key c. Control characters are displayed in the - ^X notation. Values above 128 are either meta characters, - shown in the M-X notation, or the names of function keys, - or null. The corresponding key_name returns a character - string corresponding to the wide-character value w. The - two functions do not return the same set of strings; the - latter returns null where the former would display a meta - character. + ing to the key c: + + o Printable characters are displayed as themselves, + e.g., a one-character string containing the key. + + o Control characters are displayed in the ^X nota- + tion. + + o DEL (character 127) is displayed as ^?. + + o Values above 128 are either meta characters (if the + screen has not been initialized, or if meta has + been called with a TRUE parameter), shown in the + M-X notation, or are displayed as themselves. In + the latter case, the values may not be printable; + this follows the X/Open specification. + + o Values above 256 may be the names of the names of + function keys. + + o Otherwise (if there is no corresponding name) the + function returns null, to denote an error. X/Open + also lists an "UNKNOWN KEY" return value, which + some implementations return rather than null. + + The corresponding key_name returns a character string cor- + responding to the wide-character value w. The two func- + tions do not return the same set of strings; the latter + returns null where the former would display a meta charac- + ter. The filter routine, if used, must be called before initscr or newterm are called. The effect is that, during those @@ -142,46 +164,82 @@ X/Open does not define any error conditions. In this im- plementation - flushinp - returns an error if the terminal was not ini- - tialized. + flushinp + returns an error if the terminal was not initial- + ized. + + meta returns an error if the terminal was not initial- + ized. - putwin - returns an error if the associated fwrite - calls return an error. + putwin + returns an error if the associated fwrite calls + return an error.

PORTABILITY

-       The  XSI  Curses  standard,  Issue 4 describes these func-
-       tions.  It states that unctrl and wunctrl  will  return  a
-       null  pointer if unsuccessful, but does not define any er-
-       ror conditions.
+       The XSI Curses standard, Issue  4  describes  these  func-
+       tions.   It  states  that unctrl and wunctrl will return a
+       null pointer if unsuccessful, but does not define any  er-
+       ror conditions.  This implementation checks for three cas-
+       es:
+
+          o   the parameter is a 7-bit US-ASCII  code.   This  is
+              the case that X/Open Curses documented.
+
+          o   the  parameter  is in the range 128-159, i.e., a C1
+              control code.  If use_legacy_coding has been called
+              with  a  2 parameter, unctrl 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.
+
+              X/Open  Curses does not document whether unctrl can
+              be called before initializing curses.  This  imple-
+              mentation  permits  that,  and  returns the ``~@'',
+              etc., values in that case.
+
+          o   parameter values outside the 0 to 255 range.   unc-
+              trl returns a null pointer.
 
        The SVr4 documentation describes the action of filter 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 cuu).
 
-       The  strings returned by unctrl 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-1280 codes as print-
+       The strings returned by unctrl 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 use_legacy_coding func-
        tion allows the caller to change the output of unctrl.
 
-       The keyname function may return the names of  user-defined
-       string  capabilities which are defined in the terminfo en-
-       try via the -x option of tic.  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.
+       Likewise,  the  meta  function allows the caller to change
+       the output of keyname, i.e., it determines whether to  use
+       the  `M-' prefix for ``meta'' keys (codes in the range 128
+       to 255).  Both use_legacy_coding and meta 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 keyname is called before ini-
+       tializing curses),  this  implementation  returns  strings
+       ``M-^@'', ``M-^A'', etc.
+
+       The  keyname function may return the names of user-defined
+       string capabilities which are defined in the terminfo  en-
+       try  via  the -x option of tic.  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
+       use_extended_names  function controls whether this data is
+       loaded when the terminal description is read  by  the  li-
+       brary.
 
        The  nofilter  routine is specific to ncurses.  It was not
        supported on Version 7, BSD or System  V  implementations.
@@ -192,7 +250,8 @@
 

SEE ALSO

        legacy_coding(3x), curses(3x), curs_initscr(3x), curs_ker-
-       nel(3x), curs_scr_dump(3x).
+       nel(3x),   curs_scr_dump(3x),   curs_variables(3x),  lega-
+       cy_coding(3x).