DoubleCommand isn't enough.

I want something lower level, an API to interpret a keycode as another keycode.

I'm aiming to try the MS 4000 ergonomic more ergonomically by spreading my hands apart so my right hand rests on the num pad / insert/home/end section.

2 Answers 2


macOS Sierra does not fully recognize the Microsoft Surface Ergonomic Keyboard as a keyboard, but a workaround exists.

  1. Install Karabiner Elements. It lets you intercept and remap keyboard input.
  2. Launch Karabiner Elements and go to the Devices tab and uncheck everything but "Ergonomic Keyboard" so that Karabiner does not swap keys with any other keyboards attached to your computer.
  3. Switch to the "Simple Modifications Keys" tab. Click the "add item" button. Remap "left_command" to "left_option" and "left_option" to "left_command". Then do the same for "right" command/option keys.

Have you checked out keyremap4macbook and it's open source.


You must log in to answer this question.

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