Simple Modifications
Pick a key on the left and its new job on the right. Swap Command and Option or kill Caps Lock in seconds.
Turn Caps Lock into Escape, give your function keys new jobs and write rules for any keyboard you plug in. One free download for macOS 13 and later.
Karabiner-Elements started life as KeyRemap4MacBook, then became Karabiner. Today it is a powerful and stable keyboard customizer that maps keys, buttons and combos across every keyboard you connect to your Mac.
Pick a key on the left and its new job on the right. Swap Command and Option or kill Caps Lock in seconds.
Build rules with conditions. Send one key on a tap and a modifier on a hold, or fire a shortcut from a key combo.
Apply changes to one device only. Your external Windows board gets a Mac layout while the built-in keys stay untouched.
Keep a coding setup, a gaming setup and a clean default. Swap between them from the menu bar with one click.
A small menu bar icon gives quick access to profiles and settings. EventViewer shows the exact code every key or mouse button sends.
Your rules keep working at password prompts and in Terminal with Secure Keyboard Entry. Modifier states stay in sync across all connected boards.
Advanced users can install Karabiner-Elements with a single Homebrew command.
$brew install --cask karabiner-elements
No Homebrew? Install it from brew.sh or grab the DMG straight from the official release.
Download DMGThree moves take you from a stock keyboard to one that fits your habits.
Open Settings and go to Simple Modifications. Choose a key from the list and set what it should send instead.
Import a ready rule from the community library or write your own. Tap and hold tricks, app rules and combos all live here.
Pick which keyboard each rule targets. Then open EventViewer and press keys to watch every change happen live.
Caps Lock sits on prime real estate and almost nobody uses it. This rule turns it into two keys at once.
Vim users get a closer Escape. Everyone else gets a Control key under the left pinky.
{
"description": "Caps Lock to Control, Escape on tap",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "caps_lock",
"modifiers": { "optional": ["any"] }
},
"to": [{ "key_code": "left_control" }],
"to_if_alone": [{ "key_code": "escape" }]
}
]
}
macOS can swap a few modifier keys on its own. Anything past that needs a real remapper.
| What you want | System Settings modifier keys | hidutil command | Karabiner-Elements |
|---|---|---|---|
| Swap Caps Lock, Control, Option or Command | Yes | Yes | Yes |
| Remap letters, numbers and function keys | No | Yes | Yes |
| Different action on tap and hold | No | No | Yes |
| Rules that apply in one app only | No | No | Yes |
| Switchable profiles | No | No | Yes |
| Keeps settings after restart | Yes | Needs a launch agent | Yes |
| Point and click setup | Yes | No | Yes |
| Price | Free | Free | Free |
Writers, developers and gamers who changed one key and never went back.
Caps Lock now sends Escape on a tap and Control on a hold. I set it up in two minutes with Karabiner-Elements and my Vim workflow feels like a different editor.
I use a Windows layout keyboard at my desk and the MacBook keyboard on the go. Device rules swap Command and Option only on the external board. Exactly what I needed.
Been running Karabiner Elements on every Mac since the KeyRemap4MacBook days. Updates keep landing and nothing has broken across macOS upgrades.
The EventViewer saved me an afternoon. It shows the exact key code my mouse side buttons send, so writing the rule took one try.
Powerful once you get it. The JSON rules took me a weekend to understand, but the community rule library got me most of the way without writing anything.
Free, open source and maintained by one very careful developer. Karabiner elements for Mac is the first thing I install after Homebrew.
My ELECOM trackball has buttons macOS ignores. After the latest Karabiner download they handle back, forward and Mission Control.
I write all day and hated reaching for the arrow keys. Now Right Command plus H, J, K and L moves the cursor in every app on my Mac.
Runs native on my M3 MacBook Pro with zero lag. Karabiner elements mac setup took one Homebrew command and a couple of permission clicks.
Straight answers to the questions people ask before they install.
brew install --cask karabiner-elements.Download Karabiner-Elements free and remap your first key in under a minute.