Hey all, I'm the developer behind Shortcat. Feel free to ask me questions or give me feedback! I'm on a short holiday at the moment so I might not be able to respond super quick.
If you do use the app and it crashes, please send a crash report and a short description what you were doing. It helps me a lot figuring out what the problem is. I post up known issues at https://trello.com/board/shortcat-bugs/51ac6a3711f6b34606001... (public Trello board) so people can vote and comment on issues.
I strongly suggest reading the README as I haven't baked in a tutorial to the app just yet.
That's quite odd... WebViews are a hard beast to figure out cause web pages generally contain quite a few elements (sometimes 20k+), which makes it rather annoying to search and deal with. Chrome with the --force-accessibility-renderer flag has issues with element positions due to caching (I think). Safari has much better support but it's a tiny bit slower than Chrome. Right now, I'm focusing on other features. Hopefully browsers get better!
The issue is that people on 2007 macbooks could upgrade to Lion, but Lion is a tad slower then Snow Leopard and they need all the performance they can get. But thanks for the great software!
I believe this is an issue with Adium and the way it reports the accessibility details for the tabs. It seems to be the entire tab bar rather than just the tab itself (I use vertical tabs). I haven't found the time to send in a patch just yet as I'm sinking most of it into Shortcat. Hopefully an Adium dev ends up using Shortcat and fixes it!
Oh wow, this is brilliant. My only problems with it are that it doesn't work with some applications, which is the perfect problem to have, because it means I can now identify applications that have accessibility issues that I didn't notice before.
Demand for accessible apps increases -> I become more productive and apps become more accessible for people that need them. Perfect!
Being able to define new shortcuts in real time is awesome, but half the battle. Helping me learn the shortcuts that are already there is the other half.
Can you guys add a feature that flashes on the screen the keyboard shortcut that already exist for an action performed via the mouse?
Even better if you can add a threshold for an action. For a trivial example, imagine just going to the edit menu and choosing cut/paste/copy. If I perform that action more often than once every 10 minutes, shortcat would flash a fairly large overlay on my screen showing me that shortcut. You could even make this progressive. First teach me any shortcuts for any action performed every 5 minutes for a particular application. Once I learn all those actions, expand the threshold one minute at a time until I learn a new action. Once I consistently perform those actions within the threshold via the keyboard, further increase the threshold until I learn all the commands.
Cool. However, what I really want is an app that trains me while I'm doing my own work. Going to a specific site to practice on that site is great and all but it doesn't help me remember a shortcut nearly as much as learning that shortcut while working on my own work. Learning on my own work is far more likely to be retained, because my brain can link the recently learned shortcut with something which has meaning to me and is likely to be far more top of mind than a random lesson example.
Right now, I've implemented maybe 10% of the features I want to add. I'll be adding licensing soon, but given that most people probably wouldn't pay for features that's not there, I'm probably going to start at $12, then bump it whenever I ship a major feature. Early adopters will end up saving a bit.
The licensing will be cheaper when it's in beta too.
I actually had this idea before I came up with Shortcat. The problem was that there was no reliable way of linking an action to its keyboard shortcut without installing hooks into an application and tracing all the method calls and seeing which ones match up.
If you limited it to clicking the menus in the top where the shortcuts are defined, it's more doable but I personally didn't see much merit in that since I'm terrible at memorising keyboard shortcuts anyway.. :)
Amazing. This has instantly become a must-have utility for me after trying it out for just a few minutes. Easily the best new Mac utility I've seen in a very long time.
I noticed the mention of the "regions" feature in the README, so maybe you already have plans for solving this, but one thing I'd love would be to have a way to select something based in part on its proximity to something else. For example, imagine I want to click on the comments link for a particular story on the HN front page. It'd be more intuitive to me to type, say, "Shortcat#comments" to pick the item that matches "comments" nearest the item that matches "Shortcat", than to type "comments" and hit Control to select the correct link.
Regions needs a bit more thought, but it'll let you narrow down the search space easier when you're using a complex app like Xcode with a billion different scrollviews.
That's actually a pretty cool idea! I had ideas for sorting by depth in the element tree to current active or moused over element, but a proximity-based search would be interesting. What operator would you think is meaningful? I haven't got plans for '#' just yet.
I'm not sure what the best operator would be for my suggestion, but after thinking about it '/' would work well since it calls to mind the idea of navigating a hierarchy. 'Shortcat/comments' feels nice to me. It can also be typed without using shift on a US keyboard, which is convenient.
I'll be adding '/' down the track for a proper hierarchy, but things that are close to each other aren't guaranteed to be in a sane hierarchy. What about '@'? "comments@shortcat" kinda flips it around first, which could work as you might decide to narrow down the query when you see too many results. A possible problem is that the second part of the query also has too many results.
I can see this being an OS X power-user/accessibility feature in the next major release. Enjoy your acquisition and/or idea being brazenly appropriated.
DNS Points to Prohibited IP
You've requested a page on a website (shortcatapp.com) that is on the CloudFlare network. Unfortunately, it is resolving to an IP address that is creating a conflict within CloudFlare's system. If you are the owner of this website, you should login to CloudFlare and change the DNS A records for shortcatapp.com to resolve to a different IP address.
Any chance of defining a custom selection key other than ctrl? On my Macbook air, holding the control key with my pinky or thumb while I type is really awkward. Shift would seem more natural, as the pinky finger is already used to using this as a modifier, no?
Hmm, probably. I used to use Shift but the problem was there are languages where they need to use Shift to be able to type more letters (Thai for example), so it wouldn't let them type other languages. I could probably add it as an option though, but you wouldn't be able use capital letters, naturally heh
Any way this can be "downgraded" for Snow Leopard? I hate the iOSification Lion and Mountain Lion have gone through. I like my vintage Expose with the Dashboard disabled.
Small suggestion: In the case of selecting an item that's not the topmost, it would be nice if it was a one-step process rather than two (you need to first highlight with ctrl+letter, then activate with Enter).
Maybe a repeated press of ctrl+letter could actually activate the selection. Or maybe pressing and holding ctrl+letter for a short while.
The reason why I'm currently making users explicitly use Enter/Return to click is because this allows them to use modifiers while clicking, so Ctrl+Enter for right click, Cmd+Enter on a link to open it in a new tab, etc. However, I think Ctrl+letter might be interesting, but might be confusing on multi-letter shortcuts.
Great idea and product. I will gladly pay for it. One of the biggest issues I had when transitioning from pc to mac was the lack of meaningful shortcuts. This would have eased the pain greatly!
I could not figure out how to click an element when using . to highlight all elements.
Very nice. On your readme page you mention that with sublime text nothing works. I presume the onus will be on Sublime text developers to make their tabs available to the assit API?
EDIT: On further inspection of README this is somewhat covered. /sleepy
So if I type in '.' and see the control I want to specify listed as 'C', how do I tell Shortcat to activate 'C'? I tried obviously typing in ".C" or just "C" but neither work.
I must be doing something wrong but I can't see how to select an element or button by the letter over it's highlight. Ctrl+Letter doesn't do anything for me. From the README, that seemed to be the way to do it?
If there are multiple highlighted elements on screen, Ctrl-Letter lets you select which element is highlighted green. The green element can then be activated/selected with Enter.
As others already suggested, the possibility of directly activating a specific element by shortcut would be great. Awesome app nonetheless!
Love it. This is a great app!
One thing I'm missing though - settings for colors. I have color vision deficiency and it's very hard for me to see which element is selected.
This app relies on applications implementing the Accessibility API properly. I'm hoping that there'll be enough Shortcat users to pressure application developers into making their apps more accessible so people who actually need to use accessibility tools (due to being visually impaired can) use their apps.
I've found that most mail clients (apart from Mail.app, which I don't like) have pretty terrible Accessibility support, due to heavy emphasis on custom views. It's still possible to add Accessibility support on custom views though, but visually-impaired users tends to be a pretty small niché unfortunately...
In addition to its other merits, apps like this are a great way to encourage developers implement Accessibility support, which is really not that burdensome at all.
If it gets more app developers to support it (even if it's because their users want to use power tools like this), then indirectly, much good will be done for the users who need Accessibility support for its intended purpose. Definitely a win all around.
You can setup similar functionality in vimium - Just set " Use the link's name and numbers for link hint filtering" in vimium's advanced options.
It's default way to move around vimperator as well.
If you do use the app and it crashes, please send a crash report and a short description what you were doing. It helps me a lot figuring out what the problem is. I post up known issues at https://trello.com/board/shortcat-bugs/51ac6a3711f6b34606001... (public Trello board) so people can vote and comment on issues.
I strongly suggest reading the README as I haven't baked in a tutorial to the app just yet.