If you’re a fan of mechanical keyboards, and specifically a fan of smaller layouts like 60% or even 40% (like the Planck keyboard), chances are that you need to remap your keys somehow to make the keyboard behave like you need it to.
Now, if you use a Mac there’s only one real choice for this: Karabiner. With this beautiful powerful tool you can accomplish almost anything concerning your keyboard.
The best part is that you can write your own remappings. This is done in a specific XML file that gets interpreted by Karabiner. Here’s what I imported and wrote myself over the time I have used it.
I won’t show everything here because the file is just too large, but here’s what you can do with it. The following is an example that shows how I created media keys WHERE I WANTED on a Pok3r.
Look at the complete file over at my Github-Account.
If you want to understand how this works or want to create your own mappings, take a look into the Karabiner Private.xml Documentation. There you find every keycode and examples on how to use karabiner.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
<item> <name>Media Keys for Pok3r with HYPER</name> <appendix>* HYPER + [ = Volume Up</appendix> <appendix>* HYPER + ; = Volume Down</appendix> <appendix>* HYPER + P = Play/Pause</appendix> <appendix>* HYPER + ] = Next Track</appendix> <appendix>* HYPER + ' = Previous Track</appendix> <appendix>* HYPER + . = Mute</appendix> <identifier>private.hypermediakeys</identifier> <device_not>DeviceVendor::APPLE_COMPUTER, DeviceProduct::APPLE_INTERNAL_KEYBOARD_TRACKPAD_0x0274</device_not> <autogen> __KeyToConsumer__ KeyCode::P, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::MUSIC_PLAY </autogen> <autogen> __KeyToConsumer__ KeyCode::BRACKET_LEFT, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::VOLUME_UP </autogen> <autogen> __KeyToConsumer__ KeyCode::BRACKET_RIGHT, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::MUSIC_NEXT </autogen> <autogen> __KeyToConsumer__ KeyCode::SEMICOLON, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::VOLUME_DOWN </autogen> <autogen> __KeyToConsumer__ KeyCode::QUOTE, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::MUSIC_PREV </autogen> <autogen> __KeyToConsumer__ KeyCode::DOT, ModifierFlag::COMMAND_L | ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L, ConsumerKeyCode::VOLUME_MUTE </autogen> </item> |