A free, powerful and stable keyboard customizer app for macOS

Karabiner Elements

Karabiner Elements

  -  34.9 MB  -  Freeware
Karabiner is a highly effective macOS system utility app that can help users of all knowledge levels to remap their keyboard, adjust the delay until repeat time interval, create customized keyboard layouts that are perfect for typing in multiple languages, setup any imaginable personalized keyboard shortcuts and more. With just a few minutes of setting up new keyboard behaviors, you can optimize your workflow, increase your productivity and enable you to more easily access your favorite apps or perform specific keyboard macros.
 
To achieve this broad range of functions, the app comes with the expansive Customization tools, aimed to both enable users to create simple keyboard shortcut presets, and also fine-tune the exact behavior of their keyboard.

Prior to the app version 9.3.0, Karabiner Elements app was known as “KeyRemap4MacBook. All versions of the tool are optimized for use on all Mac products, including Macbook, iMac, Mac mini and Mac Pro.

Installation and Use

Karabiner Elements is a lightweight application, but it packs a wide array of functions that can change the basic functioning of your MacOS desktop or laptop. Be aware that after installing it you also need to add it to the list of the applications that can take control over your Mac. You can do so by opening your System Preferences and adding it to the list of apps in Security & Privacy tab.
 
After this is done, the app will appear in your status bar with a small icon that describes currently loaded profile. Clicking on profile name will open a drop-down menu with the list of the currently available profiles, shortcut to the Preferences screen, app updater and the shortcut to the EventViewer service that can help you check if the various shortcut settings are actually effective inside your specific applications. Profiles can be switched either via status bar menu or with the custom keyboard shortcuts. In the Preferences window, you can create new Profiles in the MenuBar tab, and set up the exact keymapping rules, key repeat timing, and status messages. It is important to note that search for specific keybindings can be accelerated using the built-in search tool inside the Change Key tab. Novices can edit customization offerings presented by the app, but seasoned users have full freedom to create and manage their own private.xmp file holding all their keyboard customization options.

Features and Highlights
  • Remap your keyboard with ease.
  • Create specific key press repeat time intervals.
  • Manage multiple shortcut profiles.
  • Available for the entire Mac family of devices
  • Compatible with MacOS 10 and newer (Intel only)
  • 100% Free!


  • Karabiner Elements 14.13.0 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Karabiner Elements 14.13.0 Screenshot 1
  • Karabiner Elements 14.13.0 Screenshot 2
  • Karabiner Elements 14.13.0 Screenshot 3
  • Karabiner Elements 14.13.0 Screenshot 4
  • Karabiner Elements 14.13.0 Screenshot 5

What's new in this version:

Important Notes:
- A reboot is required when upgrading from version 14.12.0 or earlier, to update the virtual keyboard driver

New Features:
- Palm detection is supported in MultitouchExtension
- Use Bluetooth address (Bluetooth MAC address) is used to identify the device when the Bluetooth device does not have Vendor ID and Product ID
- Add the following settings into Devices tab.
- Flip mouse X
- Flip mouse Y
- Flip mouse vertical wheel
- Flip mouse horizontal wheel
- Swap mouse X and Y
- Swap mouse wheels
- Gamepad support (DirectInput devices are supported. Xinput is not supported at all)
- Added "Add your own rule" button into Complex Modifications settings
- The json content of Complex Modifications can now be changed via the Edit button
- Added "Move item to top" and "Move item to bottom" into the context menu of the Complex Modifications list
- Add the following options to karabiner_cli
- --format-json
- --eval-js
- --silent
- Changes for users who write their own json
- The device_address condition has been added into device_if and device_unless
- Added key_up_value to set_variable
- Added mouse_basic manipulator

Improved:
- Added the ability to filter by keywords when adding Complex Modifications rules
- Adjusted the position of the Add rule button in Complex Modifications
- MultitouchExtension has been rewritten in Swift