*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> ungetch (3)              



NAME    [Toc]    [Back]

       curs_getch,  getch,  wgetch,  mvgetch, mvwgetch, ungetch -
       Get (or push back) characters from a Curses terminal  keyboard

SYNOPSIS    [Toc]    [Back]

       #include <curses.h>

       int getch(
               void ); int wgetch(
               WINDOW *win ); int mvgetch(
               int y,
               int x ); int mvwgetch(
               WINDOW *win,
               int y,
               int x ); int ungetch(
               int ch );

LIBRARY    [Toc]    [Back]

       Curses Library (libcurses)

STANDARDS    [Toc]    [Back]

       Interfaces  documented  on  this reference page conform to
       industry standards as follows:

       getch, wgetch, mvgetch, mvwgetch, ungetch:  XCURSES4.2

       Refer to the standards(5) reference page for more information
 about industry standards and associated tags.

DESCRIPTION    [Toc]    [Back]

       The  getch,  wgetch, mvgetch, and mvwgetch routines read a
       character from the terminal  associated  with  the  Curses
       window.  In  no-delay  mode, if no input is waiting, these
       routines return the value ERR.  In delay mode, the program
       waits until the system passes text through to the program.
       In cbreak mode, the program waits until after one  character.
  In  nocbreak mode, the program waits until after the
       first newline. In half-delay mode, the program waits until
       a  character  is  typed  or the specified timeout has been
       reached. Unless noecho has been set, the character is also
       be echoed into the designated window.

       If  the window is not a pad and has been moved or modified
       since the last call to wrefresh, wrefresh is called before
       another character is read.

       If  keypad  is  TRUE  and the user presses a function key,
       Curses returns the token for that function key is returned
       instead of the raw characters. The <curses.h> file defines
       possible function keys with integers beginning  with  0401
       and  names beginning with KEY_.  If these routines receive
       a character (such as escape) that could be  the  beginning
       of  a  function key, Curses sets a timer. If the remainder
       of the sequence does not come  in  within  the  designated
       time,  the routines pass the character to the application;
       otherwise, they return the value for the function key. 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. Since tokens returned by these
       routines are outside the ASCII range, the tokens  are  not

       The ungetch routine places ch back onto the input queue to
       be returned by the next call to wgetch.

   Function Keys    [Toc]    [Back]
       The following function keys, defined in <curses.h>,  might
       be  returned  by  the  *getch functions if keypad has been
       enabled. All of these keys may not be supported on a  particular
  terminal.  In  other  words,  the routines do not
       return a function key if the terminal does not transmit  a
       unique  code  when the key is pressed or if the definition
       for the key is not present in the terminfo database.

       Name                 Key name
       KEY_BREAK            Break key
                            The four arrow keys

       KEY_HOME             Home key (upward+left arrow)
       KEY_BACKSPACE        Backspace
       KEY_F0               Function keys; space for 64 keys is reserved.
       KEY_F(n)             For 0 <= n <= 63
       KEY_DL               Delete line
       KEY_IL               Insert line
       KEY_DC               Delete character
       KEY_IC               Insert char or enter insert mode
       KEY_EIC              Exit insert char mode
       KEY_CLEAR            Clear screen
       KEY_EOS              Clear to end-of-screen
       KEY_EOL              Clear to end-of-line
       KEY_SF               Scroll one line forward
       KEY_SR               Scroll one line backward (in reverse)
       KEY_NPAGE            Next page
       KEY_PPAGE            Previous page
       KEY_STAB             Set tab
       KEY_CTAB             Clear tab
       KEY_CATAB            Clear all tabs
       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).  The  keypad  is
                            arranged like this:

                            A1    up    A3
                            left  B2    right
                            C1    down  C3

       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_BTAB             Back tab key
       KEY_BEG              Beg(inning) key
       KEY_CANCEL           Cancel key
       KEY_CLOSE            Close key
       KEY_COMMAND          Cmd (command) key
       KEY_COPY             Copy key
       KEY_CREATE           Create key

       KEY_END              End key
       KEY_EXIT             Exit key
       KEY_FIND             Find key
       KEY_HELP             Help key
       KEY_MARK             Mark key
       KEY_MESSAGE          Message key
       KEY_MOVE             Move key
       KEY_NEXT             Next object key
       KEY_OPEN             Open key
       KEY_OPTIONS          Options key
       KEY_PREVIOUS         Previous object key
       KEY_REDO             Redo key
       KEY_REFERENCE        Ref(erence) key
       KEY_REFRESH          Refresh key
       KEY_REPLACE          Replace key
       KEY_RESTART          Restart key
       KEY_RESUME           Resume key
       KEY_SAVE             Save key
       KEY_SBEG             Shifted beginning key
       KEY_SCANCEL          Shifted cancel key
       KEY_SCOMMAND         Shifted command key
       KEY_SCOPY            Shifted copy key
       KEY_SCREATE          Shifted create key
       KEY_SDC              Shifted delete character key
       KEY_SDL              Shifted delete line key
       KEY_SELECT           Select key
       KEY_SEND             Shifted end key
       KEY_SEOL             Shifted clear line key
       KEY_SEXIT            Shifted exit key
       KEY_SFIND            Shifted find key
       KEY_SHELP            Shifted help key
       KEY_SHOME            Shifted home key
       KEY_SIC              Shifted input key
       KEY_SLEFT            Shifted left-arrow key
       KEY_SMESSAGE         Shifted message key
       KEY_SMOVE            Shifted move key
       KEY_SNEXT            Shifted next key
       KEY_SOPTIONS         Shifted options key
       KEY_SPREVIOUS        Shifted previous key
       KEY_SPRINT           Shifted print key
       KEY_SREDO            Shifted redo key
       KEY_SREPLACE         Shifted replace key
       KEY_SRIGHT           Shifted right-arrow key
       KEY_SRSUME           Shifted resume key
       KEY_SSAVE            Shifted save key
       KEY_SSUSPEND         Shifted suspend key
       KEY_SUNDO            Shifted undo key
       KEY_SUSPEND          Suspend key
       KEY_UNDO             Undo key

NOTES    [Toc]    [Back]

       The  header  file  <curses.h>  automatically  includes the
       header file <stdio.h>.

       Programmers should not use the escape key  for  a  singlecharacter

       When  using  getch, wgetch, mvgetch, or mvwgetch, applications
 should not use nocbreak mode and echo  mode  at  the
       same  time.  Depending on the state of the tty driver when
       each character is typed, the program may produce  undesirable

       [Tru64 UNIX]  If the ESCDELAY environment variable is set,
       these functions wait for the specified time period between
       the  escape  and  following  key  sequence that indicate a
       function key.  Setting this  delay  time  is  useful  when
       function-key  sequences  are being transferred over a slow
       network. However, the  ESCDELAY  environment  variable  is
       non-standard,  so  portable applications should not depend
       on its availability.

       Note that getch, mvgetch, and mvwgetch may be macros.

RETURN VALUES    [Toc]    [Back]

       All routines return the integer ERR upon  failure  and  OK
       upon successful completion.

SEE ALSO    [Toc]    [Back]

       Functions:    curses(3),   curs_inopts(3),   curs_move(3),

       Others: standards(5)

[ Back ]
 Similar pages
Name OS Title
ungetch FreeBSD get (or push back) characters from curses terminal keyboard
getch FreeBSD get (or push back) characters from curses terminal keyboard
mvgetch OpenBSD get (or push back) characters from curses terminal keyboard
has_key OpenBSD get (or push back) characters from curses terminal keyboard
mvwgetch OpenBSD get (or push back) characters from curses terminal keyboard
curs_getch OpenBSD get (or push back) characters from curses terminal keyboard
getch OpenBSD get (or push back) characters from curses terminal keyboard
curs_getch FreeBSD get (or push back) characters from curses terminal keyboard
wgetch OpenBSD get (or push back) characters from curses terminal keyboard
mvgetch FreeBSD get (or push back) characters from curses terminal keyboard
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service