Take the 2-minute tour ×
User Experience Stack Exchange is a question and answer site for user experience researchers and experts. It's 100% free, no registration required.

What sort of methodologies should I employ to choose which letters and shifting keys to assign to different functions?

Is underlining the accelerator letter the best practice, or should I spell out the combination?

If anyone has experience with choosing keyboard accelerators, or if there are any online reference out there or books on this topic would be a great help.

Please note there is no mouse in the product, so keyboard and touch is the only two means of navigation.


The case is that I am working on a "stand alone" touch screen product with a physical qwerty keyboard attached. The keyboard is for users who sits in a controlled environment and has in depth knowledge of the product so they are looking to perform the task quickly and repetitively. The touch screen is for users who operates in a dynamic environment and constantly multitasking between 4 to 6 different equipments.

share|improve this question
    
sorry forgot to add that there is no mouse in the product, so keyboard and touch is the only two means of navigation. –  Jack.ak.Hsu Jun 19 '12 at 1:21
1  
I have added your comment to your question. It is pretty important information. And on the stackexchange stack you can edit your questions and answers. –  Marjan Venema Jun 19 '12 at 7:02
    
I think you meant "shortcut" which is not the same as "short cut". –  Danny Varod Jun 19 '12 at 7:06
    
Your question has been altered a lot. Could you review the current state of this question and emphasize your main issue? I interpreted the question as "how to reuse keyboard shortcuts on a touch screen device", but it seems like other readers have interpreted your question as "how to implement shortcuts" (ref @Myrddin´s revision). If the latter is the case, then my answer is irrelevant and I will deleted it. –  Jørn E. Angeltveit Jun 20 '12 at 12:27
    
@Jack.ak.Hsu See the latest version of my answer, I think it covers most of the possible hotkeys conventions for Windows-style keyboards, when to use them and how to choose them. –  Danny Varod Jun 20 '12 at 12:52
show 5 more comments

4 Answers

up vote 1 down vote accepted

Underlining is the indicator specifically for Alt+Key combinations (An underlined G means pressing Alt+G will be equivalent to clicking on that item). Other types of combinations (Ctrl, Ctrl+Shift, Ctrl+Alt, Shift+Alt) must be specified explicitly.

In general, accelerators using the Alt key are for navigation and mouse/touch equivalents (replacing a click or tap). Accelerators using Ctrl are for other functions that need easy access. Ctrl+Shift is for far less common functions. Ctrl+Alt should generally not be used; it is usually reserved for switching to other applications (in Windows), but on other platforms this may be ignored. Shift+Alt is very slow and uncommon to hit, and should be avoided if possible.

Start with the most common commands users execute (do profiling to check) and give those commands the easiest keys to hit and remember. Assign the progressively less common commands the progressively less easy to remember or type keystrokes.

No matter how poorly the mnemonic for remembering the command is, users will eventually master it, so don't stress over the choices too much.

share|improve this answer
    
@ Myrddin Emrys Thanks for the great Answer! This definetly helps with developing the keyboard navigation for the product. –  Jack.ak.Hsu Jun 21 '12 at 0:34
add comment

You should, of course, design the product to work properly with touch handeling. I.e. handle touch/multi-touch as a dedicated input device and implement the gestures you need to get a natural touch interaction with the software.

I can assure you that your users will try to swipe your lists and pinch your maps/images!

Likewise I can assure you that the users will be pretty annoyed by tapping the scrollbar arrow buttons, tapping the magnifier glass buttons and fiddling with keyboard shortcuts.

Sometimes, however, this is inevitable...
TeamViewer is one of the Remote Access Solutions that must handle keyboard shortcuts.

1) Create dedicated buttons for some popular combinations (Eg. CTRL+ALT+DEL, CTRL+C, CTRL+V etc)

2) Let the SHIFT, CTRL and ALT buttons be toggable. Ie when the user hits ALT, then the next button you hit will be ALT + "the ext button". (Windows has an option for "Sticky keys" in the Accessibility section in the control panel, http://windows.microsoft.com/en-US/windows7/Make-the-keyboard-easier-to-use).

share|improve this answer
    
The Alt key is usually toggable, since Alt allow activates the menu, however, using the others (and Alt outside menu context) as toggable may confuse users or cause them to invoke the wrong operation. E.g. User clicks Ctrl then changes his/her mind prior to clicking on S and returns to typing (without clicking on Ctrl). If you do use sticky keys for the modifier keys, show the status of these keys when activated above all windows (like the screen's volume display), so the user will be aware of what will happen. –  Danny Varod Jun 20 '12 at 9:31
    
@Danny: Yes. Some kind of mode indicator would probably be smart. This is a general problem, however. The lock keys (caps-lock and scroll-lock) and the dead keys (accent, breve, diaeresis keys etc) have caused a lot of confusion for many people (eg. ux.stackexchange.com/q/22468/95). Note that this answer is not a general suggestion, it´s a simple suggestion to the situation where you already have a desktop software and want to make usable with a touch screen... Since the sticky keys feature is already implemented for such situation, it´s probably the easiest way to accomplish that. –  Jørn E. Angeltveit Jun 20 '12 at 11:06
    
@Danny. Ehh. Looks like the question has been altered a lot since I wrote this answer. <g> Now I understand that it might look a bit misleading... The original issue was how to create a single product that would suit both desktop users with keyboards and "mobile" users with touch screens... –  Jørn E. Angeltveit Jun 20 '12 at 11:27
    
Thank You @Danny Varod and Jørn E. Angeltveit ! On most desktop softwares on both win and OSX I see that the general rule seems to be ATL/Command to access the menu option (e.g. Alt to highlight/toggle follow by either arrow keys or key combinations) do we think that's a convention for keyboard access? and that the users will gravitate towards that convention when they see a monitor keyboard combination? we've manage to group the functions into 3 categories now (e.g. file, edit, help) and I am thinking assigning shift/alt/ctrl as individual category toggles could be a reasonable solution. –  Jack.ak.Hsu Jun 21 '12 at 1:01
1  
@Jack.ak.Hsu I don't think that assigning those keys as category toggles would be a good idea - it would go against what the Ctrl and Shift keys usually do. Instead use Alt+F for file, Alt+E for edit and both Alt+F and F1 for help. Use Ctrl+Key for direct access to options in those menus (without opening menu). –  Danny Varod Jun 21 '12 at 9:54
add comment

As others have said, make use of popular, common shortcuts ( ctrl-c, crtl-v, and so on). For keyboard shortcuts specific to your touchscreen app, it might be a good idea to have tool tips describing the shortcut key show up over the touch screen button when you hold down the ctrl key (or alt, or whatever the shortcut involves).

For example, if there is a "save" button on the touch screen and you held down ctrl, a tooltip would come up over the "save" button that reads "ctrl+s".

While this doesn't totally solve your issue, it might help to add.

share|improve this answer
    
That's a nice idea @DorkRawk ! will definetly look into that as a option. thanks! –  Jack.ak.Hsu Jun 21 '12 at 0:44
add comment

In menus, displaying the hotkey combination that can be used to invoke operation directly (e.g. Save (Ctrl+S) in the File menu) enables users to learn the hotkeys for actions they invoke via menu.

Underlining the accelerators either permanently or when Alt is pressed (and until user has exited menu) can help the users find them. (E.g. Alt+F for the file menu, then t for new tab.)
Note that this kind of accelerator is localization dependent (depends on language of menus).

Use Ctrl+letter for the common operations (Ctrl+C/V/X/Z/Y/S/F for copy/pase/cut/undo/redo/save/find).

Use the Shift key as a modifier for Ctrl+Letter hotkeys (Ctrl+Shift+Letter) in order to invoke inverse or advanced operations (e.g. I have seen Ctrl+Shift+Z for redo before Ctrl+Y caught on, e.g. Ctrl+Shift+F for advanced find).

Try to choose the letter that the operation starts with (e.g. Ctrl+S for save),
or a letter that resembles the operation (e.g. Ctrl+Z for sleep if it wasn't already assigned to undo),
or a letter adjoining similar operations' letter for the operations (e.g. Ctrl+V for paste, because it follows Ctrl+C (copy) on Qwerty keyboards).

Use the F-buttons for operations that do not cause direct side effect on the user's work and may need to be called multiple times in a row - they only require one click. E.g. F1 for help, F5 for refresh or for run, F10 for run one step, F3 for find/find next.

Use the Shift key as a modifier for F-buttons too, e.g. Shift+F3 for advanced find.

Use Ctrl+Alt+Letter (or Ctrl+Alt+FKey or Ctrl+Alt+Arrow) for global hotkeys.
Global hotkeys are hotkeys that work even when your application isn't active (e.g. to launch application or to bring it to focus). Make sure you let the user decide which global hotkeys to use for what (since them may collide with other applications' global hotkeys (first to register on Windows' startup wins).

Use Ctrl+Left/Right for backward/forward.

Use ESC to cancel operations (e.g. stop in browser, cancel drag and drop, ...).

If you had a mouse, you could use Ctrl and Shift as modifiers for mouse operations.

share|improve this answer
    
this is a excellent reference list to put towards any future work on keyboard short cuts. thanks @Danny Varod unfortunately we won't have a mouse, which interestingly enough stream lines the interaction model a bit better, since touch and keyboards are polar opposite while touch and mouse conflicts and overlaps. –  Jack.ak.Hsu Jun 21 '12 at 1:07
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.