Good to know, that's what I was expecting. I'll have to give the Cat a spin! Also, thanks for this article and the Jef Raskin one - I thoroughly enjoyed them and their depth. I was in the middle of reading the book version of folklore.org (Revolution in the Valley) and these were a pleasant surprise.
At the moment the Accessibility API results are limited to the frontmost window; it's on my todo list to expand this to additional windows and displays. Also, the green line will only be drawn on results on the main display - another item I plan on fixing.
In Superkey, all of the matches are highlighted yellow, and the selected one is highlighted green with a line to it from the text field. You can keep typing to narrow down the match, or you can navigate matches using the arrow keys (and optionally, cycle through them with the semicolon key, which is what I use). There's a screenshot at https://superkey.app.
For the Canon Cat, I'm actually not sure as I've only watched videos of this functionality there.
Without knowing about Jef Raskin's ideas, I implemented something really similar to one of them in one of my Mac apps, Superkey. This idea in the Canon Cat was that you hold down a key and type text that you want to select anywhere in a document, then let go to select it - typically faster than reaching for a mouse or hitting arrow keys. In the Canon Cat it was an additional key (the leap key), below the space bar.
For the implementation in Superkey, you can select a key to use for this, like caps lock. The way I use it is I hold the caps lock key and type text, then the app uses OCR and optionally the macOS Accessibility API to search for matching text. Releasing the key or hitting enter will click (or double or triple click, etc) on a match.
Raskin's idea was of course more text-editing focused, and tapping on the leap keys will also move the cursor. I typically use Superkey to navigate UIs quickly, kind of as though UIs all have keyboard shortcut navigation. There are also limitations that Superkey faces, like not having access to offscreen parts of a document.
Glad you like my software! A long time ago, I had some RSI issues that were alleviated by using the Magic Trackpad, and this led me to create the Multitouch app[0] to add a bit more functionality to the Magic Trackpad. From there I wanted to add in window management, and ended up rewriting Spectacle as Rectangle. I feel really lucky to have people enjoying the things I've built!
Good to know! I'm surprised that Magnet has any improvement over Rectangle in these areas, since Rectangle isn't really adding any overhead to the Accessibility API commands, but I'll have to investigate.
Thanks for the feedback! I agree and have had some ideas for improving this - one of them being copy/paste and drag behavior where you could copy a selection in Rectangle Pro and paste it as prettified JSON in an editor, and vice-versa. The dot file idea is also one that I like - it's just a surprisingly large effort to "do it right". Making UI's for representing this complexity is kind of tricky, and what's there now is actually my first cut - something that I figured I would iterate on but haven't gotten the time together to do it.
I'm the developer behind Rectangle. There are a handful of features in Rectangle that aren't in Magnet, like being able to repeat shortcuts to achieve different sizes/positions, and being able to modify a lot more of the behavior of the app (there are more settings, and there are terminal commands listed on the readme of the GitHub repo). The main draw is that Rectangle is FOSS, which comes with obvious benefit.
Beyond that, Rectangle Pro (paid, closed source) is where I've put a ton more features. You can find Rectangle & Rectangle Pro at https://rectangleapp.com
Rectangle is a drop-in replacement for Spectacle, and provides an option upon first install to select the Spectacle default keyboard shortcuts. Note that Spectacle only included keyboard shortcut window management, while Rectangle also includes the drag to screen edge snapping.
Yes, there is an API for this in macOS, and I use it in two of my apps (multitouch.app and charmstone.app). The haptic feedback is really subtle though and it doesn't give the full power of the feedback that is in the trackpad, which limits the usefulness of it. You can make it buzz for longer durations to make it more apparent, but then it starts to get annoying. I think there is a private framework that can give you stronger haptic feedback, if I remember right (I avoid private frameworks).
I just happened to make a post about this today, too, in the form of a quick tutorial with Automator to turn the hidutil commands into an app that can be configured in launch on login system settings, if desired:
Thanks for trying it and for the feedback. Would you use it if you could set the keyboard shortcuts to mod+hjkl or something like that, rather than mod+arrow keys?
Charmstone [1] is a different take from everything mentioned here (I'm the developer).
The idea is to use your spatial memory to switch/launch apps faster than anything else that I've found, with a smaller learning curve and less memorization.
You can use keyboard shortcuts with the arrow keys, modifier keys + cursor movement, or a trackpad gesture.
I did not, but will definitely do this if I hit this problem again (thanks for the link). I had reported it to the Google safe browsing pages multiple times over the past month and that had no effect, but going that legal reasons route seems like a better bet.