scottkirkwood / key-mon

Automatically exported from code.google.com/p/key-mon
Apache License 2.0
141 stars 38 forks source link

Shift does not showing #77

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
I installed and using this software. This is work very well except shift key. I 
tried two computer and shift does not show both of them. MI use tr keyboard may 
be this can be help you.

Thanks.

Original issue reported on code.google.com by mehmeter...@gmail.com on 14 Apr 2011 at 4:08

GoogleCodeExporter commented 9 years ago
Can you run `key-mon --debug` and press only shift key, then paste the output?

Original comment by livibet...@gmail.com on 5 Aug 2011 at 4:44

GoogleCodeExporter commented 9 years ago
Sure.
I have to add this. It showing Alt when i press AltGr. Its also in debug file.

Original comment by mehmeter...@gmail.com on 5 Aug 2011 at 4:58

Attachments:

GoogleCodeExporter commented 9 years ago
This is so bizarre: scancode: 42 name:'KEY_SHiFT_L'

Why is it small 'i'?

Could you try:

  key-mon --debug --kbdfile=

I bet it would work.

As for Alt and AltGr, is it the same issue as #75?

Original comment by livibet...@gmail.com on 5 Aug 2011 at 5:54

GoogleCodeExporter commented 9 years ago
i and I are different with Turkish local. I can using shift with LC_ALL=C 
key-mon and with --kbdfile= parameters solved problem too. This time it shows 
Shift_L or Shift_R like other characters(like, A,S,D etc.).

Original comment by mehmeter...@gmail.com on 5 Aug 2011 at 2:26

GoogleCodeExporter commented 9 years ago
> This time it shows Shift_L or Shift_R like other characters(like, A,S,D etc.).

Did you mean the Shift keys displayed in A,S,D's button image (the last one in 
key-mon window) instead of their own Shift button image?

Original comment by livibet...@gmail.com on 11 Aug 2011 at 3:49

GoogleCodeExporter commented 9 years ago
Yes Shift keys displayed in A,S,D's button image.

Original comment by mehmeter...@gmail.com on 11 Aug 2011 at 3:54

GoogleCodeExporter commented 9 years ago
What's the text displayed? "Shift_L" and "Shift_R"?

Please also upload another "--debug with --kbdfile=" and the output of
command `xmodmap`.

Original comment by livibet...@gmail.com on 11 Aug 2011 at 4:04

GoogleCodeExporter commented 9 years ago
Text is SHift_L or Shift_R, yes.

Original comment by mehmeter...@gmail.com on 11 Aug 2011 at 4:39

Attachments:

GoogleCodeExporter commented 9 years ago
After looking into xlib.py, I suspect your keysym contains non-ASCII chars, 
that's why the 'i' doesn't change case. All keysym's case are changed to upper 
cases. That 'i' must not be a ASCII 'i'. If I am right, then it's strange, 
though I don't know if there is any restriction on what characters can be used 
in keysym, but [a-zA-Z_] makes sense.

More strange thing is the keysyms are stored as attributes of Xlib.XK.XK_*, I'm 
pretty sure Python can't allow other than alnum and underscare chars to be used.

Could you run

  python -c 'from Xlib import XK ; print dir(XK)' > XK.txt

, then upload the XK.txt.

Original comment by livibet...@gmail.com on 11 Aug 2011 at 8:52

GoogleCodeExporter commented 9 years ago
Sory my bad english. I am using turkish locale and a lot of python programs had 
of problem with turkish locale and key-mon too. 'i' and uppers 'i' does not 
same character like i said before(if i said :) ). 

Original comment by mehmeter...@gmail.com on 11 Aug 2011 at 9:12

Attachments:

GoogleCodeExporter commented 9 years ago
I finally understand what you meant about 'i' != 'I' after I added a tr_TR 
locale and tested it by myself. You meant 'I' is not a upper case for 'i' in 
Turkish.

All keysym are [a-zA-Z0-9_] but .upper() is locale-dependent and when works 
with Turkish locale, 'i'.upper() != 'I', it will still be 'i'.

I will be committing a fix for this, but

  1. do we have any other chars like 'i' in Turkish? and
  2. do you know any other language has similar case?

Original comment by livibet...@gmail.com on 11 Aug 2011 at 9:46

GoogleCodeExporter commented 9 years ago
Nevermind the questions above, I decided to use locale module.

Original comment by livibet...@gmail.com on 11 Aug 2011 at 10:09