On my Macbook Pro, I routinely use two keyboards:

#1 is Apple Keyboard (A1243) with International English layout

#2 is Apple Keyboard (A1048) with French layout.

I already have set up a keyboard shortcut to switch language, but I'm looking for a way to automatically switch the language as soon as I begin typing on a given keyboard.

Does the OS even know which layout each keyboard has?

        Apple Pro Keyboard:

          Product ID: 0x020c
          Vendor ID: 0x05ac  (Apple Inc.)
          Version:  4.10
          Speed: Up to 12 Mb/sec
          Manufacturer: Mitsumi Electric
          Location ID: 0x26443000 / 11
          Current Available (mA): 250
          Current Required (mA): 50

        Apple Keyboard:

          Product ID: 0x0221
          Vendor ID: 0x05ac  (Apple Inc.)
          Version:  0.69
          Speed: Up to 1.5 Mb/sec
          Manufacturer: Apple, Inc
          Location ID: 0x24120000 / 4
          Current Available (mA): 100
          Current Required (mA): 20

Do keyboards even have a language, or just different stickers on the keys ?

I could maybe take advantage of the fact that I'm using two different models. I'm open to a low level solution (something like listening to keyboard inputs and switch language accordingly, if you can find the origin on the USB bus of a keystroke, but it would be a programming question for StackOverflow I guess).

  • Keyboards are all electrically the same, just the printing is different. What a key produces is determined by the software on the machine and is normally the same for all attached keyboards. But I think I have heard that Keyremap4Macbook can distinguish between hardware keyboards, so you may want to check that app. – Tom Gewecke May 15 '14 at 17:07

You must log in to answer this question.

Browse other questions tagged .