In computing, a keyboard shortcut is a series of one or several keys that invoke a software or operating system operation (in other words, cause an event) when triggered by the user. The meaning of term “keyboard shortcut” can vary depending on software manufacturer. For instance, Microsoft differentiates keyboard shortcuts from hotkeys (“mnemonics” on Windows) whereby the former consists of a specific key combination used to trigger an action, and the latter represents a designated letter in a menu command or toolbar button that when pressed together with the Alt key, activates such command—whereas a “hotkey” on Windows is a system wide shortcut that is always available in all contexts as long as the program responsible for it is running in the foreground or background.
Keyboard shortcuts are typically a means for invoking one or more commands using the keyboard that would otherwise be accessible only through a menu, a pointing device, different levels of a user interface, or via a command-line interface. Keyboard shortcuts are generally used to expedite common operations by reducing input sequences to a few keystrokes, hence the term “shortcut”.
To differentiate from general keyboard input, most keyboard shortcuts require the user to press and hold several keys simultaneously or a sequence of keys one after the other. Other keyboard shortcuts use function keys that are dedicated for use in shortcuts and may only require a single keypress. For simultaneous keyboard shortcuts, one usually first holds down the modifier key(s), then quickly presses and releases the regular (non-modifier) key, and finally releases the modifier key(s). This distinction is important, as trying to press all the keys simultaneously will frequently either miss some of the modifier keys, or cause unwanted auto-repeat. Sequential shortcuts usually involve pressing and releasing a dedicated prefix key, such as the Esc key, followed by one or more keystrokes.
Mnemonics are distinguishable from keyboard shortcuts. One difference between them is that the keyboard shortcuts are not localized on multi-language software but the mnemonics are generally localized to reflect the symbols and letters used in the specific locale. In most GUIs, a program’s keyboard shortcuts are discoverable by browsing the program’s menus – the shortcut is indicated next to the menu choice. There are keyboards that have the shortcuts for a particular application already marked on them. These keyboards are often used for editing video, audio, or graphics, as well as in software training courses. There are also stickers with shortcuts printed on them that can be applied to a regular keyboard. Reference cards intended to be propped up in the user’s workspace also exist for many applications. In the past, when computer hardware was more standardized, it was common for computer books and magazines to print cards that were cut out, intended to be placed over the user’s keyboard with the printed shortcuts noted next to the appropriate keys.
When shortcuts are referred to as key bindings it carries the connotation that the shortcuts are customizable to a user’s preference and that program functions may be ‘bound’ to a different set of keystrokes instead of or in addition to the default. This highlights a difference in philosophy regarding shortcuts. Some systems, typically end-user-oriented systems such as Windows, consider standardized shortcuts essential to the environment’s ease of use. These systems usually limit a user’s ability to change shortcuts, possibly even requiring a separate or third-party utility to perform the task. Other systems, typically Unix and related, consider shortcuts to be a user’s prerogative, and that they should be changeable to suit individual preference. In most real-world environments, both philosophies co-exist; a core set of sacred shortcuts remain fixed while others, typically involving an otherwise unused modifier key or keys, are under the user’s control. Hardcore gamers often customize their key bindings in order to increase performance via faster reaction times.
The original Macintosh User Interface Guidelines defined a set of keyboard shortcuts that would remain consistent across application programs. This provides a better user experience than the situation then prevalent of applications using the same keys for different functions. This could result in user errors if one program used ⌘ Command+D to mean “Delete” while another used it to “Duplicate” an item. The standard bindings were:
- Q : Quit
- ⌘ W : Close Window
- ⌘ B : Bold text
- ⌘ I : Italicize text
- ⌘ U : Underline text
- ⌘ O : Open
- ⌘ P : Print
- ⌘ A : Select All
- ⌘ S : Save
- ⌘ F : Find
- ⌘ G : Find Again (the G key is next to the F key on a QWERTY keyboard)
- ⌘ Z : Undo (resembles the action of striking out a mistake)
- ⌘ X : Cut (resembles scissors)
- ⌘ C : Copy
- ⌘ V : Paste (resembles an arrow pointing downward “into” the document, or a brush used for applying paste, as well as the proofreader’s mark for “insert”)
- ⌘ N : New Document
- ⌘ . (full stop): User interrupt
- ⌘ ? : Help (? signifies a question or confusion)
Later environments such as Microsoft Windows retained some of these bindings, while adding their own from alternate standards like Common User Access. The shortcuts on these platforms were not as strictly standardized across applications as on the early Macintosh user interface, where if a program did not include the function normally carried out by one of the standard keystrokes, guidelines stated that it should not redefine the key to do something else as it would potentially confuse users.
Problems with access keys
In summer 2002 a non-scientific study concluded that various web browsers like the IBM Home Page Reader did not make any distinction between the built in keyboard shortcuts and access keys available in websites.
The simplest keyboard shortcuts consist of only one key. For these, one generally just writes out the name of the key, as in the message “Press F1 for Help”. The name of the key is sometimes surrounded in brackets or similar characters. For example: [F1] or <F1>. The key name may also be set off using special formatting (bold, italic, all caps, etc.)
Many shortcuts require two or more keys to be pressed together. For these, the usual notation is to list the keys names separated by plus signs or hyphens. For example: “Ctrl+C”, “Ctrl-C”, or “Ctrl+C“. The Ctrl key is sometimes indicated by a caret character (^). Thus Ctrl-C is sometimes written as ^C. At times, usually on Unix platforms, the case of the second character is significant – if the character would normally require pressing the Shift key to type, then the Shift key is part of the shortcut e.g. ‘^C’ vs. ‘^c’ or ‘^@’ vs. ‘^2’.
Some keyboard shortcuts require keys (or sets of keys) to be pressed individually, in sequence. Shortcuts involving the Esc key are usually this way. These shortcuts are sometimes written with the individual keys (or sets) separated by commas or semicolons. The Emacs text editor uses many such shortcuts, commonly prefixed with Ctrl+X, such as Ctrl+X S to save a file or Ctrl+X Ctrl+B to view a list of open buffers. Emacs uses the letter C to denote the Ctrl key, the letter S to denote the Shift key, and the letter M to denote the Meta key (commonly mapped to the Alt key on modern keyboards.) Thus, in Emacs parlance, the above shortcuts would be written C-x s and C-x C-b. A common backronym for Emacs is “Escape Meta Alt Ctrl Shift”, poking fun at its use of many modifiers and extended shortcut sequences.
- Access key
- Accelerator table
- Common User Access (CUA)
- Computer keyboard
- Human interface guidelines
- Pointing device gesture
- Table of keyboard shortcuts
Notes and references
- In the English language a “shortcut” may unintentionally suggest an incomplete or sloppy way of completing something. Consequently, some computer applications designed to be controlled mainly by the keyboard, such as Emacs, use the alternative term “key binding”.
- Lowensohn, Josh (3 December 2009). “Hardware for Gmail: The ‘Gboard’ keyboard”. CNET.com. Retrieved 7 January 2011.
- http://www.gnu.org/software/emacs/manual/html_node/emacs/Commands.html#Commands. “Emacs does not assign meanings to keys directly. Instead, Emacs assigns meanings to named commands, and then gives keys their meanings by binding them to commands.” Missing or empty
- http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.platform.doc.user%2Fconcepts%2Faccessibility%2Fkeyboardshortcuts.htm. Missing or empty
- “OS X Human Interface Guidelines”. “If your app does not perform the task associated with a recommended shortcut, think very carefully before you consider overriding it. Remember that although reassigning an unused shortcut might make sense in your app, your users are likely to know and expect the original, established meaning.”
- “Using Accesskeys – Is it worth it?”. wats.ca. October 2006. Retrieved 7 January 2011.
|Look up keyboard shortcut in Wiktionary, the free dictionary.
This article uses material from the Wikipedia article keyboard shortcut, which is released under the Creative Commons Attribution-Share-Alike License 3.0