#include #include #include void main(){ struct termios settings; tcgetattr(0, &settings); settings.c_cc[VMIN] = 1; settings.c_lflag ^= ICANON; settings.c_lflag ^= ECHO; tcsetattr(0, TCSANOW, &settings); char seq = 0; while(1){ unsigned char c; read(0, &c, 1); // printf("Read Character: %c (%u)\n", c, c); if( (c == 27 && seq == 0) || (c == 91 && seq == 1) ) seq++; else if(c == 65 && seq == 2){ write(1, "\r \b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b", 41); seq = 0; } else if(c == 127){ write(1, "\b \b", 3); } else write(1, &c, 1); } }