]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - doc/html/man/curs_getch.3x.html
ncurses 6.3 - patch 20220625
[ncurses.git] / doc / html / man / curs_getch.3x.html
index c84a03dec3bc580582dba61f9c35918e0ed61882..5a1afc5c3ccf745564869b5e96554fd5b0949d52 100644 (file)
@@ -1,7 +1,8 @@
-<!-- 
+<!--
   * t
   ****************************************************************************
   * t
   ****************************************************************************
-  * Copyright (c) 1998-2016,2017 Free Software Foundation, Inc.              *
+  * Copyright 2018-2021,2022 Thomas E. Dickey                                *
+  * Copyright 1998-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            *
   *                                                                          *
   * 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.                                                           *
   ****************************************************************************
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_getch.3x,v 1.50 2017/11/18 23:56:00 tom Exp @
+  * @Id: curs_getch.3x,v 1.63 2022/02/12 20:07: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">
 -->
 <!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">
+<meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
 <TITLE>curs_getch 3x</TITLE>
 <TITLE>curs_getch 3x</TITLE>
-<link rev=made href="mailto:bug-ncurses@gnu.org">
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<link rel="author" href="mailto:bug-ncurses@gnu.org">
+
 </HEAD>
 <BODY>
 <H1 class="no-header">curs_getch 3x</H1>
 </HEAD>
 <BODY>
 <H1 class="no-header">curs_getch 3x</H1>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
        <STRONG>int</STRONG> <STRONG>getch(void);</STRONG>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
        <STRONG>int</STRONG> <STRONG>getch(void);</STRONG>
-       <STRONG>int</STRONG> <STRONG>wgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win);</EM>
+       <STRONG>int</STRONG> <STRONG>wgetch(WINDOW</STRONG> <STRONG>*</STRONG><EM>win</EM><STRONG>);</STRONG>
+
        <STRONG>int</STRONG> <STRONG>mvgetch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvwgetch(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>int</STRONG> <STRONG>mvgetch(int</STRONG> <EM>y</EM><STRONG>,</STRONG> <STRONG>int</STRONG> <EM>x</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>mvwgetch(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>int</STRONG> <STRONG>ungetch(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
        <STRONG>int</STRONG> <STRONG>ungetch(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
+
+       /* extension */
        <STRONG>int</STRONG> <STRONG>has_key(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
 
 
        <STRONG>int</STRONG> <STRONG>has_key(int</STRONG> <EM>ch</EM><STRONG>);</STRONG>
 
 
            the  long  terminfo capability names for the keys, and were defined
            long ago, in the 1980s.
 
            the  long  terminfo capability names for the keys, and were defined
            long ago, in the 1980s.
 
-                  <EM>Name</EM>            <EM>Key</EM> <EM>name</EM>
+                  <STRONG>Name</STRONG>            <STRONG>Key</STRONG> <STRONG>name</STRONG>
                   -------------------------------------------------
                   KEY_BREAK       Break key
                   KEY_DOWN        The four arrow keys ...
                   -------------------------------------------------
                   KEY_BREAK       Break key
                   KEY_DOWN        The four arrow keys ...
                   KEY_ENTER       Enter or send
                   KEY_SRESET      Soft (partial) reset
                   KEY_RESET       Reset or hard reset
                   KEY_ENTER       Enter or send
                   KEY_SRESET      Soft (partial) reset
                   KEY_RESET       Reset or hard reset
+
                   KEY_PRINT       Print or copy
                   KEY_LL          Home down or bottom (lower left)
                   KEY_A1          Upper left of keypad
                   KEY_A3          Upper right of keypad
                   KEY_PRINT       Print or copy
                   KEY_LL          Home down or bottom (lower left)
                   KEY_A1          Upper left of keypad
                   KEY_A3          Upper right of keypad
-
                   KEY_B2          Center of keypad
                   KEY_C1          Lower left of keypad
                   KEY_C3          Lower right of keypad
                   KEY_B2          Center of keypad
                   KEY_C1          Lower left of keypad
                   KEY_C3          Lower right of keypad
                   KEY_HELP        Help key
                   KEY_MARK        Mark key
                   KEY_MESSAGE     Message key
                   KEY_HELP        Help key
                   KEY_MARK        Mark key
                   KEY_MESSAGE     Message key
-                  KEY_MOUSE       Mouse event read
+                  KEY_MOUSE       Mouse event occurred
                   KEY_MOVE        Move key
                   KEY_NEXT        Next object key
                   KEY_OPEN        Open key
                   KEY_MOVE        Move key
                   KEY_NEXT        Next object key
                   KEY_OPEN        Open key
                   KEY_SFIND       Shifted find key
                   KEY_SHELP       Shifted help key
                   KEY_SHOME       Shifted home key
                   KEY_SFIND       Shifted find key
                   KEY_SHELP       Shifted help key
                   KEY_SHOME       Shifted home key
-                  KEY_SIC         Shifted input key
+                  KEY_SIC         Shifted insert key
                   KEY_SLEFT       Shifted left arrow key
                   KEY_SMESSAGE    Shifted message key
                   KEY_SMOVE       Shifted move key
                   KEY_SLEFT       Shifted left arrow key
                   KEY_SMESSAGE    Shifted message key
                   KEY_SMOVE       Shifted move key
                   KEY_SPRINT      Shifted print key
                   KEY_SREDO       Shifted redo key
                   KEY_SREPLACE    Shifted replace key
                   KEY_SPRINT      Shifted print key
                   KEY_SREDO       Shifted redo key
                   KEY_SREPLACE    Shifted replace key
-                  KEY_SRIGHT      Shifted right arrow
+                  KEY_SRIGHT      Shifted right arrow key
                   KEY_SRSUME      Shifted resume key
                   KEY_SSAVE       Shifted save key
                   KEY_SSUSPEND    Shifted suspend key
                   KEY_SRSUME      Shifted resume key
                   KEY_SSAVE       Shifted save key
                   KEY_SSUSPEND    Shifted suspend key
 
        <STRONG>o</STRONG>   <STRONG>KEY_MOUSE</STRONG>  is returned for mouse-events (see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>).  This
            code relies upon whether or not <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG> has  been  enabled,  be-
 
        <STRONG>o</STRONG>   <STRONG>KEY_MOUSE</STRONG>  is returned for mouse-events (see <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>).  This
            code relies upon whether or not <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG> has  been  enabled,  be-
-           cause  (e.g., with <EM>xterm</EM> mouse prototocol) ncurses must read escape
-           sequences, just like a function key.
+           cause  (e.g., with <STRONG>xterm(1)</STRONG> mouse prototocol) ncurses must read es-
+           cape sequences, just like a function key.
 
 
 </PRE><H3><a name="h3-Testing-key-codes">Testing key-codes</a></H3><PRE>
 
 
 </PRE><H3><a name="h3-Testing-key-codes">Testing key-codes</a></H3><PRE>
        other than <STRONG>ERR</STRONG> (<STRONG>OK</STRONG> in the case of <STRONG>ungetch</STRONG>) upon successful completion.
 
           <STRONG>ungetch</STRONG>
        other than <STRONG>ERR</STRONG> (<STRONG>OK</STRONG> in the case of <STRONG>ungetch</STRONG>) upon successful completion.
 
           <STRONG>ungetch</STRONG>
-               returns ERR if there is no more room in the FIFO.
+               returns <STRONG>ERR</STRONG> if there is no more room in the FIFO.
 
           <STRONG>wgetch</STRONG>
 
           <STRONG>wgetch</STRONG>
-               returns ERR if the window pointer is null, or  if  its  timeout
+               returns <STRONG>ERR</STRONG> if the window pointer is null, or  if  its  timeout
                expires without having any data, or if the execution was inter-
                rupted by a signal (<STRONG>errno</STRONG> will be set to <STRONG>EINTR</STRONG>).
 
                expires without having any data, or if the execution was inter-
                rupted by a signal (<STRONG>errno</STRONG> will be set to <STRONG>EINTR</STRONG>).
 
 
        Programmers concerned about portability should be prepared  for  either
        of  two  cases: (a) signal receipt does not interrupt <STRONG>getch</STRONG>; (b) signal
 
        Programmers concerned about portability should be prepared  for  either
        of  two  cases: (a) signal receipt does not interrupt <STRONG>getch</STRONG>; (b) signal
-       receipt interrupts <STRONG>getch</STRONG> and causes it to return ERR with <STRONG>errno</STRONG> set  to
+       receipt interrupts <STRONG>getch</STRONG> and causes it to return <STRONG>ERR</STRONG> with <STRONG>errno</STRONG> set  to
        <STRONG>EINTR</STRONG>.
 
        The  <STRONG>has_key</STRONG> function is unique to <STRONG>ncurses</STRONG>.  We recommend that any code
        <STRONG>EINTR</STRONG>.
 
        The  <STRONG>has_key</STRONG> function is unique to <STRONG>ncurses</STRONG>.  We recommend that any code
 
 
 </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_inopts.3x.html">curs_inopts(3x)</A></STRONG>,    <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>,    <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(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_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>.
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_mouse.3x.html">curs_mouse(3x)</A></STRONG>,  <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>,  <STRONG>curs_out-</STRONG>
+       <STRONG><A HREF="curs_outopts.3x.html">opts(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG>.
 
        Comparable  functions  in the wide-character (ncursesw) library are de-
        scribed in <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>.
 
        Comparable  functions  in the wide-character (ncursesw) library are de-
        scribed in <STRONG><A HREF="curs_get_wch.3x.html">curs_get_wch(3x)</A></STRONG>.