]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/curs_get_wch.3x.html
ncurses 6.4 - patch 20231223
[ncurses.git] / doc / html / man / curs_get_wch.3x.html
index ed90a95417b7558465f9f78c8179413211593bda..c639d28aca4e69901bb2f4e74ef69e376083f57e 100644 (file)
@@ -1,7 +1,7 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
-<!-- 
+<!--
   ****************************************************************************
-  * Copyright (c) 2002-2010,2012 Free Software Foundation, Inc.              *
+  * Copyright 2018-2022,2023 Thomas E. Dickey                                *
+  * Copyright 2002-2016,2017 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_get_wch.3x,v 1.8 2012/11/03 23:03:59 tom Exp @
+  * @Id: curs_get_wch.3x,v 1.31 2023/12/23 16:35:10 tom Exp @
 -->
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
-<TITLE>curs_get_wch 3x</TITLE>
-<link rev=made href="mailto:bug-ncurses@gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<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_get_wch 3x 2023-12-23 ncurses 6.4 Library calls</TITLE>
+<link rel="author" href="mailto:bug-ncurses@gnu.org">
+
 </HEAD>
 <BODY>
-<H1>curs_get_wch 3x</H1>
-<HR>
+<H1 class="no-header">curs_get_wch 3x 2023-12-23 ncurses 6.4 Library calls</H1>
 <PRE>
-<!-- Manpage converted by man2html 3.0.1 -->
-<STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>                                       <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
+<STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 
 
 
 
-</PRE>
-<H2>NAME</H2><PRE>
-       <STRONG>get_wch</STRONG>,  <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, <STRONG>mvwget_wch</STRONG>, <STRONG>unget_wch</STRONG> - get
-       (or push back) a wide character from curses terminal  key-
-       board
+</PRE><H2><a name="h2-NAME">NAME</a></H2><PRE>
+       <STRONG>get_wch</STRONG>,  <STRONG>wget_wch</STRONG>,  <STRONG>mvget_wch</STRONG>,  <STRONG>mvwget_wch</STRONG>,  <STRONG>unget_wch</STRONG>  - get (or push
+       back) a wide character from <EM>curses</EM> terminal keyboard
 
 
-</PRE>
-<H2>SYNOPSIS</H2><PRE>
+</PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
        <STRONG>int</STRONG> <STRONG>get_wch(wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>wget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvget_wch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvwget_wch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>,</STRONG> <STRONG>wint_t</STRONG> <STRONG>*</STRONG><EM>wch</EM><STRONG>);</STRONG>
+
        <STRONG>int</STRONG> <STRONG>unget_wch(const</STRONG> <STRONG>wchar_t</STRONG> <EM>wch</EM><STRONG>);</STRONG>
 
 
-</PRE>
-<H2>DESCRIPTION</H2><PRE>
-       The <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> functions
-       read a character from the  terminal  associated  with  the
-       current  or  specified  window.   In  no-delay mode, if no
-       input is waiting, the value <STRONG>ERR</STRONG>  is  returned.   In  delay
-       mode,  the  program  waits  until  the  system passes text
-       through to the  program.   Depending  on  the  setting  of
-       <STRONG>cbreak</STRONG>,  this  is  after  one  character (cbreak mode), or
-       after the first newline (nocbreak  mode).   In  half-delay
-       mode,  the  program waits until the user types a character
-       or the specified timeout interval has elapsed.
-
-       Unless <STRONG>noecho</STRONG> has been set, these routines echo the  char-
-       acter into the designated window.
-
-       If  the window is not a pad and has been moved or modified
-       since the last call to <STRONG>wrefresh</STRONG>, <STRONG>wrefresh</STRONG> will  be  called
-       before another character is read.
-
-       If  <STRONG>keypad</STRONG>  is  enabled,  these  functions  respond to the
-       pressing of a function key by setting the  object  pointed
-       to  by  <EM>wch</EM>  to  the  corresponding  <STRONG>KEY_</STRONG> value defined in
-       <STRONG>&lt;curses.h&gt;</STRONG> and returning  <STRONG>KEY_CODE_YES</STRONG>.   If  a  character
-       (such as escape) that could be the beginning of a function
-       key is received, curses sets a timer.  If the remainder of
-       the  sequence  does  arrive  within  the  designated time,
-       curses passes through  the  character;  otherwise,  curses
-       returns  the  function  key  value.  For this reason, many
-       terminals experience a  delay  between  the  time  a  user
-       presses the escape key and the time the escape is returned
-       to the program.
-
-       The <STRONG>unget_wch</STRONG> function pushes the wide character <EM>wch</EM>  back
-       onto the head of the input queue, so the wide character is
-       returned by the next call to <STRONG>get_wch</STRONG>.  The pushback of one
-       character  is  guaranteed.  If the program calls <STRONG>unget_wch</STRONG>
-       too many times without an intervening call to <STRONG>get_wch</STRONG>, the
-       operation may fail.
+</PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
 
+</PRE><H3><a name="h3-wget_wch">wget_wch</a></H3><PRE>
+       The <STRONG>get_wch</STRONG>, <STRONG>wget_wch</STRONG>,  <STRONG>mvget_wch</STRONG>,  and  <STRONG>mvwget_wch</STRONG>  functions  read  a
+       character  from  the  terminal associated with the current or specified
+       window.  In no-delay mode, if no input is waiting,  the  value  <STRONG>ERR</STRONG>  is
+       returned.   In  delay  mode,  the program waits until the system passes
+       text through to the program.  Depending on the setting of <STRONG>cbreak</STRONG>,  this
+       is  after  one  character  (cbreak  mode),  or  after the first newline
+       (nocbreak mode).  In half-delay mode, the program waits until the  user
+       types a character or the specified timeout interval has elapsed.
 
-</PRE>
-<H2>NOTES</H2><PRE>
-       The  header  file  <STRONG>&lt;curses.h&gt;</STRONG>  automatically  includes the
-       header file <STRONG>&lt;stdio.h&gt;</STRONG>.
+       Unless  <STRONG>noecho</STRONG> has been set, these routines echo the character into the
+       designated window.
 
-       Applications should not define the escape key by itself as
-       a single-character function.
+       If the window is not a pad and has been moved  or  modified  since  the
+       last call to <STRONG>wrefresh</STRONG>, <STRONG>wrefresh</STRONG> will be called before another character
+       is read.
 
-       When  using  <STRONG>get_wch</STRONG>,  <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, or <STRONG>mvwget_wch</STRONG>,
-       applications should not use <STRONG>nocbreak</STRONG> mode and <STRONG>echo</STRONG> mode at
-       the  same  time.  Depending on the state of the tty driver
-       when each character is  typed,  the  program  may  produce
-       undesirable results.
+       If <STRONG>keypad</STRONG> is enabled, these functions respond  to  the  pressing  of  a
+       function  key  by  setting  the object pointed to by <EM>wch</EM> to the keycode
+       assigned to  the  function  key,  and  returning  <STRONG>KEY_CODE_YES</STRONG>.   If  a
+       character  (such  as  escape) that could be the beginning of a function
+       key is received, curses sets a timer.  If the remainder of the sequence
+       does  arrive  within  the  designated  time,  curses passes through the
+       character; otherwise, curses returns the function key value.  For  this
+       reason,  many  terminals  experience  a  delay  between the time a user
+       presses the escape key and the time  the  escape  is  returned  to  the
+       program.
 
-       All functions except <STRONG>wget_wch</STRONG> and <STRONG>unget_wch</STRONG> may be macros.
+       The keycodes returned by these functions are the same as those returned
+       by <STRONG>wgetch</STRONG>:
 
+       <STRONG>o</STRONG>   The predefined function keys are listed  in  <STRONG>&lt;curses.h&gt;</STRONG>  as  macros
+           with  values  outside  the  range of 8-bit characters.  Their names
+           begin with <STRONG>KEY_</STRONG>.
 
-</PRE>
-<H2>RETURN VALUE</H2><PRE>
-       When  <STRONG>get_wch</STRONG>,  <STRONG>wget_wch</STRONG>,  <STRONG>mvget_wch</STRONG>, and <STRONG>mvwget_wch</STRONG> func-
-       tions successfully report the pressing of a function  key,
-       they return <STRONG>KEY_CODE_YES</STRONG>.  When they successfully report a
-       wide character, they return <STRONG>OK</STRONG>.   Otherwise,  they  return
-       <STRONG>ERR</STRONG>.
+       <STRONG>o</STRONG>   Other (user-defined) function  keys  which  may  be  defined  using
+           <STRONG><A HREF="define_key.3x.html">define_key(3x)</A></STRONG>  have no names, but also are expected to have values
+           outside the range of 8-bit characters.
 
-       Upon  successful completion, <STRONG>unget_wch</STRONG> returns <STRONG>OK</STRONG>.  Other-
-       wise, the function returns <STRONG>ERR</STRONG>.
 
-       Functions with a "mv" prefix first perform a cursor  move-
-       ment  using  <STRONG>wmove</STRONG>, and return an error if the position is
-       outside the window, or if the window pointer is null.
+</PRE><H3><a name="h3-unget_wch">unget_wch</a></H3><PRE>
+       The <STRONG>unget_wch</STRONG> function pushes the wide character <EM>wch</EM> back onto the head
+       of  the input queue, so the wide character is returned by the next call
+       to <STRONG>get_wch</STRONG>.  The pushback of  one  character  is  guaranteed.   If  the
+       program  calls  <STRONG>unget_wch</STRONG> too many times without an intervening call to
+       <STRONG>get_wch</STRONG>, the operation may fail.
 
+       Unlike  <STRONG>ungetch</STRONG>  and  <STRONG>wgetch</STRONG>,  <STRONG>unget_wch</STRONG>  cannot  distinguish   special
+       characters   returned   by   <STRONG>wget_wch</STRONG>  from  ordinary  characters.   An
+       application can push special keys which it may  read  via  <STRONG>wget_wch</STRONG>  by
+       checking  for  the  <STRONG>KEY_CODE_YES</STRONG>  result,  and  using <STRONG>ungetch</STRONG> for those
+       special keys.
 
-</PRE>
-<H2>SEE ALSO</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_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>,
-       <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
+
+</PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
+       When   <STRONG>get_wch</STRONG>,   <STRONG>wget_wch</STRONG>,   <STRONG>mvget_wch</STRONG>,   and   <STRONG>mvwget_wch</STRONG>   functions
+       successfully  report  the  pressing  of  a  function  key,  they return
+       <STRONG>KEY_CODE_YES</STRONG>.  When they successfully report  a  wide  character,  they
+       return <STRONG>OK</STRONG>.  Otherwise, they return <STRONG>ERR</STRONG>.
+
+       Upon  successful  completion,  <STRONG>unget_wch</STRONG>  returns  <STRONG>OK</STRONG>.   Otherwise, the
+       function returns <STRONG>ERR</STRONG>.
+
+       Functions with a "mv" prefix first  perform  a  cursor  movement  using
+       <STRONG>wmove</STRONG>, and return an error if the position is outside the window, or if
+       the window pointer is null.
+
+
+</PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
+       Applications should not define the escape key by itself  as  a  single-
+       character function.
+
+       When  using  <STRONG>get_wch</STRONG>,  <STRONG>wget_wch</STRONG>, <STRONG>mvget_wch</STRONG>, or <STRONG>mvwget_wch</STRONG>, applications
+       should not use <STRONG>nocbreak</STRONG> mode and <STRONG>echo</STRONG> mode at the same time.  Depending
+       on  the  state  of  the  tty  driver  when each character is typed, the
+       program may produce undesirable results.
+
+       All of these functions except <STRONG>wget_wch</STRONG> and <STRONG>unget_wch</STRONG> may be implemented
+       as macros.
+
+
+</PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
+       These functions are described in the XSI Curses standard, Issue 4.
+
+
+</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_inopts.3x.html">curs_inopts(3x)</A></STRONG>,    <STRONG><A HREF="curs_ins_wch.3x.html">curs_ins_wch(3x)</A></STRONG>,
+       <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>
 
 
 
-                                                       <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
+ncurses 6.4                       2023-12-23                  <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>
 </PRE>
-<HR>
-Man(1) output converted with <a href="http://invisible-island.net/scripts/readme.html#others_scripts">man2html</a>
+<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>
+<ul>
+<li><a href="#h3-wget_wch">wget_wch</a></li>
+<li><a href="#h3-unget_wch">unget_wch</a></li>
+</ul>
+</li>
+<li><a href="#h2-RETURN-VALUE">RETURN VALUE</a></li>
+<li><a href="#h2-NOTES">NOTES</a></li>
+<li><a href="#h2-PORTABILITY">PORTABILITY</a></li>
+<li><a href="#h2-SEE-ALSO">SEE ALSO</a></li>
+</ul>
+</div>
 </BODY>
 </HTML>