Space-cadet keyboard
![](http://upload.wikimedia.org/wikipedia/commons/thumb/4/47/Space-cadet.jpg/400px-Space-cadet.jpg)
The space-cadet keyboard is a keyboard used on MIT Lisp machines and designed by Tom Knight, which inspired several still-current jargon terms in the field of computer science and influenced the design of Emacs. It was inspired by the Knight keyboard (also developed by Tom Knight), which was developed for the Knight TV system, used with MIT's Incompatible Timesharing System.
The Symbolics-labeled version shown here was only used with the LM-2, which was Symbolics's repackaged version of the MIT CADR. Later Symbolics systems used a greatly simplified keyboard, the Symbolics keyboard, that retained only the basic layout and the more commonly used function and modifier keys from the space-cadet keyboard.[1]
Description
The space-cadet keyboard was equipped with seven modifier keys: four keys for bucky bits ("control", "meta", "super", and "hyper"), and three shift keys, called "shift", "top", and "front". Meta had been introduced on the earlier Knight keyboard, while Hyper and Super were introduced by this keyboard.[2] Each group was each in a row, thus allowing easy pressing of several modifier keys via chording; for example, Ctrl-Meta-Hyper-Super could be pressed with the fingers of one hand, while pressing another key with the other hand.
Many keys had three symbols on them, accessible via the shift keys: a letter and a symbol on the top, and a Greek letter on the front. For example, the "L" key had an "L" and a two-way arrow on the top, and the Greek letter lambda ("λ") on the front. By pressing this key with the right hand while playing an appropriate "chord" with the left hand on the shift keys, the user could get the following results:
Key pressed | Result |
---|---|
L | l (lowercase L) |
⇧ Shift+L | L (uppercase L) |
Front+L | λ (lowercase lambda) |
Front+⇧ Shift+L | Λ (uppercase lambda) |
Top+L | ⇔ (two-way arrow) |
Each of these might, in addition, be typed with any combination of the "control", "meta", "super", and "hyper" keys. On this keyboard, it is possible to type over 8,000 different characters. This allowed the user to type very complicated mathematical text, and also to have thousands of single-character commands at their disposal. Many users were willing to memorise the command meanings of that many characters if it reduced typing time. This attitude shaped the interface of Emacs;[3] compare the use of the Escape key in vi, due to the convenient position of the key on the ADM-3A terminal.[4] Other users, however, thought that so many bucky bits was overkill, and objected to this design on the grounds that such a keyboard can require three or four hands[2] to operate. As a result of Emacs making frequent use of multiple modifiers, which are easy on the space-cadet keyboard, it is substantially harder to use on modern keyboards, whose layout generally follows the Model M IBM PC keyboard, where the modifier keys are not grouped together and thus are harder to press together.[4] This is also the reason Emacs uses "M-" as the prefix for "Alt" when describing keypresses: the "M-" stood for "meta" on the space-cadet keyboard, and when Emacs was ported to PCs, the "Alt" key was used in place of "Meta".
This keyboard included a Macro Key which had limited application support. It also included four Roman Numeral keys (I, II, III, and IV) which allowed for easy interaction with lists of four or fewer choices.[2]
See also
References
This article is based in part on the Jargon File, which is in the public domain.
- ^ Xah Lee (2011-10-27). "Space-cadet Keyboard and Lisp Machine Keyboards".
- ^ a b c The Jargon File. Xinware Corporation. p. 128. ISBN 1-897454-66-X.
- ^ Raymond, Eric S.; Cameron, Debra; Rosenblatt, Bill (1996). Learning GNU Emacs, 2nd Edition. Sebastopol, CA: O'Reilly. pp. 408–409. ISBN 1-56592-152-6.
- ^ a b Xah Lee. "History of Emacs & vi Keys (Keyboard Influence on Keybinding Design)".
External links
- Space Cadet: Mike McMahon's discussion of the keyboard, with illustrative pictures and technical documentation
- Jargon File entry on the space-cadet keyboard
- The Lisp keyboards: overview of the space-cadet and other famous Lisp keyboards
- Xah Lee (2011-10-27). "Space-cadet Keyboard and Lisp Machine Keyboards".