Tool to assist remapping macOS keyboard keys.
Install the tool using Cargo.
sh
cargo install kb-remap
Running the tool without any options will list the available USB devices.
sh
$ kb-remap
text
Found the following USB devices:
Apple T2 Controller
Ambient Light Sensor
Headset
Touch Bar Backlight
FaceTime HD Camera (Built-in)
Touch Bar Display
Apple Internal Keyboard / Trackpad
USB Keyboard
Usually it's pretty simple to pick out which devices are keyboards. Using the
name listed above as --name
you can remap any key you want using the --map
or --swap
options. For example the following remaps capslock to backspace and
swaps ยง (section) and (backtick) on a the internal macOS keyboard.
```sh
$ kb-remap \
--name "Apple Internal Keyboard / Trackpad" \
--map capslock:delete --swap '0x64:
'
```
You can reset the mapping using:
sh
$ kb-remap --name "Apple Internal Keyboard / Trackpad" --reset
The --map
and --swap
options both expect the source and destination keys to
be specified and separated by a ":" (colon).
There are three ways to specify keys:
Powerful applications to remap macOS keys like [Karabiner-Elements] are often overkill for simple remappings. Additionally, they can sometimes take a while to support the latest macOS version. I wanted a simple reliable solution.
Instead of a constantly running application kb-remap
simply subprocesses to
built-in macOS ioreg
and hidutil
commands to fetch keyboard information and
to remap keys. This remapping does not persist if keyboards are unplugged or
if your Mac goes to sleep. kb-remap
does not solve this problem for you
yet. One option is to install plist file to
Licensed under either of
at your option.