[PD] Behavoir of [keyup] in Linux

Hans-Christoph Steiner hans at eds.org
Tue May 29 05:20:10 CEST 2007


You can use [hid] to get the raw keyboard events, but it's not quite  
as easy as [keyup].  Plus it doesn't work on Windows.

.hc

On May 28, 2007, at 11:05 PM, Claude Heiland-Allen wrote:

> ugur guney wrote:
>> # Hi!
>> # I started to write an answer to a question on list about using  
>> keyboard
>> input in a patch. Then I realized that a patch which I written in  
>> Windows
>> does not work well under Linux, to which I have switched weeks ago.
>> # When I press and hold a key, after a short time [keyup] starts  
>> to output
>> the number of that key repeatedly (before releasing it). In  
>> Windows it only
>> outputs the key no when a key is released. Do you have any idea  
>> why there is
>> a difference between two platforms?
>
> It's just the way X11 works, as far as I understand it.  I did a  
> test with GridFlow, and the same thing happens (console log from  
> attached patch):
>
> ("y" key pressed and held)
> print: 10960 keypress 129 106 0 y
> print: 520 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 20 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 40 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 20 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 60 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 20 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 20 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 40 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 40 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 40 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 40 keyrelease 129 106 0 y
> print: 0 keypress 129 106 0 y
> print: 0 keyrelease 129 106 0 y
> ("y" key really released)
>
> Here the first number is the elapsed time since the previous event  
> (measured in Pd logical time).  It would be possible to patch up  
> something that would discard any "keyrelease immediately-followed- 
> by keypress for the same key" pairs that occur with an elapsed time  
> of 0 (hint: it would use [delay 0.1] or so, maybe even [delay 0]  
> would work).  The last keyrelease would be delayed a little, but it  
> would either be unnoticeable with [delay 0.1] or at exactly the  
> same logical time with [delay 0]
>
>> # I'm using canonical Pd version 0.40-2 under Ubuntu Feisty.
>> -ugur guney-
>
> Pd 0.40-2 under pure:dyne 2.3.57 here.
>
>
> Claude
> -- 
> http://claudiusmaximus.goto10.org
>
>
> #N canvas 594 349 450 300 10;
> #X obj 81 104 #out window;
> #X obj 81 223 print;
> #X obj 104 160 timer;
> #X obj 81 131 t a b b;
> #X obj 81 197 list prepend;
> #X connect 0 0 3 0;
> #X connect 2 0 4 1;
> #X connect 3 0 4 0;
> #X connect 3 1 2 0;
> #X connect 3 2 2 1;
> #X connect 4 0 1 0;
> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/ 
> listinfo/pd-list



------------------------------------------------------------------------ 
----

Man has survived hitherto because he was too ignorant to know how to  
realize his wishes.  Now that he can realize them, he must either  
change them, or perish.    -William Carlos Williams






More information about the Pd-list mailing list