Mouse keys is a feature of some
graphical user interface
The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
s that uses the keyboard (especially
numeric keypad
A numeric keypad, number pad, numpad, or ten key,
is the palm-sized, usually-17-key section of a standard computer keyboard, usually on the far right. It provides calculator-style efficiency for entering numbers. The idea of a 10-key nu ...
)
as a
pointing device
A pointing device is a human interface device that allows a user to input spatial (i.e., continuous and multi-dimensional) data to a computer. CAD systems and graphical user interfaces (GUI) allow the user to control and provide data to t ...
(usually replacing a
mouse
A mouse ( : mice) is a small rodent. Characteristically, mice are known to have a pointed snout, small rounded ears, a body-length scaly tail, and a high breeding rate. The best known mouse species is the common house mouse (''Mus musculus' ...
). Its roots lie in the earliest days of
visual editor
A visual editor is computer software for editing text files using a textual or graphical user interface that normally renders the content (text) in accordance with embedded markup code, e.g., HTML, Wikitext, rather than displaying the raw text. E ...
s when line and column navigation was controlled with
arrow keys
Arrow keys or cursor movement keys are buttons on a computer keyboard that are either programmed or designated to move the cursor (computers), cursor in a specified direction.
The term "cursor movement key" is distinct from "arrow key" in that ...
.
Today, mouse keys usually refers to the numeric keypad layout standardized with the introduction of the
X Window System
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wit ...
in 1984.
Layout
History
Historically, MouseKeys supported GUI programs when many
terminal
Terminal may refer to:
Computing Hardware
* Terminal (electronics), a device for joining electrical circuits together
* Terminal (telecommunication), a device communicating over a line
* Computer terminal, a set of primary input and output devic ...
s had no dedicated
pointing device
A pointing device is a human interface device that allows a user to input spatial (i.e., continuous and multi-dimensional) data to a computer. CAD systems and graphical user interfaces (GUI) allow the user to control and provide data to t ...
. As pointing devices became ubiquitous, the use of mouse keys narrowed to situations where a pointing device was missing, unusable, or inconvenient. Such situations may arise from the following:
*precision requirements (e.g.,
technical drawing
Technical drawing, drafting or drawing, is the act and Academic discipline, discipline of composing Plan (drawing), drawings that Visual communication, visually communicate how something functions or is constructed.
Technical drawing is essent ...
)
*
disabled user or ergonomics issues
*environmental limits (e.g., vibration in car or plane)
*broken/missing/unavailable equipment
In 1987, Macintosh Operating System 4.2 Easy Access, provided MouseKeys support to all applications. Easy access was (de)activated by clicking the shift key 5 times.
By the early 2020s, with
Graphics Tablets becoming more common, a configuration change may be required before enabling MouseKeys.
MouseKeysAccel
The
X Window System
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wit ...
MouseKeysAccel control applies action (usually cursor movement) repeatedly while a direction key
remains depressed. When the key is depressed, an ''action_delta'' is immediately applied. If the key remains depressed, longer than ''mk_delay'' milliseconds, some action is applied every ''mk_interval'' milliseconds until the key is released. If the key remains depressed, after more than ''mk_time_to_max'' actions have been applied, ''action_delta'' magnified ''mk_max_speed'' times, is applied every ''mk_interval'' milliseconds.
The first ''mk_time_to_max'' actions increase smoothly according to an exponential.
These five parameters are configurable.
Enabling
Under the
X Window System
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wit ...
s
Xorg
X.Org Server is the free and open-source implementation of the X Window System display server stewarded by the X.Org Foundation.
Implementations of the client-side X Window System protocol exist in the form of ''X11 libraries'', which serve a ...
and
XFree86
XFree86 is an implementation of the X Window System. It was originally written for Unix-like operating systems on IBM PC compatibles and was available for many other operating systems and platforms. It is free and open source software under the X ...
used on
Unix-like
A Unix-like (sometimes referred to as UN*X or *nix) operating system is one that behaves in a manner similar to a Unix system, although not necessarily conforming to or being certified to any version of the Single UNIX Specification. A Unix-li ...
systems such as
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
,
BSD
The Berkeley Software Distribution or Berkeley Standard Distribution (BSD) is a discontinued operating system based on Research Unix, developed and distributed by the Computer Systems Research Group (CSRG) at the University of California, Berk ...
, and
AIX
Aix or AIX may refer to:
Computing
* AIX, a line of IBM computer operating systems
*An Alternate Index, for a Virtual Storage Access Method Key Sequenced Data Set
*Athens Internet Exchange, a European Internet exchange point
Places Belgium
...
, MouseKeys (and MouseKeysAccel), when available, is nominally (de)activated by ++. MouseKeys without acceleration (also known as plot mode) is sometimes available with +. This is nominally independent of the
Window Manager
A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment. They work in conjunction ...
in use, but may be overridden, or even made unavailable by a
configuration file
In computing, configuration files (commonly known simply as config files) are computer file, files used to configure the Parameter (computer programming), parameters and Initialization (programming), initial settings for some computer programs. T ...
.
Before enabling, it may be necessary to change system configuration.
Th
setxkbmaputility can be used to change the configuration under Xorg:
setxkbmap -option keypad:pointerkeys
There are also various utilities to allow more precise control via user-configurable key bindings, such a
xmousekeysan
xdotool
Since
KDE
KDE is an international Free software movement, free software community that develops free and open-source software. As a central development hub, it provides tools and resources that allow collaborative work on this kind of software. Well-know ...
5, MouseKeys is enabled and configured by systemsetting5 (Hardware → Input Devices → Mouse → Keyboard Navigation)
MouseKeys for
Apple Inc
Apple Inc. is an American multinational technology company headquartered in Cupertino, California, United States. Apple is the largest technology company by revenue (totaling in 2021) and, as of June 2022, is the world's biggest company ...
's
Mac OS X
macOS (; previously OS X and originally Mac OS X) is a Unix operating system developed and marketed by Apple Inc. since 2001. It is the primary operating system for Apple's Mac (computer), Mac computers. Within the market of ...
is enabled and configured via the
Accessibility
Accessibility is the design of products, devices, services, vehicles, or environments so as to be usable by people with disabilities. The concept of accessible design and practice of accessible development ensures both "direct access" (i. ...
(
pple→ System Preferences → Accessibility → Mouse & Trackpad).
Microsoft
Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
changed the method of enabling between
Windows 2000
Windows 2000 is a major release of the Windows NT operating system developed by Microsoft and oriented towards businesses. It was the direct successor to Windows NT 4.0, and was Software release life cycle#Release to manufacturing (RTM), releas ...
,
Windows XP
Windows XP is a major release of Microsoft's Windows NT operating system. It was released to manufacturing on August 24, 2001, and later to retail on October 25, 2001. It is a direct upgrade to its predecessors, Windows 2000 for high-end and ...
(added diagonal cursor movement and MouseKeysAccel), and
Windows Vista
Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
.
[Microsoft.com, Accessibility Tutorials, Windows Vista]
Control the mouse pointer with the keyboard (Mouse Keys)
/ref>
Common usage
Replacing the mouse keys
Replacing the mouse keys by the numeric keypad is as follows:
Typing (with the numeric keypad) is equivalent to clicking the selected button. By default, the selected button is the primary button (nominally under index finger
The index finger (also referred to as forefinger, first finger, second finger, pointer finger, trigger finger, digitus secundus, digitus II, and many other terms) is the second digit of a human hand. It is located between the thumb and the mid ...
, left button for most right-handed people and right button for most left-handed people). Typing (with the numeric keypad) selects the alternate button (nominally under ring finger
The ring finger, third finger, fourth finger, leech finger, or annulary is the fourth digit of the human hand, located between the middle finger and the little finger.
Sometimes the term ring finger only refers to the fourth digit of a left-han ...
, right button for most right-handed people and left button for most left-handed people). Typing (with the numeric keypad) selects the modifier button (nominally under the middle finger
The middle finger, long finger, second finger, third finger, toll finger or tall man is the third digit of the human hand, located between the index finger and the ring finger. It is typically the longest digit. In anatomy, it is also called ...
, middle button of a 3-button mouse). Typing (with the numeric keypad) selects the primary button. The selection remains in effect until a different button is selected.
Assignment of left/middle/right button to primary/modifier/alternate, alternate/modifier/primary, or something else is settable by many means. Some mice have a switch, that swaps assignment of right and left keys. Many laptop bioses have a setting for mouse button assignment. Many window managers have a setting that permutes the assignment. Within the X Window System core protocol
The X Window System core protocolRobert W. Scheifler and James Gettys: ''X Window System: Core and extension protocols, X version 11, releases 6 and 6.1'', Digital Press 1996, RFC 1013Grant EdwardsAn Introduction to X11 User Interfaces/ref> is the ...
, permutation can be applied by xmodmap(1).
Moving the pointer by keys
Other than , all other numeric keys from the numeric keypad are used to move the pointer on the screen. For example, will move the pointer upwards, while will move it diagonally downwards to the left.
See also
* FilterKeys FilterKeys is an accessibility feature of Microsoft Windows. It tells the keyboard to ignore brief or repeated keystrokes. This makes typing easier for users with hand tremors.
History
Microsoft first introduced FilterKeys with Windows 95. The ...
* StickyKeys
Sticky keys is an accessibility feature of some graphical user interfaces which assists users who have physical disabilities or help users reduce repetitive strain injury. It serializes keystrokes instead of pressing multiple keys at a time, allowi ...
* ToggleKeys
ToggleKeys is a feature of Microsoft Windows. It is an accessibility function which is designed for people who have vision impairment or cognitive disabilities. When ToggleKeys is turned on, the computer will provide sound cues when the locking k ...
* On-screen keyboard
A virtual keyboard is a software component that allows the input of characters without the need for physical keys. The interaction with the virtual keyboard happens mostly via a touchscreen interface, but can also take place in a different form ...
References
{{DEFAULTSORT:Mouse Keys
Computer accessibility
Computing input devices
User interface techniques
Ergonomics