![XFCE4 Compose key selection](https://upload.wikimedia.org/wikipedia/commons/5/5a/XFCE4_Compose_key_selection.png)
A compose key (sometimes called multi key) is a key on a
computer keyboard
A computer keyboard is a peripheral input device modeled after the typewriter keyboard which uses an arrangement of buttons or keys to act as mechanical levers or electronic switches. Replacing early punched cards and paper tape technology ...
that indicates that the following (usually 2 or more) keystrokes trigger the insertion of an alternate character, typically a
precomposed character
A precomposed character (alternatively composite character or decomposable character) is a Unicode entity that can also be defined as a sequence of one or more other characters. A precomposed character may typically represent a letter with a diacri ...
or a symbol.
For instance, typing followed by and then will insert
ñ.
Compose keys are most popular on
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 ...
and other systems using 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 ...
, but software exists to implement them on
Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
and
macOS
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 computers. Within the market of desktop and lapt ...
.
History
The Compose Character key was introduced by engineers at
Digital Equipment Corporation
Digital Equipment Corporation (DEC ), using the trademark Digital, was a major American company in the computer industry from the 1960s to the 1990s. The company was co-founded by Ken Olsen and Harlan Anderson in 1957. Olsen was president unt ...
(DEC) on the
LK201
The LK201 is a detachable computer keyboard introduced by Digital Equipment Corporation of Maynard, Massachusetts in 1982. It was first used by Digital's VT220 ANSI/ASCII terminal and was subsequently used by the Rainbow-100, DECmate-II, and Pro- ...
keyboard, available since 1983 with the
VT220
The VT220 is a computer terminal introduced by Digital Equipment Corporation (DEC) in November 1983. The VT240 added monochrome ReGIS vector graphics support to the base model, while the VT241 did the same in color. The 200 series replaced the s ...
terminal.
The keyboard included an LED indicating that a Compose sequence is on-going. While the LK201 introduced the group of command keys between the alphanumerical block and the numerical keypad, and the "inverted T" arrangement of arrow keys, which have become standard, the compose key by contrast did not become a standard.
In 1987,
Sun Microsystems
Sun Microsystems, Inc. (Sun for short) was an American technology company that sold computers, computer components, software, and information technology services and created the Java programming language, the Solaris operating system, ZFS, the ...
released the
Sun4, the first dedicated Unix workstation that had a compose key.
On the keyboards of Sun Type 5 and 6 workstations, the Compose LED is placed in the keycap (see picture below).
ISO/IEC 9995
ISO/IEC 9995 ''Information technology — Keyboard layouts for text and office systems'' is an ISO/IEC standard series defining layout principles for computer keyboards. It does not define specific layouts but provides the base for national and ind ...
-7 designed a graphical symbol for this key, in ISO/IEC 9995-7 as symbol 15 "Compose Character", and in ISO 7000 "Graphical symbols for use on equipment" as symbol ISO-7000-2021. This symbol is encoded in
Unicode
Unicode, formally The Unicode Standard,The formal version reference is is an information technology Technical standard, standard for the consistent character encoding, encoding, representation, and handling of Character (computing), text expre ...
as .
Because
Microsoft Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
and
macOS
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 computers. Within the market of desktop and lapt ...
do not support a compose key by default, the key does not exist on most keyboards designed for modern PC hardware. When software supports compose key behaviour, some other key is used. Common examples are the right-hand
Windows key
The Windows logo key (also known as Windows-, win-, start-, logo-, flag-, or super-key) is a keyboard key which was originally introduced on the Microsoft Natural keyboard in 1994. This key became a standard key on PC keyboards. In Window ...
, the key, or one of the keys.
There is no LED or other indicator that a compose sequence is ongoing.
Compose sequences
If the Compose key is not also a modifier key, then
key rollover
Key rollover is the ability of a computer keyboard to correctly handle several simultaneous keystrokes. A keyboard with ''n''-key rollover (NKRO) can correctly detect input from each key on the keyboard at the same time, regardless of how many oth ...
means the compose key does not have to be released before the subsequent keystrokes. This makes it possible for experienced typists to enter composed characters rapidly.
Earlier versions of compose sequences followed handwriting and the
overstrike
In typography, overstrike is a method of printing characters that are missing from the printer's character set. The character is created by placing one character on another one — for example, overstriking "L" with "-" results in printing a "Š...
technique by putting the letter first and diacritics second. For example produced the character
ñ. This order is still in use,
however the inverse order known from accent-mark
dead key
A dead key is a special kind of modifier key on a mechanical typewriter, or computer keyboard, that is typically used to attach a specific diacritic to a base letter. The dead key does not generate a (complete) character by itself, but modifies th ...
s present on the last
typewriter
A typewriter is a mechanical or electromechanical machine for typing characters. Typically, a typewriter has an array of keys, and each one causes a different single character to be produced on paper by striking an inked ribbon selectivel ...
s is used today: for
ñ. This allows multiple diacritics, for instance typing for
ấ.
Non-accented characters are generally constructed from letters that when overtyped or sequenced would produce something like the character. For instance will produce the
copyright symbol
The copyright symbol, or copyright sign, (a circled capital letter C for copyright), is the symbol used in copyright notices for works other than sound recordings. 17 U.S.C. The use of the symbol is described by the Universal Copyright Conv ...
©, and will produce
Æ.
There is no intrinsic limit on sequence length, which should respect both the rules of ''mnemonics'' and ''ergonomics'', and ''feasibility'' within a comprehensive compose tree. For example, might be inserted by , where indicates circled characters, indicates inverse, indicates sans-serif, and indicates the final character.
Compared to other input methods
![Keyboard layout Czech](https://upload.wikimedia.org/wikipedia/commons/e/ed/Keyboard_layout_Czech.svg)
The primary advantage of a compose key is that the sequence used to select the character can be made up of any letters, numbers, or symbols available on the keyboard. This allows the sequence to be more
mnemonic
A mnemonic ( ) device, or memory device, is any learning technique that aids information retention or retrieval (remembering) in the human memory for better understanding.
Mnemonics make use of elaborative encoding, retrieval cues, and imag ...
, so it is easier to remember, possible to guess at if unknown, and can support far greater numbers of characters.
The primary disadvantage is that compose sequences always require at least one more keystroke. Inconvenient placement of the compose key can also slow typing.
The most common method used to enter characters not printed on the keys is a
modifier key
In computing, a modifier key is a special key (or combination) on a computer keyboard that temporarily modifies the normal action of another key when pressed together. By themselves, modifier keys usually do nothing; that is, pressing any of the , ...
such as
AltGr
AltGr (also Alt Graph) is a modifier key found on many computer keyboards (rather than a second Alt key found on US keyboards). It is primarily used to type characters that are not widely used in the territory where sold, such as foreign c ...
. This method suffers from the limitation that AltGr adds just two more (shifted and unshifted) associations for each key. The additional characters made available are typically customized to the local market and thus meet the needs of most users, most of the time. The default UK/Ireland layout, for example, provides (via AltGr+aeiou) the letters á é à ó ú that are needed for
Irish Gaelic
Irish (Standard Irish: ), also known as Gaelic, is a Goidelic language of the Insular Celtic branch of the Celtic language family, which is a part of the Indo-European language family. Irish is indigenous to the island of Ireland and was the ...
but consequently not the letters à è ì ò ù needed for
Scottish Gaelic
Scottish Gaelic ( gd, GÃ idhlig ), also known as Scots Gaelic and Gaelic, is a Goidelic language (in the Celtic branch of the Indo-European language family) native to the Gaels of Scotland. As a Goidelic language, Scottish Gaelic, as well as ...
.
A
dead key
A dead key is a special kind of modifier key on a mechanical typewriter, or computer keyboard, that is typically used to attach a specific diacritic to a base letter. The dead key does not generate a (complete) character by itself, but modifies th ...
treats the first character in any sequence as a modifier for the next key
when pressed, the key appears to have no effect until the next key is pressed. (Most systems try to make the choice of dead key a logical part of the character selection; this makes sense for
accent marks
A diacritic (also diacritical mark, diacritical point, diacritical sign, or accent) is a glyph added to a letter or to a basic glyph. The term derives from the Ancient Greek (, "distinguishing"), from (, "to distinguish"). The word ''diacriti ...
and the concept is extended to other symbols). For example, the
grave
A grave is a location where a dead body (typically that of a human, although sometimes that of an animal) is buried or interred after a funeral. Graves are usually located in special areas set aside for the purpose of burial, such as grave ...
("backtick") key () is often a dead key: to achieve , the sequence is used. Compound sequences are possible: for example to add a
two dots (diacritic)
Diacritical marks of two dots , placed side-by-side over or under a letter, are used in a number of languages for several different purposes. The most familiar to English language speakers are the diaeresis and the umlaut, though there are num ...
, the seems an obvious candidate but clearly this heavily used key cannot be repurposed as a dead key. The solution is to modify it using AltGr, thus delivers . Other combinations are rather less obvious than their compose-key counterparts: for example compare with for (ChromeOS with UK extended mapping).
Alt code
On personal computers with numeric keypads that use Microsoft operating systems, such as Windows, many characters that do not have a dedicated key combination on the keyboard may nevertheless be entered using the Alt code (the Alt numpad input me ...
s or
Unicode numerical input could almost be considered a compose key, but use unintuitive numbers, instead of mnemonics, as the selector.
Modern GUI character choosers often require a search function that is not much different than the compose sequences to locate a character quickly.
Software support
X Window System
X header files call the Compose Key the "Multi_key". On
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 ...
the default Compose Key is +, (while pressing ''before'' is the "fourth keyboard level modifier", a different key). As this is rather inconvenient (especially for keyboards without an ) it is common to select a keyboard layout where another key such as the right-hand or is mapped to the compose key, this option is normally available in the settings of the desktop environment. The X keyboard driver does not allow the key used for Compose to also function as a modifier. On modern systems a vast number of compose sequences are supported.
Windows
On Microsoft Windows, a few programs such as
PuTTY
Putty is a material with high plasticity, similar in texture to clay or dough, typically used in domestic construction and repair as a sealant or filler. Although some types of putty (typically those using linseed oil) slowly polymerise and be ...
provide compose-key support. To emulate the compose key for all software, keyboard shortcut utilities are often involved. There are also a number of
open-source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized sof ...
utilities
A public utility company (usually just utility) is an organization that maintains the infrastructure for a public service (often also providing a service using that infrastructure). Public utilities are subject to forms of public control and r ...
(such as WinCompose, AllChars, Compose-Keys, or Compose). Installable keyboard layouts (such as KbdEdit) are available that contain a compose key assigned to one of the keys like or . They work by using the
dead-key chaining feature that is more commonly used to input letters with multiple diacritics. Such keyboard layouts can also be programmed directly in C (the language Windows drivers are written in), compiled using the free-of-charge Windows Driver Kit, and packaged using the free-of-charge Microsoft Keyboard Layout Creator 1.4, compatible up to the latest versions of the OS.
macOS
Although the
Cocoa
Cocoa may refer to:
Chocolate
* Chocolate
* ''Theobroma cacao'', the cocoa tree
* Cocoa bean, seed of ''Theobroma cacao''
* Chocolate liquor, or cocoa liquor, pure, liquid chocolate extracted from the cocoa bean, including both cocoa butter and ...
text input system allows entry of many alternate and accented characters natively in macOS,
a true compose-key solution is not built in. At least one has been implemented using the Karabiner utility,
which works with all applications, as does the use of certain keyboard layouts (e.g. "ABC – Extended") where Compose is implemented using the dead key chaining feature.
ChromeOS
Although
ChromeOS
ChromeOS, sometimes stylized as chromeOS and formerly styled as Chrome OS, is a Linux-based operating system designed by Google. It is derived from the open-source ChromiumOS and uses the Google Chrome web browser as its principal user interfac ...
is
supplied with a larger repertoire of glyphs than most competitors, the chords needed to achieve them are not always as obvious as the Compose concept provides. Google has made available an add-on (ComposeKey) to compete in this market.
DOS
Under DOS, compose key support depended on the running application, or on a loadable keyboard driver. For example,
Lotus 1-2-3
Lotus 1-2-3 is a discontinued spreadsheet program from Lotus Software (later part of IBM). It was the first killer application of the IBM PC, was hugely popular in the 1980s, and significantly contributed to the success of IBM PC-compatibles i ...
used as compose key to allow easier input of many special characters of the
Lotus International Character Set (LICS)
and
Lotus Multi-Byte Character Set
The Lotus Multi-Byte Character Set (LMBCS) is a proprietary multi-byte character encoding originally conceived in 1988 at Lotus Development Corporation with input from Bob Balaban and others. Created around the same time and addressing some of the ...
(LMBCS).
Common compose combinations
The table shown below shows some of the default compositions for the
X.Org server
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 ...
. For modern systems which support Unicode, the table below is far from complete.
See also
*
*
Notes
References
External links
Xlib Compose Keys for en_US.UTF-8official current X.org X11 Compose Key sequence
with equivalent Unicode mappings
{{keyboard keys
Computer keys