I wrote recently about my MacBook Pro keyboard issues worsening, and the difficulty in getting it resolved given the time I’d be left without my machine.
A reader helpfully pointed me to an interesting software-based solution for a hardware problem – and it has solved 95% of my issues …
Unshaky is a simple Mac utility that monitors keyboard input, and then blocks anything it thinks is a double-press caused by a keyboard fault.
The app works by asking you to register it as an accessibility device. It then registers each keypress and blocks any repeated press within the next 40 milliseconds. The delay is user-configurable, with the developer recommending you stick with the default unless it doesn’t solve the problem, and then try first 60ms and then 80ms.
The app allows you to either set a universal timeout, or to configure them individually for each key.
You can see Unshaky at work. If you tap the menubar icon, it shows you how many keypresses have been dismissed – and you can also open a live debugging window.
Accessibility apps are potentially very dangerous, especially ones which control keyboard usage, as they could easily be used to install a keylogger. However, Unshaky is open-source with the code available for inspection on Github.
I’ve been using it for a week now, and it has almost completely solved my issues. I’m no longer seeing any doubt-activations. As both my spacebar and CMD keys were affected, I initially found that it was blocking Spotlight (CMD-Space), but there’s a checkbox for an experimental feature to cure that, and it works for me.
One thing it won’t solve, of course, is keypresses that aren’t being detected – where you get nothing instead of a double character. That happens to me every now and then with the CMD key, but it has completely solved the vast majority of my issues.
I will still have to get the keyboard replaced at some point before the 4-year service program deadline, but Unshaky is a godsend in the meantime.
You can download Unshaky here.