Make Your CapsLock Hyper

Apr 29 2017

A CapsLock key is useless. So make it into something better: A Hyper key.

Back in 2014 I wrote about how I remapped my MacBook's CapsLock key to make it act like CTRL-CMD-SHIFT-OPTION, essentially giving me a new modifier key in the tradition of the old Hyper key.

For the last few years I have benefitted quite a bit from this setup. But recent changes to macOS have made the setup a little different.

Use Karabiner Elements to Remap CapsLock

In 2014, it took a couple of tools to remap a CapsLock key. But thanks to some internal changes in macOS, you can now do it with just one tool. The Karabiner Elements app makes it easy to remap CapsLock to anything you want.

For me, I remap it to F18, since that key is registered, but not present on any of my keyboards.

Another Framework for Mapping Keybindings

When I first wrote the 2014 article, I suggested the then-free Better Touch Tool (BTT). This is still a good tool, but (a) it is no longer free, and (b) I've found something more to my personal tastes.

I've been using mattr-'s fork of the open source Slate window tiling manager for macOS. While it's great for sizing and moving windows, the JavaScript-able configuration makes it a great tool for also managing more complex tasks.

The key to make slate work with your hyper CapsLock key is to set this line in your slate configuration:

alias hyper f18

From that point you can simply use hyper as the name of the key as you write Slate keybindings.

Sad Conclusion

Unfortunately, the newest MacBooks no longer have an esc key. For me (a Vim user), that means I have to give up on my hyper key so that I can remap CapsLock to esc. At least that can now be done directly in macOS's keyboard settings.