For obvious physical reasons, your keyboard cannot contain all possible character combinations. This problem was recognized long ago by the X11 people, who came out with (IMHO) a beautiful and elegant solution: compose a.k.a. multi_key. This will let you type all accented and diacritics characters needed in latin languages and encodings, as well as some ASCII characters that your keyboard may be missing (such as {}). In this short howto I will show how to enable it in a Linux PC with the Gnome desktop.
IMHO the simplest way to enable the compose key in Gnome is to bind it to the left "windows" key (that is otherwise unused AFAIK) by using the Gnome keyboard preferences applet, as show in this image
To use the Compose key: press and release it ; then press and release other two keys in sequence, and they will be combined to form one character.
Examples of combinations (where I list the two keys and the resulting char)As you see , there is a wide choice of characters you can compose. In Debian , a complete list of key combinations may be found in "Compose" files that are in /usr/share/X11 ; such as /usr/share/X11/locale/iso8859-1/Compose