[Python] Non-Blocking input multiplatform. Era: Re: Fwd :pynput: help request.

laziale laziolazietta a winguido.it
Gio 2 Ago 2018 16:07:35 CEST


ciao gabry.
ti risponderei io se solo ci capirei qualcosa.
ma non mi funzionano neanche gli script più elementari
Messaggio originale:
Mittente: Gabriele Battaglia.
EMail mittente: iz4apu a libero.it.
Data e ora: 02/08/2018, ore: 15:44.
Oggetto: Re: [Python] Non-Blocking input multiplatform. Era: Re: Fwd:pynput: help request.
Testo:
Ciao Manlio e tutti.
 
Grazie per i tuoi suggerimenti Manlio.
Sto applicando le modifiche che mi dicevi, affinché il mio script funzioni.
Qui in ufficio posso provarlo sotto Win, a casa poi, proverò anche sotto 
Mac, dove mi da i problemi maggiori.
 
Nel tuo precedente messaggio mi chiedevi perchè avessi settato il 
terminale in modalità non_blocking, con le seguenti istruzioni:
 
***
     fd = sys.stdin.fileno()
     oldterm = termios.tcgetattr(fd)
     newattr = termios.tcgetattr(fd)
     newattr[3] = newattr[3] & ~termios.ICANON & ~termios.ECHO
     termios.tcsetattr(fd, termios.TCSANOW, newattr)
     oldflags = fcntl.fcntl(fd, fcntl.F_GETFL)
     fcntl.fcntl(fd, fcntl.F_SETFL, oldflags | os.O_NONBLOCK)
***
 
E mi indicavi quali righe di codice modificare per impostare 
diversamente il terminale, così:
 
***
oldflags = fcntl.fcntl(fd, fcntl.F_GETFL)
fcntl.fcntl(fd, fcntl.F_SETFL, oldflags | os.O_NONBLOCK)
 
e
 
fcntl.fcntl(fd, fcntl.F_SETFL, oldflags)
***
 
Purtroppo la mia conoscenza delle istruzioni e dei loro metodi, è 
praticamente nulla. Ho copiato questo codice da un post su 
StackOverflow, ma non lo comprendo.
 
Saresti così gentile da dirmi in che modo, devo cambiare i parametri 
passati a queste istruzioni?
 
Per il resto, ho semplificato il codice come mi suggerivi tu definendo 
prima le funzioni, e poi assegnandole a key, in base alla rilevazione 
del sistema operativo da parte di sys.platform.
Il modulo è ora così:
 
https://www.dropbox.com/s/mvcrhyglml2tg1d/key3.py?dl=0
 
Grazie per il tuo aiuto.... Ovviamente non c'è fretta e siamo un po 
tutti, almeno spero... in vacanza, perciò rispondimi quando e se ne hai 
tempo e voglia.
 
Grazie infinite.
 
Gabriele.
_______________________________________________
Python mailing list
Python a lists.python.it
https://lists.python.it/mailman/listinfo/python



Maggiori informazioni sulla lista Python