← Back to team overview

mactel-support team mailing list archive

[Bug 214786] Re: Apple USB ISO keyboard has incorrectly swapped keys

 

Stefan, thanks for looking into this. You're right, the iso_layout
option is in the Maverick kernel. However I can't get it to work. Here's
what I've been trying as a minimal case:

1) Open terminal, disable hid-apple module by entering:

sudo rmmod hid-apple

Obviously this will cause the MacBook's keyboard to stop working, so an
external USB keyboard is needed for the next step.

2) Re-enable hid-apple by entering:

sudo modprobe hid-apple iso_layout=0 fnmode=2

After that the internal keyboard works again, fnmode=2 is honored (i.e.
F1 will produce just that, without having to hold down Fn), but
iso_layout is not (i.e., ^ and < are swapped as before on a German
keyboard).

Any ideas what I might be doing wrong?

-- 
Apple USB ISO keyboard has incorrectly swapped keys
https://bugs.launchpad.net/bugs/214786
You received this bug notification because you are a member of Mactel
Support, which is the registrant for Mactel Support.

Status in Mactel Support: New
Status in “linux” package in Ubuntu: Triaged

Bug description:
Since upgrading kernel to version 2.6.24-12.22 two keys are now swapped on my Apple USB aluminium keyboard with danish layout. Now the keys "<" and "½" are swapped and no longer matches the actual print on the keycaps.

The error is isolated to the following commit: http://kernel.ubuntu.com/git?p=ubuntu/ubuntu-hardy.git;a=commitdiff;h=efb3031b446d441dca5b10619503ac0bba7f9748

This commit introduced a key swapping for all "ISO" type Apple keyboards. In my case this swapping is incorrect, and generally it seems like a very bad idea to perform hard coded locale specific key mapping in kernel space as this is also done several places in user space.

The included patch reverts the behavior to the default that matches the keycap printing.