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@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]
- 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