Accéder au contenu.
Menu Sympa

linux-31 - Re: [Linux-31] Réagir à la barre Espace

Objet : Discussions sur le logiciel libre

Archives de la liste

Re: [Linux-31] Réagir à la barre Espace


Chronologique Discussions 
  • From: Pierre ESTREM <peterpan31 AT free.fr>
  • To: Linux 31 <linux-31 AT culte.org>
  • Subject: Re: [Linux-31] Réagir à la barre Espace
  • Date: Sun, 17 May 2020 06:21:51 +0200

Bonjour,

Avec un tableau j'arrive à détecter la barre d'espace ET _ENTREE_.
En faisant :

declare -a char

while true
do
        read -s -n1 -a char
       if [[ '' == ${char[0]} ]]; then
        echo  "Enfin ça marche"
    fi
done

Je crois que je vais faire avec cela; le retour chariot étant en général une validation.


pierre estrem


Le 16/05/2020 à 23:55, Pierre ESTREM (via linux-31 Mailing List) a écrit :
Bonjour,

Je ne sais plus comment faire pour lire un appui sur la barre d'espace (un ' ', code décimal 32, il me semble !).

Si je fais :
while true
do
    read -s -n1 char
    if [[ ' '==$char ]]; then
        echo  "Enfin ça marche !!!"
    fi
done

Avec cette merde je rentre dans le if à chaque fois...

J'ai eu fait cela avec le langage C et c'était facile : un read() (ou getc()) pour lire le premier octet et si il valait zéro il s'agissait donc d'une touche spéciale et alors on faisait un second appel à read() (ou getc()).

Avec Bash j'ai cherché mais ça me renvoie sempiternellement vers C ou Python.

J'ai pensé à xev...

Comment dois-je faire ?

pierre estrem


Vous pouvez vous désabonner de cette liste en cliquant
sur:https://sympa.culte.org/sympa/auto_signoff/linux-31/peterpan31 AT free.fr



Archives gérées par MHonArc 2.6.19+.

Haut de le page