If you’ve been following Ctrl+Paint for long, you know that I’m a keyboard shortcut enthusiast. To facilitate this, I operate photoshop with a custom controller. In today’s post I’ll walk you through a weekend project: creating your own custom Photoshop controller… on a budget.
Your layout will be different than mine, but our goal is the same: put frequently used photoshop commands within reach of your left hand - in this case, onto an external USB number pad. We’ll accomplish this through software remapping, the opensource PC software AutoHotKey.
A numpad, transformed
The technical part is simple - you’ll create a short bit of code which temporarily transforms the numpad’s buttons into key-presses of your choice. Once Autohotkey is installed, running the script activates your remapping -and closing the script suspends the effect. The example to the right is a complete script which remaps 5 keys. See a full list of numpad keycodes here.
Even if you've never written code in your life, autohotkey script is very straightforward. To learn more about AutoHotKey, this is a nice overview. For starters, each line remaps one of your numpad keys to a new function. Using a text in a text editor (notepad, etc.), simply type "Numpad0::B" without quotation marks. Save this script as test.ahk. Launch this new file to test our your changes, and now your Numpad 0 key sends a "b" key-press! To turn off the script, just look for the green H icon in your task-bar.
In my example, some of the buttons are 1:1 remaps like 'b' or 'spacebar'. Others are button combinations like Ctrl+E. You can see I’ve also rotated the device 90 degrees - a seemingly bizarre choice. The reasoning is simple: this is my custom input device, and I do what I want. The printed labels on the keys no longer have meaning and I won’t be reading them - so why not rotate the device to accommodate my needs?
Why the numpad?
Above all, I like using a numpad for remapping because it is non-essential. Many keyboards don’t even have numpads, so you’re not sacrificing any standard functionality with the remapping. Additionally, USB numpads are extremely inexpensive - making them an ideal entry-point for custom input devices.
Where to next?
If you like the feeling of custom input devices, I’d encourage you to get creative. Game controllers and other USB devices can all be remapped in the same way - it’s all a matter of preference. My goal is always ergonomics, so controllers like the G13 or Razer Orbweaver are ideal (though quite expensive) For those that prefer software changes over expensive hardware, consider studying AHK in greater depth. There’s a deep rabbit hole of possibility. The Wacom radial menu is another option, and I'll explore that next week! What will you remap?