Bonjour,
quand on utilise la fonction read avec le fd 0 (le clavier), la fonctio bufferise et bloque tant qu'on n'a pas appuye sur 'enter'.
en trippotant la line discipline, on peut dire a la fonction de renvoyer chaque touche du clavier (autant un caractere, qu'une touche special).
Code :
- ioctl(fd, TIOCGETA, &t);
- t.c_lflag &= ~ICANON;
- t.c_cc[VMIN] = 4;
- t.c_cc[VTIME] = 1;
- ioctl(fd, TIOCSETA, &t);
|
ca marche tres bien. j'arrive a recuperer toutes les touches.
seulement si je tape vite une serie de caractere, ou si je reste appuyer sur une touche (repetition). ca rammmeeeuhhhh
j'en conclu donc que ma methode est degueulasse et qu'il existe une methode plus propre et surtout plus performante.
mais je vois pas
Help