Keyboard layout detection not working??

Shachar Shemesh wine-devel at sun.consumer.org.il
Wed May 29 04:50:03 CDT 2002


I'm sorry for being reduced to newbe levels all over again, but there 
are quite some things I don't understand about the way X handles the 
keyboard mappings. I am using kxkb, which provides a KDE applet for real 
time switching of keyboards. Looking at /etc/X11/xkb/symbols/hebrew told 
me nothing I didn't know from looking at the key caps on my keyboard 
(I'm not near my computer, I'll attach them later).

Thing I am trying to say is that all my configuration came from a 
vanilla KDE Debian installation, Hebrew keyboard included. I don't know 
where KDE takes the keyboards from.

The reason I gave up on researching this on my own was the "Q" and "W" 
keys. In the Israeli keyboard, unshifted these keys issue the / and ' 
symbols respectively. These keys were not matched either (and pressing 
them convincingly issued these chars, so I know this is not a 
misunderstanding).

Dmitry Timoshkov wrote:

>"Shachar Shemesh" <wine-devel at sun.consumer.org.il> wrote:
>
>  
>
>>I am using Debian SID with KDE. In KDE, I defined two keyboard layouts
>>(US and IL).
>>    
>>
>
>Please provide them for reference. I would suggest create new keyboard
>layouts using existing tables at /etc/X11/xkb/symbols/ though.
>  
>
Ok, here is where I ask really dumb questions. How do I do that?

>  
>
>>I tried to add Israeli keyboard detection using the
>>attached patch (layout.diff). When trying to test that patch, however, I
>>perform the following task:
>>
>>I type in the command as suggested in the docs (wine --debugmsg
>>+key,+keyboard >& key.log). Attached are two run attempts. key.log is
>>with the US keyboard selected, key2.log is with the Hebrew keyboard
>>selected.
>>    
>>
>
>I guess that you should create 4 characters per key layout.
>  
>
Why? I don't know what the AltGr and shift-AltGr keys stand for, but 
they are defenitely not used in an Israeli keyboard (nor, I noticed, 
almost any other european keyboard).

>[skipped]
>
>  
>
>>    3. There does not appear to be any code that detects layout changes
>>       in X11, and sends the apropriate WM_INPUTLANGCHANGE message.
>>    
>>
>
>It can be easyly added to the MappingNotify event handler.
>
>  
>
Do you want to take ownership of the bug then? ;-)

I did notice that Windows sends the new language with that message, and 
does so in a different format than the codepage used by the keyboard 
layout struct (how many codepages ARE there for any given language, 
anyways?). There is also the matter of language, not covered by the 
keyboard layout at all.

                    Shachar





More information about the wine-devel mailing list