Macro pads are handy for opening up your favorite programs or executing commonly used keyboard shortcuts. But why stop there?
That’s what [Jeroen Brinkman] must have been thinking while creating the Programmer’s Macro Pad. Based on the Arduino Pro Micro, this hand-wired pad is unique in that a single press of any of its 16 keys can virtually “type” out multiple lines of text. In this case, it’s a capability that’s being used to prevent the user from having to manually enter in commonly used functions, declarations, and conditional statements.
For example, in the current firmware, pressing the “func” key will type out a boilerplate C function:
int () { // ; return 0; }; // f
It will also enter in the appropriate commands to put the cursor where it needs to be so you can actually enter in the function name. The other keys such as “array” and “if” work the same way, saving the user from having to enter (and potentially, even remember) the correct syntax.
The firmware is kept as simple as possible, meaning that the functionality of each key is currently hardcoded. Some kind of tool that would let you add or change macros without having to manually edit the source code and flash it back to the Arduino would be nice…but hey, it is a Programmers Macro Pad, after all.
Looking to speed up your own day-to-day computer usage? We’ve covered a lot of macro pads over the years, we’re confident at least a few of them should catch your eye.
No coder, in history, has been limited by typing speed.
Not even when using Ada.
Which, being a government/DOD spec language, requires you code in triplicate.
The pink copy is for loading and storing only.
There was a coder where I used to work who we joked must have had no delete or backspace keys on his keyboard. It seemed to us that any typos he made he had to incorporate into more code with the possibility of incurring more typos and hence more code. His stuff was overwritten, yet under engineered, write-only code. He might have been limited by typing speed, but if that limit were removed who knows what he’d have written by now?
It’s a small joke at Ada’s expense, but not too far off the mark. Having written several projects in Ada, there’s much I like about the language, but I think that Groupe Bull, the creators of Ada, must have looked at the verbosity of Pascal and thought it wasn’t verbose enough.
yeah, programming in Ada kinda feels like explaining your granny how to use a cellphone.
every day…
Absolutely, the amount of “professional coders” on youtube or insta boasting about how many KPS they can achieve and how this means they are mega productive baffles me.
We have gone full circle. Starting with the ZX80 that could only be programmed using macro keys disguised as a keyboard.
I scored a Sun keyboard not long ago. NIB, too. As a person daily-driving a Fedora system, is there a way to use the function keys on the left? I wish copy and paste actually ran a macro for me. Still, a nostalgic clicky keyboard, I like it.
You might try looking at xev, and then xbindkeys
I too use Sun keyboards and have the extra keys working under Debian KDE on one machine and Kubuntu on another, I use them all the time.
IIRC first notice that Sun keyboard is an option in the keyboard layouts, so choose the appropriate one. Then I map the keycodes for the extra cut/copy/paste/save etc keys to ctrl+c, ctrl+v, ctrl+x, ctrl+s etc in KDE settings.
I can’t remember if I had to separately assign a keycode to them with xbindkeys etc or if just choosing the Sun layout was sufficient, sorry (not at machine at the mo).
But persevere – it is possible to get it working!
Tips for anyone else thinking of going this route: don’t buy a yellowing old one, hold out for a new-looking one, they are around! Make sure it is USB. Look carefully at the key layout – older ones have a rather whacky layout (to todays eyes) – check where backspace is relative to enter. In the UK make sure backslash \ is where it should be (next to left shift).
And the rubber feet detoriate in the fugliest way possible. I’m currently going through my collection of old Sun and SGI stuff, and every single rubber foot of every SparcStation keyboard oozed all around the place. It’s ultra nasty…
I wired an stm32f401 ‘blackpill’ to the keyboard matrix, and built a QMK firmware for mine
(it’s way more convenient than software/os level configuration. I set it up once, and it stays that way between reinstallations, and connection to different systems)
This is a hardware version of Autohotkey! https://www.autohotkey.com/
A scripting program used for a similar purpose.
I imagine my Tartarus Pro could do it if I wanted to.
Macros are not uncommon in custom keyboard firmwares. Somewhere on my keyboard there’s a macro for writing the emoticon ¯_(ツ)_/¯ but I use it so infrequently that I can’t remember where it is.
I notice a lack of diodes on the switches, which could lead to ghosting if multiple keys are pressed. Perhaps that’s not too likely on this kind of keyboard, though.
Yes. It’s only intended for single keys to be pressed.
QMK allows you to more easily edit the macros?
Needs a key that shifts some things to be preprocessor commands instead.
I’m definitely missing the point, but this sort of “autocomplete” functionality is (should be) built in to most IDEs and is much quicker to use than moving your hand to another keyboard…
is this an april fool
Man I’ve had this idea floating around for awhile. Nice to see somebody actually do it 😊