12

I just bought an older Apple keyboard, with the idea that I could use it in conjunction with my internal Macbook Pro keyboard as a substitute for buying a keyboard that's capable of splitting into two pieces. The idea is that I should be able to put my right hand on the external keyboard and my left hand on the internal keyboard and type as usual.

I plug the external keyboard in and I can type just fine. The problem comes when I try to use any sort of key combination with both keyboards at the same time. For example, when I hit the control key on the internal keyboard and the 'e' key on the external keyboard, I would like for the cursor to move to the end of the line but, instead, a lower-case 'e' shows up onscreen. When I hold the shift key on the external keyboard and hit the 'a' key on the internal keyboard, rather than seeing an upper-case 'A' appear, I get a lower-case 'a'.

I rely heavily on keyboard shortcuts, macros, and emacs, but besides that, it doesn't make much sense for me to type with using both keyboards if I have to move both hands to one keyboard whenever I want to use an emacs key binding or type a capital letter.

Is there a way to make one keyboard accept modifier key input from the other? Ideally, I should be able to hold a modifier key on either keyboard and type another character from either and have OSX recognize a keystroke combination.

Keyboard: A1048 (not a new one) Macbook Pro: MacBookPro8,2; 15-inch; Late 2011; Mavericks 10.9.2

(Unnecessary backstory for the curious: I'm trying to avert the carpal tunnel I feel coming on from programming on my Macbook keyboard alone. I'm a pretty wide-shouldered, wide-chested guy and the position I have to take to get my hands close enough together to type on the keyboard has me, essentially, contracting my hand laterally such that the outsides of my palms and my forearms form a 135-degree angle, which is horrible posture. I need to be able to spread my arms farther apart.)

7
  • Huh, that's weird. I can confirm I'm getting the same behavior with a similar setup.
    – dwightk
    May 19, 2014 at 18:25
  • Kinda makes sense to me, in a way. OSX reads two separate keyboards--and it tells you this plainly in the OS--but receives input from both simultaneously. It probably counts that keystroke combination (usually given from a single keyboard) as one keystroke, so it's only recognizing one keystroke from each keyboard, independent of one another. (i.e. one SHIFT-nothing and one 'a'.) I'm hoping theres a tweak buried in OSX that will defeat this or maybe some 3rd-party thing that accomplishes this. May 19, 2014 at 18:32
  • 2
    I should mention that I'm an iOS developer, so I understand programming and I'm not completely opposed or averse to a hacky solution. Maybe tricking the OS into thinking that the keyboards are identical or something along those lines. May 19, 2014 at 18:34
  • I feel like ControllerMate might work for this, but I'm not nearly experienced enough with it to answer your question.
    – Dillon
    May 19, 2014 at 20:55
  • ControllerMate. Looking into it now. May 19, 2014 at 21:01

2 Answers 2

9

KeyRemap4MacBook

I knew I had seen this somewhere…

All you need to do is install KeyRemap4Macbook.

From the "implicit behavior" section:

Share state of modifier keys with all connected keyboards:

When you are using multiple keyboards, modifier keys are shared with all keyboards.

For example, pressing "shift key on keyboard1" and "space key on keyboard2" sends shift-space.

Yes, it works on other Macs too, not just MacBooks.

4
  • This is EXACTLY what I needed! As usual, I'd already found the answer to this question many months ago; I just failed to check my bookmarks. Ugh! Thank you so much! May 27, 2014 at 16:01
  • @baptzmoffire Yeah, I finally got around to creating a proper hyper key and then I found this in the documentation. Unfortunately it doesn't work for what I was hoping it would, allowing ControllerMate to use modifier keys (the reason I put a bounty on this question), but I ended up switching completely from ControllerMate to KeyRemap4MacBook for this stuff anyway.
    – 0942v8653
    May 27, 2014 at 19:16
  • 1
    as of 2015, this no longer works, keyremap4macbook has replaced by karabiner, then this -- github.com/tekezo/Karabiner/issues/500 Nov 4, 2017 at 16:03
  • Using katabiner, out of the box, the functionality we want is there. Nothing to set up. As of May 2019
    – 1mike12
    May 15, 2019 at 22:07
3

I made a utility that does this and works on Sierra.

I hope posting this isn't against the rules, but you can grab it here: https://www.electrollama.net/multimod

0

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .