2020/07/31 update
I didn't know a good place to shove this -- but now in 2020 (my previous update to this page was from Jan 2016) and running MacOS Catalina 10.15.5 my Karabiner settings below ceased to allow me to use a modified (e.g., "shift") on my left keyboard and get a capital key from pressing the other key ("m") on my right keyboard. While looking about that I found that Seil has since been deprecated and its git site now points you to Karabiner-Elements. I installed Karabiner-Elements and with no modifications other than running it got-back my "default" function from the original Karabiner of having the modifiers work again.
So now only using Karabiner-Elements, my settings are:
- From caps_lock to escape
- From left_command to left_option
- From right_command to right_option
- From left_option to left_command
- From right_option to right_command
Original Content
Once upon a time I got really into ergonomics and thought I wanted a split-keyboard. Unfortunately I realized I often do bad things like typing 'Y' with my left hand or other cross-overs. Often if it's a quick sentence I'll type it 100% with my left hand if my right hand is on the mouse/trackpad, etc. These "cross-over" habits make a split-keyboard unrealistic for me to use.
So, for Linux - I ended up just plugging in two cheap Dell keyboards and using them together. I've seen many other people do similar things. I took a spare heat-sink that was about the right height and raised the right-most keyboard so that it sits over the arrow/numpad of the left-most keyboard. This allows my hands (when sitting on home-row keys) to be squarely aligned with the armrests of most office chairs.
This arrangement allows for either hand to use either keyboard, allows me to "cross-over" without having to reach across a barrier for "middle" letters like TYU, maintains a numpad (on the far-right), and creates a quite comfortable ergonomic situation. If I weren't so cheap - the perfect arrangement would actually be for the matching-leftmost keyboard to not have arrows/numpad so that the right doesn't have to be raised - but I can forgo a lot in the name of 'free'.
Unfortunately, on OSX - cross-modifier keys did not work. When I would use my left-hand to press 'shift' but my right-hand for 'J' - the modifier would not apply to the other keyboard.
Enter Karabiner.app: This application - by default - combines multiple keyboards such that cross-modifiers "just work".
The only other modifications I did in this application are the following rebinds:
- left-alt = command
- left-super (windows) = option
- capslock = control (although this one I do for all keyboards - even the default laptop/OSX keyboard - and does not require Karabiner to be done)
Current setup:
Old setup (before the 60% keyboards):