Historical Document - Last Updated Thu Jan 30 10:56:01 2003

ISO-8859-1 compose keystrokes in Linux

I was trying to figure out how to write French on a "normal" (Microsoft US) keyboard in Linux, and in StarOffice 5.1 in Windows (and Linux). I found that there is a standard key compose table in X11 and all that it needs is to be activated by binding one of the keyboard keys to "Multi_key".
(On my system the table is in /usr/X11R6/lib/X11/locale/iso8859-1/Compose)

It is also possible to specify a keyboard with "dead keys". This reduces the number of keystrokes to 2 from 3 (e.g. comma,C instead of Compose,comma,C for Ç) but means you must type (comma,comma) to get a comma.

This works on my RedHat 6.2 system with XFree86 version 3 and a 105-key Fujitsu keyboard, and is I believe fairly general.

The table shows the keys to generate ISO-8859-1 characters using Multi_Key, here shown as "m". In ~/.Xmodmap, I have the line

keycode 117 =  Multi_key
to assign a suitable key (keycode of one of those useless "Windows" keys found with "xev") to the compose character "Multi_key". If you have a DEC keyboard with a real "compose" key then you would naturally use that.
Accented characters are built up by keying (multikey, first key, second key) as separate keystrokes (not holding down multikey)

The modifiers are mostly fairly intuitive, using punctuation characters that look vaguely like the accents - forward quote ' for acute accent, backquote ` for grave, caret ^ for circumflex, comma for cedilla, double quote " for diaeresis.

         Oct   Dec   Hex   Char   Description
	 --------------------------------------------------------------------
	 240   160   A0           NO-BREAK SPACE
m ! ! ¡	 241   161   A1     ¡     INVERTED EXCLAMATION MARK
m | c ¢	 242   162   A2     ¢     CENT SIGN
m - L £	 243   163   A3     £     POUND SIGN
m o x ¤	 244   164   A4     ¤     CURRENCY SIGN
m Y - ¥	 245   165   A5     ¥     YEN SIGN
m | | ¦	 246   166   A6     ¦     BROKEN BAR
m s o §	 247   167   A7     §     SECTION SIGN
m " " ¨  250   168   A8     ¨     DIAERESIS
m O c ©	 251   169   A9     ©     COPYRIGHT SIGN
m _ a ª	 252   170   AA     ª     FEMININE ORDINAL INDICATOR
m < < «	 253   171   AB     «     LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
m , - ¬	 254   172   AC     ¬     NOT SIGN
m - - ­	 255   173   AD     ­     SOFT HYPHEN
m O R ®	 256   174   AE     ®     REGISTERED SIGN
m - ^ ¯	 257   175   AF     ¯     MACRON
m ^ 0 °	 260   176   B0     °     DEGREE SIGN
m + - ±	 261   177   B1     ±     PLUS-MINUS SIGN
m ^ 2 ²	 262   178   B2     ²     SUPERSCRIPT TWO
m ^ 3 ³	 263   179   B3     ³     SUPERSCRIPT THREE
m ' ' ´  264   180   B4     ´     ACUTE ACCENT
m / u µ	 265   181   B5     µ     MICRO SIGN
m p ! ¶	 266   182   B6     ¶     PILCROW SIGN
m . . ·  267   183   B7     ·     MIDDLE DOT
m , , ¸  270   184   B8     ¸     CEDILLA
m ^ 1 ¹	 271   185   B9     ¹     SUPERSCRIPT ONE
m _ o º	 272   186   BA     º     MASCULINE ORDINAL INDICATOR
m > > »	 273   187   BB     »     RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
m 1 4 ¼	 274   188   BC     ¼     VULGAR FRACTION ONE QUARTER
m 1 2 ½	 275   189   BD     ½     VULGAR FRACTION ONE HALF
m 3 4 ¾	 276   190   BE     ¾     VULGAR FRACTION THREE QUARTERS
m ? ? ¿	 277   191   BF     ¿     INVERTED QUESTION MARK
m ` A À  300   192   C0     À     LATIN CAPITAL LETTER A WITH GRAVE
m ' A Á  301   193   C1     Á     LATIN CAPITAL LETTER A WITH ACUTE
m ^ A Â  302   194   C2     Â     LATIN CAPITAL LETTER A WITH CIRCUMFLEX
m ~ A Ã	 303   195   C3     Ã     LATIN CAPITAL LETTER A WITH TILDE
m " A Ä	 304   196   C4     Ä     LATIN CAPITAL LETTER A WITH DIAERESIS
m * A Å	 305   197   C5     Å     LATIN CAPITAL LETTER A WITH RING ABOVE
m A E Æ	 306   198   C6     Æ     LATIN CAPITAL LETTER AE
m , C Ç	 307   199   C7     Ç     LATIN CAPITAL LETTER C WITH CEDILLA
m ` E È	 310   200   C8     È     LATIN CAPITAL LETTER E WITH GRAVE
m ' E É	 311   201   C9     É     LATIN CAPITAL LETTER E WITH ACUTE
m ^ E Ê	 312   202   CA     Ê     LATIN CAPITAL LETTER E WITH CIRCUMFLEX
m " E Ë	 313   203   CB     Ë     LATIN CAPITAL LETTER E WITH DIAERESIS
m ` I Ì	 314   204   CC     Ì     LATIN CAPITAL LETTER I WITH GRAVE
m ' I Í	 315   205   CD     Í     LATIN CAPITAL LETTER I WITH ACUTE
m ^ I Î	 316   206   CE     Î     LATIN CAPITAL LETTER I WITH CIRCUMFLEX
m " I Ï	 317   207   CF     Ï     LATIN CAPITAL LETTER I WITH DIAERESIS
m - D Ð	 320   208   D0     Ð     LATIN CAPITAL LETTER ETH
m ~ N Ñ	 321   209   D1     Ñ     LATIN CAPITAL LETTER N WITH TILDE
m ` O Ò	 322   210   D2     Ò     LATIN CAPITAL LETTER O WITH GRAVE
m ' O Ó	 323   211   D3     Ó     LATIN CAPITAL LETTER O WITH ACUTE
m ^ O Ô	 324   212   D4     Ô     LATIN CAPITAL LETTER O WITH CIRCUMFLEX
m ~ O Õ	 325   213   D5     Õ     LATIN CAPITAL LETTER O WITH TILDE
m " O Ö	 326   214   D6     Ö     LATIN CAPITAL LETTER O WITH DIAERESIS
m x x ×	 327   215   D7     ×     MULTIPLICATION SIGN
m / O Ø	 330   216   D8     Ø     LATIN CAPITAL LETTER O WITH STROKE
m ` U Ù	 331   217   D9     Ù     LATIN CAPITAL LETTER U WITH GRAVE
m ' U Ú	 332   218   DA     Ú     LATIN CAPITAL LETTER U WITH ACUTE
m ^ U Û	 333   219   DB     Û     LATIN CAPITAL LETTER U WITH CIRCUMFLEX
m " U Ü	 334   220   DC     Ü     LATIN CAPITAL LETTER U WITH DIAERESIS
m ' Y Ý	 335   221   DD     Ý     LATIN CAPITAL LETTER Y WITH ACUTE
m T H þ	 336   222   DE     Þ     LATIN CAPITAL LETTER THORN
m s s ß	 337   223   DF     ß     LATIN SMALL LETTER SHARP S
m ` a à  340   224   E0     à     LATIN SMALL LETTER A WITH GRAVE
m ' a á	 341   225   E1     á     LATIN SMALL LETTER A WITH ACUTE
m ^ a â	 342   226   E2     â     LATIN SMALL LETTER A WITH CIRCUMFLEX
m ~ a ã	 343   227   E3     ã     LATIN SMALL LETTER A WITH TILDE
m " a ä	 344   228   E4     ä     LATIN SMALL LETTER A WITH DIAERESIS
m * a å	 345   229   E5     å     LATIN SMALL LETTER A WITH RING ABOVE
m a e æ	 346   230   E6     æ     LATIN SMALL LETTER AE
m , c ç	 347   231   E7     ç     LATIN SMALL LETTER C WITH CEDILLA
m ` e è	 350   232   E8     è     LATIN SMALL LETTER E WITH GRAVE
m ' e é	 351   233   E9     é     LATIN SMALL LETTER E WITH ACUTE
m ^ e ê	 352   234   EA     ê     LATIN SMALL LETTER E WITH CIRCUMFLEX
m " e ë	 353   235   EB     ë     LATIN SMALL LETTER E WITH DIAERESIS
m ` i ì	 354   236   EC     ì     LATIN SMALL LETTER I WITH GRAVE
m ' i í	 355   237   ED     í     LATIN SMALL LETTER I WITH ACUTE
m ^ i î	 356   238   EE     î     LATIN SMALL LETTER I WITH CIRCUMFLEX
m " i ï	 357   239   EF     ï     LATIN SMALL LETTER I WITH DIAERESIS
m - d ð	 360   240   F0     ð     LATIN SMALL LETTER ETH
m ~ n ñ	 361   241   F1     ñ     LATIN SMALL LETTER N WITH TILDE
m ` o ò	 362   242   F2     ò     LATIN SMALL LETTER O WITH GRAVE
m ' o ó	 363   243   F3     ó     LATIN SMALL LETTER O WITH ACUTE
m ^ o ô	 364   244   F4     ô     LATIN SMALL LETTER O WITH CIRCUMFLEX
m ~ o õ	 365   245   F5     õ     LATIN SMALL LETTER O WITH TILDE
m " o ö	 366   246   F6     ö     LATIN SMALL LETTER O WITH DIAERESIS
m - : ÷	 367   247   F7     ÷     DIVISION SIGN
m / o ø	 370   248   F8     ø     LATIN SMALL LETTER O WITH STROKE
m ` u ù	 371   249   F9     ù     LATIN SMALL LETTER U WITH GRAVE
m ' u ú	 372   250   FA     ú     LATIN SMALL LETTER U WITH ACUTE
m ^ u û	 373   251   FB     û     LATIN SMALL LETTER U WITH CIRCUMFLEX
m " u ü	 374   252   FC     ü     LATIN SMALL LETTER U WITH DIAERESIS
m ' y ý	 375   253   FD     ý     LATIN SMALL LETTER Y WITH ACUTE
m t h þ	 376   254   FE     þ     LATIN SMALL LETTER THORN
m " y ÿ	 377   255   FF     ÿ     LATIN SMALL LETTER Y WITH DIAERESIS
See also:
Andrew Daviel