Compose key

Last updated
Xfce keyboard layout settings window, featuring a compose-key option XFCE4 Compose key selection.png
Xfce keyboard layout settings window, featuring a compose-key option

A compose key (sometimes called multi key) is a key on a computer keyboard that indicates that the following (usually 2 or more) keystrokes trigger the insertion of an alternate character, typically a precomposed character or a symbol. [1]

Contents

For instance, typing Compose followed by ~ and then n will insert ñ.

Compose keys are most popular on Linux and other systems using the X Window System, but software exists to implement them on Windows and macOS.

History

The Compose Character key [2] [3] was introduced by engineers at Digital Equipment Corporation (DEC) on the LK201 keyboard, available since 1983 with the VT220 terminal. [4] The keyboard included an LED indicating that a Compose sequence is on-going. [5] 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, [6] the compose key by contrast did not become a standard.

In 1987, Sun Microsystems released the Sun4, the first dedicated Unix workstation that had a compose key. [4] On the keyboards of Sun Type 5 and 6 workstations, the Compose LED is placed in the keycap (see picture below).

ISO/IEC 9995-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 as U+2384COMPOSITION SYMBOL.

Because Microsoft Windows and macOS 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 AltGr key, or one of the Ctrl keys. [7] There is no keyboard LED or other physical indicator that a compose sequence is ongoing, though the OS may show some icon (such as the "Compose Character" symbol, below) on the user's text input field.

Compose sequences

If the Compose key is not also a modifier key, then key rollover 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 technique by putting the letter first and diacritics second. For example Composen~ produced the character ñ. This order is still in use, [8] however the inverse order known from accent-mark dead keys present on the last typewriters is used today: Compose~n for ñ. [9] This allows multiple diacritics, for instance typing Compose'^a for .

Non-accented characters are generally constructed from letters that when overtyped or sequenced would produce something like the character. For instance Composeoc will produce the copyright symbol ©, and ComposeAE 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, U+278CDINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT THREE might be inserted by Compose@%$3, where @ indicates circled characters, [10] % indicates inverse, $ indicates sans-serif, and 3 indicates the final character.

Compared to other input methods

Czech QWERTZ keyboard layout. Characters achieved using AltGr are shown in blue, dead keys are shown in red Keyboard layout Czech.svg
Czech QWERTZ keyboard layout. Characters achieved using AltGr are shown in blue, dead keys are shown in red

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, 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 such as AltGr. 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 but consequently not the letters à è ì ò ù needed for Scottish Gaelic.

A dead key treats the first character in any sequence as a modifier for the next key[s]: 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 and the concept is extended to other symbols). For example, the grave ("backtick") key (`) is often a dead key: to achieve à, the sequence `+a is used. Compound sequences are possible: for example to add a two dots (diacritic), 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 AltGr+2 a delivers ä. [lower-alpha 1] Other combinations are rather less obvious than their compose-key counterparts: for example compare Compose+,+s with AltGr+= s for ş (ChromeOS with UK extended mapping).

Alt codes 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 the default Compose Key is ⇧ Shift+AltGr, [11] (while pressing AltGrbefore⇧ Shift is the "fourth keyboard level modifier", a different key). As this is rather inconvenient (especially for keyboards without an AltGr), it is common to select a keyboard layout where another key such as the right-hand Ctrl or Win 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.[ citation needed ] On modern systems a vast number of compose sequences are supported. [12]

Windows

On Microsoft Windows, a few programs such as PuTTY provide compose-key support.[ citation needed ] To emulate the compose key for all software, keyboard shortcut utilities are often involved. There are also a number of open-source utilities (such as WinCompose, [13] AllChars, [14] Compose-Keys, [15] or Compose [16] ). Installable keyboard layouts (such as KbdEdit [17] ) are available that contain a compose key assigned to one of the keys like Ctrl or AltGr. 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, [18] and packaged using the free-of-charge Microsoft Keyboard Layout Creator 1.4, [19] compatible up to the latest versions of the OS.

macOS

Although the Cocoa text input system allows entry of many alternate and accented characters natively in macOS, [20] a true compose-key solution is not built in. At least one has been implemented using the Karabiner utility, [8] 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. [20]

ChromeOS

Although ChromeOS 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. [21] [22]

DOS

Under DOS, compose key support depended on the running application, or on a loadable keyboard driver. For example, Lotus 1-2-3 used Alt+F1 as compose key to allow easier input of many special characters of the Lotus International Character Set (LICS) [23] and Lotus Multi-Byte Character Set (LMBCS).

Common compose combinations

The table shown below shows some of the default compositions for the X.Org server. For modern systems which support Unicode, the table below is far from complete. [12]

typefor
Compose'a á
Compose"a ä
Compose`a à
Compose~a ã
Compose^a â
Composeca ǎ
Composeoa å
Compose-a ā
Compose,a ą
Composeua ă
Compose?a
Compose.a ȧ
Above work for
most uppercase and
lowercase vowels.
typefor
Composeae æ
ComposeAE Æ
Composeoe œ
ComposeOE Œ
Composedh ð
ComposeDH Ð
Composeoo °
Composeox ¤
Composeoc ©
Composeor ®
Composeso §
Composess ß
ComposeSS
Composeth þ
ComposeTH Þ
Composetm
Composexx ×
Compose..
Compose.^ ·
typefor
Compose<< «
Compose>> »
Compose// \
Compose/C
Compose/o ø
Compose/O Ø
Compose?? ¿
Compose'<
Compose'>
Compose,c ç
Compose,C Ç
Compose"<
Compose">
Compose!! ¡
Compose---
Compose--.
Compose-: ÷
Compose-d đ
Compose-D Đ
typefor
Compose-L £
Compose^0
Compose^1¹
Compose^2²
Compose^3³
Compose^_a ª
Compose^_o º
Compose_0
Compose_1
Compose_2
Compose_3
Compose~n ñ
Compose<s š
Compose|c ¢
Compose=y ¥
Compose=p
Compose=c
Compose12½
Compose14¼
Compose34¾

See also

Notes

  1. AltGr+2 rather than AltGr+" because 2 and " share the same key in the UK/Ireland layout and AltGr+⇧ Shift+2 is already assigned to ½ (12).

Related Research Articles

<span class="mw-page-title-main">QWERTY</span> Keyboard layout for Latin-script alphabets

QWERTY is a keyboard layout for Latin-script alphabets. The name comes from the order of the first six keys on the top letter row of the keyboard. The QWERTY design is based on a layout included in the Sholes and Glidden typewriter sold via E. Remington and Sons from 1874. QWERTY became popular with the success of the Remington No. 2 of 1878, and remains in ubiquitous use.

<span class="mw-page-title-main">Pilcrow</span> Character used to denote a paragraph (¶)

The pilcrow, , is a handwritten or typographical character used to identify a paragraph. It is also called the paragraph mark, paraph, or blind P.

In computing, a modifier key is a special key 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 ⇧ Shift, Alt, or Ctrl keys alone does not (generally) trigger any action from the computer.

<span class="mw-page-title-main">QWERTZ</span> Keyboard layout

The QWERTZ or QWERTZU keyboard is a typewriter and keyboard layout widely used in Central and Southeast Europe. The name comes from the first six letters at the top left of the keyboard:.

<span class="mw-page-title-main">AZERTY</span> Keyboard layout used for French

AZERTY is a specific layout for the characters of the Latin alphabet on typewriter keys and computer keyboards. The layout takes its name from the first six letters to appear on the first row of alphabetical keys; that is,. Similar to the QWERTZ layout, it is modelled on the English QWERTY layout. It is used in France and Belgium, although each of these countries has its own national variation on the layout. Luxembourg and Switzerland use the Swiss QWERTZ keyboard. Most residents of Quebec, the mainly French-speaking province of Canada, use a QWERTY keyboard that has been adapted to the French language such as the Multilingual Standard keyboard CAN/CSA Z243.200-92 which is stipulated by the government of Quebec and the Government of Canada.

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 the character generated by the key struck immediately after. Thus, a dedicated key is not needed for each possible combination of a diacritic and a letter, but rather only one dead key for each diacritic is needed, in addition to the normal base letter keys.

<span class="mw-page-title-main">Shift key</span> Typing keyboard key

The Shift key⇧ Shift is a modifier key on a keyboard, used to type capital letters and other alternate "upper" characters. There are typically two shift keys, on the left and right sides of the row below the home row. The Shift key's name originated from the typewriter, where one had to press and hold the button to shift up the case stamp to change to capital letters; the shift key was first used in the Remington No. 2 Type-Writer of 1878; the No. 1 model was capital-only. On the US layout and similar keyboard layouts, characters that typically require the use of the shift key include the parentheses, the question mark, the exclamation point, and the colon.

The International Alphabet of Sanskrit Transliteration (IAST) is a transliteration scheme that allows the lossless romanisation of Indic scripts as employed by Sanskrit and related Indic languages. It is based on a scheme that emerged during the 19th century from suggestions by Charles Trevelyan, William Jones, Monier Monier-Williams and other scholars, and formalised by the Transliteration Committee of the Geneva Oriental Congress, in September 1894. IAST makes it possible for the reader to read the Indic text unambiguously, exactly as if it were in the original Indic script. It is this faithfulness to the original scripts that accounts for its continuing popularity amongst scholars.

<span class="mw-page-title-main">AltGr key</span> Modifier key on some computer keyboards

AltGr is a modifier key found on many computer keyboards. It is primarily used to type special characters and symbols that are not widely used in the territory where sold, such as foreign currency symbols, typographic marks and accented letters. On a typical Windows-compatible PC keyboard, the AltGr key, when present, takes the place of the right-hand Alt key. The key at this location will operate as AltGr if a keyboard layout using AltGr is chosen in the operating system, regardless of what is engraved on the key. In macOS, the Option key has functions similar to the AltGr key.

<span class="mw-page-title-main">Alt key</span> Computer key

The Alt keyAlt on a computer keyboard is used to change (alternate) the function of other pressed keys. Thus, the Alt key is a modifier key, used in a similar fashion to the Shift key. For example, simply pressing A will type the letter 'a', but holding down the Alt key while pressing A will cause the computer to perform an Alt+A function, which varies from program to program. The international standard ISO/IEC 9995-2 calls it Alternate key. The key is located on either side of the space bar, but in non-US PC keyboard layouts, rather than a second Alt key, there is an 'Alt Gr' key to the right of the space bar. Both placements are in accordance with ISO/IEC 9995-2. With some keyboard mappings, the right Alt key can be reconfigured to function as an AltGr key although not engraved as such.

The degree symbol or degree sign, °, is a glyph or symbol that is used, among other things, to represent degrees of arc, hours, degrees of temperature or alcohol proof. The symbol consists of a small superscript circle.

The currency sign¤ is a character used to denote an unspecified currency. It can be described as a circle the size of a lowercase character with four short radiating arms at 45° (NE), 135° (SE), 225° (SW) and 315° (NW). It is raised slightly above the baseline. The character is sometimes called scarab.

There are two major English language computer keyboard layouts, the United States layout and the United Kingdom layout defined in BS 4822. Both are QWERTY layouts. Users in the United States do not frequently need to make use of the £ (pound) and € (euro) currency symbols, which are common needs in the United Kingdom and Ireland, although the $ symbol is also provided as standard on UK and Irish keyboards. In other countries which predominantly use English as a common working language, such as Australia, Canada, and New Zealand, the US keyboard is commonly used.

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 numerous others. For example, in Albanian, ë represents a schwa. Such diacritics are also sometimes used for stylistic reasons.

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. This is done by pressing and holding the Alt key, then typing a number on the keyboard's numeric keypad that identifies the character and then releasing Alt.

<span class="mw-page-title-main">Hebrew keyboard</span> Keyboard layout

A Hebrew keyboard comes in two different keyboard layouts. Most Hebrew keyboards are bilingual, with Latin characters, usually in a US Qwerty layout. Trilingual keyboard options also exist, with the third script being Arabic or Russian, due to the sizable Arabic- and Russian-speaking populations in Israel.

<span class="mw-page-title-main">Unicode input</span> Input characters using their Unicode code points

Unicode input is the insertion of a specific Unicode character on a computer by a user; it is a common way to input characters not directly supported by a physical keyboard. Unicode characters can be produced either by selecting them from a display or by typing a certain sequence of keys on a physical keyboard. In addition, a character produced by one of these methods in one web page or document can be copied into another. In contrast to ASCII's 96 element character set, Unicode encodes hundreds of thousands of graphemes (characters) from almost all of the world's written languages and many other signs and symbols besides.

<span class="mw-page-title-main">Keyboard layout</span> Arrangement of keys on a typographic keyboard

A keyboard layout is any specific physical, visual, or functional arrangement of the keys, legends, or key-meaning associations (respectively) of a computer keyboard, mobile phone, or other computer-controlled typographic keyboard.

There are a number of methods to input Esperanto letters and text on a computer, e.g. when using a word processor or email. Input methods depend on a computer's operating system. Specifically the characters ĵ, ĝ, ĉ, ĥ, ŭ, ŝ can be problematic.

References

  1. "Linux Keyboard Text Symbols: Compose-Key Shortcuts". FSymbols. 2013-07-24. Retrieved 2015-07-07.
  2. "p1060628". WickensOnline. 2007. Archived from the original on 2015-04-13. Retrieved 2015-07-07.
  3. "LK201_large_keycodes.jpg" (JPEG). The NetBSD Project. Retrieved 2015-07-09.
  4. 1 2 "Add a Virtual Compose Key to Your PC". Windows.Appstorm. Archived from the original on 2020-11-06. Retrieved 2015-07-07.
  5. "p1060631". WickensOnline. 2007. Archived from the original on 2015-04-13. Retrieved 2015-07-07.
  6. Burrows, Jim (2009-09-21). "Inverse-T History". Nerd Corner. Retrieved 2015-07-09.
  7. "Compose Key on Windows". Earthwithsun.com. Archived from the original on 2016-03-03. Retrieved 2015-07-07.
  8. 1 2 "Setting up a Real Compose Key on Mac OS X". Lol Engine. 2012-06-18. Archived from the original on 2020-06-22. Retrieved 2015-07-07.
  9. "Enter european accented characters on an american keyboard". ZoneO Software. June 2006. Archived from the original on 2015-04-18. Retrieved 2015-07-07.
  10. @ is suggested for circled characters, rather than o, so that Compose@c can yield U+24D2CIRCLED LATIN SMALL LETTER C, while Composeoc yields U+00A9©COPYRIGHT SIGN.
  11. "Compose Key". Ubuntu. Retrieved 2012-07-10.
  12. 1 2 Monniaux, David. "UTF-8 (Unicode) compose sequence" . Retrieved 2015-07-15.
  13. Compose Key for Windows – GitHub.
  14. AllChars – SourceForge.net.
  15. Compose Keys – GitHub.
  16. Compose – GitHub.
  17. KbdEdit – Emulating Compose key using chained dead keys.
  18. Windows Driver Kit Version 7.1.0 – Official Microsoft Download Center.
  19. Microsoft Keyboard Layout Creator 1.4 – Official Microsoft Download Center.
  20. 1 2 Wust, J. 'Mach' (2015-06-29). "U.S. custom Keyboard Layout". SourceForge. Retrieved 2015-07-07.
  21. "extra-keyboards-for-chrome-os/composekey/". github.com. Retrieved 28 January 2020.
  22. "ComposeKey". Chrome Store. Retrieved 28 January 2020.
  23. "Appendix F". HP 95LX User's Guide (PDF) (2 ed.). Corvallis, OR, USA: Hewlett-Packard Company, Corvallis Division. June 1991 [March 1991]. F0001-90003. Archived (PDF) from the original on 2016-11-28. Retrieved 2016-11-27.