Macro keyboards are mini programmable USB keyboards that can be pressed to trigger shortcuts, a sequence of keypresses etc. They can have several layers so switching to a different one will trigger different keypresses from the same key, so e.g. different IDEs can be represented.
I’ve just bought one with a view to setting up shortcuts for debugging. Each IDE has its own unique keys for navigating through the code, so I figure it’ll be nice to just press one key to start debugging and one key to step into instead of a combination of ctrl+whatever etc
Do you use one? If so, what do you use it for and what size do you use? Is it too big / too small?
I just had mine arrive yesterday!
I have one of these
![macro keyboard with 12 keys and three knobs](https://programming.dev/pictrs/image/16d929f5-0ca6-4fff-9c9e-4d3815b23d23.webp)
I’m using ch57x-keyboard-tool to configure it, because I don’t fancy running some random closed-source Chinese code (the manual links to a file on Google Drive). It also means I can move over my config when I switch to Linux.
I have two keys for switching between headphones and speakers, and some set up for shortcuts I forget (like ctrl-shift-e for the network monitor in Firefox). One key types “hello” just because I can.
I’ve got the large knob controlling volume, and I can click it to toggle mute. The other two are currently set to scroll, but I don’t need that as my mouse has better ergonomics for scrolling.
I still have plenty of unused keys and it’s got three layers so I won’t be running out in the foreseeable future.
Also forgot to point out, you can buy keys with a transparent cover over the top on ali so you can shove a piece of paper underneath the transparent bit to use as labels.
https://ae-pic-a1.aliexpress-media.com/kf/Sa64d09e1337e4dbe8ab64b7194aa790cF.jpg_220x220q75.jpg_.avif
Great! I’ve bought similar without the dials (I wish I didn’t have to pay extra for the stupid LEDs) and was hoping there was something open sourcey to configure it with rather than their dodgy codebase for the same reasons you list!
It works great and the config is simple. It doesn’t handle triggering things from those keypresses, but you’ve probably already got something running that does that.
I’m using Mate and it allows me to easily define custom shortcuts to open apps and so on. I suppose autoIt / the linux variants / custom script can add additional functionality to the keypad as well!