UI + UXCross-Device And Physical Interactionstandard
Keyboard shortcut
Design keyboard shortcuts as documented accelerators bound to visible commands, with platform-aware key chords, clear scope, conflict checks, accessible exposure, disabled state, status feedback, remapping or disable controls for character keys, and confirmation or undo for risky actions.
Users repeat a known command often enough that memorized keyboard acceleration saves meaningful time.
The command has a visible alternative and a stable outcome users can predict.
The product can define scope, conflict rules, disabled state, and feedback for the key combination.
The shortcut respects platform conventions and accessibility requirements.
Avoid when
The command is rare, novice-oriented, high-risk, or hard to explain before execution.
The shortcut would be the only path to a primary workflow.
The key sequence conflicts with browser, operating-system, assistive-technology, or text-editing expectations.
The product cannot provide remap or disable options for character-key shortcuts.
Touch-first or mobile users would lose an equivalent visible path.
Problem it prevents
Keyboard shortcuts can make expert workflows fast, but hidden or conflicting key commands can steal text input, override browser or assistive-technology behavior, fire accidental character-key actions, and make important commands undiscoverable to mouse, touch, switch, and screen reader users.
Pattern anatomy
What a strong implementation has to make clear
User need
Users repeat commands such as save, search, copy, format, open command palette, move focus, toggle panels, archive, export, or run tools.
Pattern promise
Design keyboard shortcuts as documented accelerators bound to visible commands, with platform-aware key chords, clear scope, conflict checks, accessible exposure, disabled state, status feedback, remapping or disable controls for character keys, and confirmation or undo for risky actions.
Required state
Visible command with shortcut hint.
Recovery path
A global shortcut runs while the user is typing in a form.
Access contract
Make all shortcut outcomes available through visible controls or reachable command surfaces.
Quality bar
The difference between expert and weak execution
Strong implementation
Specific, visible, recoverable
A document editor Save button shows Command+S on macOS and Control+S on Windows, disables the shortcut while a blocking validation dialog is open, and announces Saved draft.
A table toolbar lists Export selected with Shift+E only when rows are selected, exposes the same shortcut in shortcut help, and explains why it is unavailable with no selection.
A user presses Command+S in an editor, sees Saving then Saved, focus remains in the editor, and the same Save command remains available in the toolbar and menu.
A user opens shortcut help, searches Export, sees platform-specific variants and current scope, then remaps a conflicting single-letter shortcut.
Weak implementation
Vague, hidden, hard to recover from
A product hides Submit behind Control+Enter with no visible button, hint, focus rule, or mobile equivalent.
A global D key deletes records while users type in comments or dictate with speech input.
A screen reader user cannot discover the shortcut because it is not exposed in help, command labels, or aria-keyshortcuts.
A keyboard user presses Control+F expecting browser find but the app opens an unrelated filter with no way to restore standard behavior.
UI guidance
Render keyboard shortcuts as discoverable command hints near the visible command, in shortcut help, in menus or toolbars when space allows, and in platform-specific form such as Command+S on macOS and Control+S on Windows.
Show the shortcut's command name, key chord, platform variant, scope, enabled or disabled state, conflict warning, and recovery requirement instead of treating the key sequence as hidden behavior.
UX guidance
Use keyboard shortcuts as accelerators for frequent, reversible, well-understood commands that already have visible controls or reachable command surfaces.
Define where the shortcut works, when it is disabled, what it conflicts with, how users learn it, how they remap or turn off character-key shortcuts, and how risky commands are confirmed or undone.
Implementation contract
What the implementation must handle
States
Visible command with shortcut hint.
Shortcut help or command list state showing command name, key chord, platform variant, and scope.
Global shortcut active state.
Focused-component shortcut active state.
Interaction
A shortcut maps to one named command, focus target, or mode and uses the same command handler as visible controls.
The key chord is platform-aware and formatted consistently wherever the command appears.
The shortcut fires only in its declared scope and never while text entry, composition, screen reader commands, or browser-reserved behavior should own the key event.
When the command is disabled, the shortcut is disabled too and the disabled reason is available through the same visible command surface.
Accessibility
Make all shortcut outcomes available through visible controls or reachable command surfaces.
Expose implemented shortcuts with aria-keyshortcuts when the shortcut activates or focuses a specific element and the exposure will help assistive-technology users.
Allow users to turn off, remap, or focus-scope shortcuts made only from character keys.
Do not rely on color, icons, or symbols alone to communicate shortcut hints.
Review
What visible command does this shortcut invoke, and does the shortcut call the same command handler?
Where is the shortcut active, and where is it deliberately suppressed?
Which browser, operating-system, assistive-technology, text-editing, and product shortcuts could conflict?
How do users discover, search, remap, disable, and restore the shortcut?
Interactive lab
Inspect the states before you copy the pattern
Accelerate known commands with scoped key chords
Inspect shortcut hint, platform variant, command registry, active scope, text-field suppression, disabled shortcut, conflict detected, executed command, risky confirmation, remap shortcut, character-key off, aria-keyshortcuts exposure, shortcut help, and mobile fallback states; compare hidden only, global character key, platform mismatch, stale hint, disabled fires, conflict override, and risky instant failures.
Keyboard shortcut
Interactive demo is ready
Launch the live UI/UX lab when you want to inspect states, keyboard behavior, and common failure modes.
State To Inspect
Visible command with shortcut hint.
Keyboard / Access
Modifier chords such as Command+S or Control+S invoke the command only in declared scope.
Avoid Generating
Making a shortcut the only path to a primary command.
Supports platform-respecting keyboard shortcut design and standard shortcut expectations.
Full agent/debug reference
Problem Context
Users repeat commands such as save, search, copy, format, open command palette, move focus, toggle panels, archive, export, or run tools.
The product runs inside browsers, operating systems, text editors, assistive technologies, and international keyboard layouts that already own many key combinations.
Commands may be global, page-scoped, editor-scoped, object-scoped, modal-scoped, or active only while a component has focus.
Some users rely on keyboard-only work, switch control, screen readers, speech input, touch keyboards, remapped hardware keys, or platform shortcuts.
Selection Rules
Choose keyboard shortcut when the design problem is accelerating one known command with a key combination, not helping users discover commands.
Use command palette when users need searchable command discovery, ranking, recents, scope filtering, or fuzzy matching before execution.
Use menu menubar when command organization, submenu hierarchy, disabled or checked state, and persistent desktop-style command grouping are the main concerns.
Use toolbar when visible repeated commands near a view or selection matter more than memorized activation.
Use undo or redo when the pattern is about edit-history semantics; keyboard shortcuts can invoke them but do not define their history behavior.
Use focus traversal when the problem is predictable Tab order, roving focus, landmarks, or moving through interactive elements rather than executing commands.
Prefer modifier chords for global commands and reserve single-character shortcuts for focused components or user-configurable expert modes.
Provide visible alternatives for every primary workflow and every non-essential shortcut outcome.
Avoid overriding browser, operating-system, assistive-technology, text-editing, and common platform shortcuts unless the app has a strong editor-like reason and a recovery path.
Require confirmation, preview, undo, or delayed execution for shortcuts that delete, publish, send, spend money, change permissions, or affect other people.
Required States
Visible command with shortcut hint.
Shortcut help or command list state showing command name, key chord, platform variant, and scope.
Global shortcut active state.
Focused-component shortcut active state.
Text field or editable-content suppression state.
Enabled command state and disabled shortcut state with reason.
Conflict detected state with browser, operating system, assistive technology, product, or custom shortcut map.
Shortcut executed state with status feedback and focus preservation.
Risky shortcut confirmation, preview, or undo state.
Remap shortcut state and restore default state.
Character-key shortcut off or focus-only state.
International keyboard layout or platform variant state.
Mobile or touch-keyboard state where shortcuts are supplemental and visible controls remain primary.
Interaction Contract
A shortcut maps to one named command, focus target, or mode and uses the same command handler as visible controls.
The key chord is platform-aware and formatted consistently wherever the command appears.
The shortcut fires only in its declared scope and never while text entry, composition, screen reader commands, or browser-reserved behavior should own the key event.
When the command is disabled, the shortcut is disabled too and the disabled reason is available through the same visible command surface.
Shortcut activation reports success, pending, failure, undo, confirmation required, or conflict using visible and accessible status messaging.
Shortcut hints, help, menus, toolbars, and command palette rows stay synchronized with the same command registry.
Users can turn off, remap, or focus-scope single-character shortcuts that are implemented in web content.
Risky shortcuts do not bypass review, confirmation, permissions, rate limits, or audit requirements.
Implementation Checklist
Inventory commands and classify each shortcut by command name, scope, platform chord, risk level, visible fallback, disabled condition, and owner.
Build shortcuts from a central command registry so menus, toolbars, command palette rows, help pages, and keyboard handlers share one source of truth.
Check conflicts against browser shortcuts, operating-system shortcuts, screen reader commands, text-editing commands, composition events, and existing product shortcuts.
Suppress global shortcuts inside inputs, textareas, contenteditable regions, combo boxes, and editing modes unless the shortcut is explicitly owned by that component.
Expose shortcuts through visible hints, shortcut help, command rows, aria-keyshortcuts where appropriate, and onboarding only for frequent expert accelerators.
Provide remapping, disable, or focus-only options for single-character shortcuts and preserve user settings across sessions.
Route destructive, expensive, permission-changing, or external-side-effect shortcuts through confirmation, preview, undo, or approval workflows.
Test Windows, macOS, Linux, browser variants, screen readers, speech input, international layouts, hardware keyboards on tablets, mobile fallback, high zoom, and focus return.
Common Generated-UI Mistakes
Making a shortcut the only path to a primary command.
Binding single-letter global shortcuts that fire during typing, dictation, or screen reader use.
Showing shortcut hints that do not match the current platform or remapped key.
Letting disabled commands still run from the keyboard handler.
Overriding browser find, save, print, back, refresh, or operating-system shortcuts without a strong app-like reason.
Using one shortcut for different commands in different panels without showing scope.
Executing destructive, paid, public, or permission-changing commands from a key press without review or recovery.
Documenting shortcuts in a help page but not exposing them near commands, menus, toolbars, or command search.
Critique Questions
What visible command does this shortcut invoke, and does the shortcut call the same command handler?
Where is the shortcut active, and where is it deliberately suppressed?
Which browser, operating-system, assistive-technology, text-editing, and product shortcuts could conflict?
How do users discover, search, remap, disable, and restore the shortcut?
What happens when the command is disabled, pending, failed, risky, or no longer valid?
Does this shortcut still work with international keyboard layouts, speech input, screen readers, and hardware keyboards on tablets?
Is a visible button, menu item, toolbar control, command palette row, or focus traversal pattern the real primary pattern?
Accessibility
Make all shortcut outcomes available through visible controls or reachable command surfaces.
Expose implemented shortcuts with aria-keyshortcuts when the shortcut activates or focuses a specific element and the exposure will help assistive-technology users.
Allow users to turn off, remap, or focus-scope shortcuts made only from character keys.
Do not rely on color, icons, or symbols alone to communicate shortcut hints.