A key recognized by X that you can use to enter a whole range of Unicode characters with mnemonic key sequences. For example, compose-singlequote-e to enter an “é” (e-acute) character. Note this is not a “modifier” key, it’s more like a “dead” key—you press it, let it go, then press the rest of the keys in the sequence in turn.
Here’s how to get some of the more common accented characters:
accents | key sequence |
acute: á, é, í, ó, ú | compose-singlequote-letter |
caret: â, ê, î, ô, û | compose-caret-letter |
cedilla: ç | compose-comma-letter |
grave: à, è, ì, ò, ù | compose-backquote-letter |
macron: ā, ē, ī, ō, ū | compose-underscore-letter |
tilde: ã, ñ, õ | compase-tilde-letter |
umlaut: ä, ë, ï, ö, ü | compose-doublequote-letter |
By default this function is not assigned to any key. You can tell the X server what key to use for this function with a command of the form
setxkbmap -option compose:keyname
for example
setxkbmap -option compose:caps
to assign it to the caps-lock key. (Do you use caps-lock for anything else? I don’t.) GUI environments like GNOME and KDE probably provide some way you can configure this automatically every time you login.
The key sequences you can use depend on your locale, and are defined in the file
/usr/share/X11/locale/localename/Compose
To get the largest choice of characters, make sure you select a UTF-8-encoded locale.
But this can be useful even if you don’t write accented characters and text in multiple languages: the characters available include typographic niceties like the following:
description | looks like | key sequence |
opening double quote | “ | compose-lessthan-doublequote |
closing double quote | ” | compose-greaterthan-doublequote |
opening single quote | ‘ | compose-lessthan-singlequote |
closing single quote/apostrophe | ’ | compose-greaterthan-singlequote |
em-dash | — | compose-hyphen-hyphen-hyphen |
paragraph symbol/pilcrow | ¶ | compose-p-exclamation |
section symbol | § | compose-s-o or compose-o-s |
degree sign | ° | compose-o-o |
multiplication | × | compose-x-x |
division | ÷ | compose-colon-dash |
not equal | ≠ | compose-slash-equals |
cents sign | ¢ | compose-c-slash or compose-slash-c |
euro sign | € | compose-c-equals or compose-equals-c |
pound sign | £ | compose-capitalL-minus |
copyright | © | compose-c-o or compose-o-c |
registered trademark | ® | compose-o-r |
trademark | ™ | compose-t-m |
If a character displays as an empty box, that means your currently-selected font does not define it.
2 pages link to ComposeKey: