Character key shortcuts on sites and apps can be an elegant tool that allows many keyboard users to navigate the web quickly and efficiently (if you're curious, here's a demonstration):
At the same time, these shortcuts can frustrate and slow down users who rely on speech input programs to operate the web, as well as those who have dexterity challenges and are prone to accidentally hitting the wrong keys on their keyboards.
If a keyboard shortcut is implemented in the content of your site or app utilizing only letter (including upper- and lowercase letters), number, symbol, or punctuation characters, then one of the following must be true:
Confused yet? In the following section, we'll go through an example in order to illustrate what we're talking about.
Let's say you're using an email application. The app utilizes common keyboard shortcuts, like "k" to navigate, "y" to archive, and "m" to mute. So what's the issue here? As I mentioned in the previous section, users with dexterity limitations are prone to accidentally hitting the wrong keys and accordingly may have some difficulty operating the application using these shortcuts. For users who rely on speech input programs, there's a whole other set of frustrations.
Those who rely on speech input programs typically work in a single mode that combines both dictation and speech commands. For instance, a speech input user may start dictation on an email by saying aloud, "Go take a long walk off a short pier" (ostensibly, this user is writing to some company's customer service department). If this person changes their mind and wishes to take a softer tack instead, then they can pause and say, "Delete line."
Speech input software, however, tends to confuse command and dictation functions when character key shortcuts are implemented, particularly single-character shortcuts. Imagine, for example, the user starts dictation on a new email by saying, "Hey Mike". If the email app's single-key commands listed earlier are implemented, the speech input software may hear the "y" in "Hey" and initiate the archive command, or it could register the "m" and "k" in "Mike" and trigger the mute and navigate commands, respectively.
By ensuring that any character key shortcuts implemented on your site or app meets at least one of the requirements outlined at the beginning of this post, you can help users avoid unnecessary frustration.