/* nckey.c - displays the current key according to ncurses EXEC:cc -Wall -Wextra -Wpedantic -pipe -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -o nckey nckey.c -lncurses -ltinfo:STOP */ #include #include #include #include #include int main (void) { int c, c2, run = 1; initscr(); raw(); noecho(); notimeout(stdscr, TRUE); keypad(stdscr, TRUE); notimeout(stdscr, FALSE); ESCDELAY = 0; mvprintw(0, 0, "type q (113) to exit. everything is in decimal."); while (run) { c = getch(); mvprintw(1, 0, " "); if (c == 'q') { run = 0; } if (c == 27) { mvprintw(1, 0, "ESC"); c2 = getch(); mvprintw(1, 4, "%.3d %c", c2, c2); } else { mvprintw(1, 0, "%.3d %c", c, c); } refresh(); } endwin(); }