Key remapping without Karabiner

Through "System preferences -> Keyboard -> Modifier Keys" I had setup: Caps Lock as Ctl.

Then, I installed the new Karabiner (formerly KeyRemapForMacBook) to achieve the following key-remap:

  • Left Ctl = Fn
  • Fn = Left Ctl

But, setting up Karabiner meant that my "Caps Lock to Ctl" key remap made with "System Preferences" was lost. Now, Karabiner demands that I install yet another app (SEIL) to remap only the Caps Lock key. I think that is ridiculous and I do not wish to install another app just for remapping one key.

So, I removed Karabiner from my system and then set up the following key remap via "System Preferences -> Keyboard -> Modifier Keys":

  • Caps Lock = Ctl
  • Left Ctl = None (No key binding => dead key)
  • Fn stays Fn (NOTE: this doesn't bother me because #1: I don't use it much anyway and, #2: I am used to the Thinkpad "Fn on far left" style).

But, I am wondering, how does Karabiner do its magic on the inside. My understanding is that ultimately, Karabiner has to pass the key-remap configuration to the OS, right? Or does Karabiner insert itself into the system (i.e., as a kernel module) and watch all keys typed on the keyboard to detect the Ctl and Fn keys?

More importantly, is there anyway (similar to xmodmap in Linux) to achieve this key remap without Karabiner?


Solution 1:

Sadly, with MacOS Sierra, Karabiner has gone into a strange kind of hiatus-but-not-really-because-someday-we'll-fix-it.

Which is too bad, because Karabiner was the perfect tool for what I needed (which was make MacOS behave like a forty-year-old UNIX terminal because my stupid fingers still hit ^W to delete a word and I kill the window and I can't stop, no, don't help me, I'll die eventually and then my problem is fixed).

My other main tool is Typinator for abbreviations--w for with, h for the, n for and, etc; those really add up.

So far, I've found BetterTouchTool to be a viable replacement for Karabiner, even better in some ways. But worse in others; key repetition doesn't work for me despite the developer saying it does. (Possibly it interacts with Typinator, but turning the latter off doesn’t fix the problem.)

I've written a whole novel using these two tools (Typinator and BetterTouchTool), but I'd appreciate anyone chiming in if they've found something better still.

Solution 2:

I'm going to be slightly contrarian and disagree with the sentiment about needing two applications to do what you ask.

Apple adopted the UNIX heritage of one tool to do one thing and Karabiner continues that tradition. Both apps are professional quality, maintained, debugged, documented and supported. Neither app costs anything to try or rely upon. Both do exactly what they say they do.

Last time I checked, Apple installs thousands of files and has hundreds running before you even log in the first time. Installing 2 programs to totally remap all the keys seems like less of a big deal to me, but I'm open to being wrong about that.

I would say - install Karabiner and install SEIL and enjoy your ability to remap keys at will, but perhaps I'm missing some deficiency in what you're trying to accomplish.