Mode (computer interface)
From Wikipedia, the free encyclopedia
In user interface design, a mode is a distinct setting within a computer program or any physical machine interface, in which the same user input will produce perceived different results than it would in other settings. The most well-known modal interface components are probably the Caps lock and Insert keys on the standard computer keyboard, both of which put the user's typing into a different mode after being pressed, then return it to the regular mode after being re-pressed.
A precise definition is given by Jef Raskin in his book "The Humane Interface":
""An human-machine interface is modal with respect to a given gesture when (1) the current state of the interface is not the user's locus of attention and (2) the interface will execute one among several different responses to the gesture, depending on the system's current state." (Page 42).
An interface that uses no modes is known as a modeless interface.
[edit] Examples
There are several popular examples of software employing modes:
- vi - has one mode for inserting text, and a separate mode for entering commands. There is also an "ex" mode for issuing more complex commands (e.g. search and replace). (Under normal circumstances this is not a true mode, since the editor automatically returns to the previous mode after a command has been issued; however, it is possible to permanently move into this mode using Shift-Q.)
- Emacs - has many "modes" that are automatically invoked based on file type to more easily edit files of that type. Modes are written in Emacs Lisp, and all modes may not be included with all versions. Note that these "modes" are quite different from vi's modes, because they have much less of an effect on the user interface.
- Cisco IOS - in order to execute certain commands, you must enter a certain "command mode" that allows you to execute that command.
- Also, tool palettes in photo-editing and drawing applications are classical examples of a modal interface.
[edit] Criticism
Modes are generally frowned upon in interface design because they inevitably lead to input errors, known as mode errors, when the user forgets what state the interface is in. Interface guru Jef Raskin came out strongly against modes, writing, "Modes are a significant source of errors, confusion, unnecessary restrictions, and complexity in interfaces." Later he notes, "'It is no accident that swearing is denoted by #&%!#$&,' writes my colleague, Dr. James Winter; it is 'what a typewriter used to do when you typed numbers when the Caps Lock was engaged'."
In the book, Raskin also championed what he termed "quasimodes", which are modes that are kept in place only through some constant action on the part of the user; Shift keys, Alt key and Control keys are all examples of a quasimodal interface.