Commit 9f1724b3 authored by Takao Fujiwara's avatar Takao Fujiwara Committed by Matthias Clasen

Update gtk_compose_seqs_compact[] table for French layout bepo variant.

fr(bepo) XKB keymap sends dead_stroke with AltGr+l keys
and gtk-im-simple-context should send '/' with
dead_stroke+dead_stroke keys but gtkimcontextsimpleseqs.h
was not sorted in the descending order and failed to get
dead_stroke.
Also need to add dead_currency for Shift+AltGr+e and
dead_belowcomma for Shift+AltGr+Cedilla.

https://bugzilla.gnome.org/show_bug.cgi?id=736250
parent a13c4113
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# compose-parse.py, version 1.3
# compose-parse.py, version 1.4
#
# multifunction script that helps manage the compose sequence table in GTK+ (gtk/gtkimcontextsimple.c)
# the script produces statistics and information about the whole process, run with --help for more.
......@@ -279,7 +279,7 @@ def process_gdkkeysymsh():
""" Patch up the keysymdb with some of our own stuff """
""" This is for a missing keysym from the currently upstream file """
keysymdb['dead_stroke'] = 0x338
###keysymdb['dead_stroke'] = 0x338
""" This is for a missing keysym from the currently upstream file """
###keysymdb['dead_belowring'] = 0x323
......@@ -335,12 +335,12 @@ def process_keysymstxt():
""" Patch up the keysymdb with some of our own stuff """
""" This is for a missing keysym from the currently upstream file """
###keysymdb['dead_belowring'] = 0x323
###keysymdb['dead_belowmacron'] = 0x331
###keysymdb['dead_belowcircumflex'] = 0x32d
###keysymdb['dead_belowtilde'] = 0x330
###keysymdb['dead_belowbreve'] = 0x32e
###keysymdb['dead_belowdiaeresis'] = 0x324
keysymdb['dead_belowring'] = 0x323
keysymdb['dead_belowmacron'] = 0x331
keysymdb['dead_belowcircumflex'] = 0x32d
keysymdb['dead_belowtilde'] = 0x330
keysymdb['dead_belowbreve'] = 0x32e
keysymdb['dead_belowdiaeresis'] = 0x324
""" This is preferential treatment for Greek """
""" => we get more savings if used for Greek """
......@@ -375,6 +375,8 @@ def process_keysymstxt():
keysymdb['ninesubscript'] = 0x2089
keysymdb['dead_doublegrave'] = 0x030F
keysymdb['dead_invertedbreve'] = 0x0311
keysymdb['dead_belowcomma'] = 0xfe6e
keysymdb['dead_currency'] = 0xfe6f
keysymdb['dead_greek'] = 0xfe8c
return keysymdb
......@@ -550,14 +552,9 @@ for line in xorg_compose_sequences_raw:
"0x0342" in sequence or \
"0x0314" in sequence:
continue
if "dead_belowring" in sequence or\
"dead_currency" in sequence or\
"dead_belowcomma" in sequence or\
"dead_belowmacron" in sequence or\
"dead_belowtilde" in sequence or\
"dead_belowbreve" in sequence or\
"dead_belowdiaeresis" in sequence or\
"dead_belowcircumflex" in sequence:
if codepoint > 0xFFFF:
if opt_verbose:
print "Ignore the line greater than guint16:\n%s" % line
continue
#for i in range(len(sequence)):
# if sequence[i] == "0x0342":
......
......@@ -72,7 +72,7 @@ struct _GtkComposeTableCompact
*/
#include "gtkimcontextsimpleseqs.h"
/* From the values below, the value 24 means the number of different first keysyms
/* From the values below, the value 30 means the number of different first keysyms
* that exist in the Compose file (from Xorg). When running compose-parse.py without
* parameters, you get the count that you can put here. Needed when updating the
* gtkimcontextsimpleseqs.h header file (contains the compose sequences).
......@@ -80,7 +80,7 @@ struct _GtkComposeTableCompact
static const GtkComposeTableCompact gtk_compose_table_compact = {
gtk_compose_seqs_compact,
5,
25,
30,
6
};
......
......@@ -65,79 +65,36 @@
*/
static const guint16 gtk_compose_seqs_compact[] = {
GDK_KEY_dead_stroke, 150, 238, 250, 250, 250,
GDK_KEY_Greek_accentdieresis, 250, 254, 254, 254, 254,
GDK_KEY_dead_grave, 254, 316, 403, 615, 615,
GDK_KEY_dead_acute, 615, 679, 775, 1051, 1051,
GDK_KEY_dead_circumflex, 1051, 1175, 1175, 1375, 1375,
GDK_KEY_dead_tilde, 1375, 1459, 1522, 1662, 1662,
GDK_KEY_dead_macron, 1662, 1708, 1726, 1798, 1798,
GDK_KEY_dead_breve, 1798, 1848, 1848, 1872, 1872,
GDK_KEY_dead_abovedot, 1872, 1902, 1905, 1941, 1941,
GDK_KEY_dead_diaeresis, 1941, 2029, 2038, 2062, 2062,
GDK_KEY_dead_abovering, 2062, 2072, 2072, 2072, 2072,
GDK_KEY_dead_doubleacute, 2072, 2082, 2082, 2082, 2082,
GDK_KEY_dead_caron, 2082, 2124, 2124, 2132, 2132,
GDK_KEY_dead_cedilla, 2132, 2144, 2144, 2144, 2144,
GDK_KEY_dead_ogonek, 2144, 2154, 2154, 2154, 2154,
GDK_KEY_dead_iota, 2154, 2176, 2275, 2707, 3367,
GDK_KEY_dead_voiced_sound, 3367, 3413, 3413, 3413, 3413,
GDK_KEY_dead_semivoiced_sound, 3413, 3423, 3423, 3423, 3423,
GDK_KEY_dead_belowdot, 3423, 3439, 3439, 3455, 3455,
GDK_KEY_dead_hook, 3455, 3533, 3536, 3592, 3592,
GDK_KEY_dead_horn, 3592, 3602, 3602, 3602, 3602,
GDK_KEY_dead_psili, 3602, 3630, 3630, 3630, 3630,
GDK_KEY_dead_dasia, 3630, 3662, 3662, 3662, 3662,
GDK_KEY_dead_greek, 3662, 3764, 3788, 3788, 3788,
GDK_KEY_Multi_key, 3788, 3788, 10241, 13949, 15824,
GDK_KEY_space, 0x002F,
GDK_KEY_2, 0x01BB,
GDK_KEY_A, 0x023A,
GDK_KEY_B, 0x0243,
GDK_KEY_C, 0x023B,
GDK_KEY_D, 0x0110,
GDK_KEY_E, 0x0246,
GDK_KEY_G, 0x01E4,
GDK_KEY_H, 0x0126,
GDK_KEY_I, 0x0197,
GDK_KEY_J, 0x0248,
GDK_KEY_L, 0x0141,
GDK_KEY_O, 0x00D8,
GDK_KEY_P, 0x2C63,
GDK_KEY_R, 0x024C,
GDK_KEY_T, 0x0166,
GDK_KEY_U, 0x0244,
GDK_KEY_Y, 0x024E,
GDK_KEY_Z, 0x01B5,
GDK_KEY_a, 0x2C65,
GDK_KEY_b, 0x0180,
GDK_KEY_c, 0x023C,
GDK_KEY_d, 0x0111,
GDK_KEY_e, 0x0247,
GDK_KEY_g, 0x01E5,
GDK_KEY_h, 0x0127,
GDK_KEY_i, 0x0268,
GDK_KEY_j, 0x0249,
GDK_KEY_l, 0x0142,
GDK_KEY_o, 0x00F8,
GDK_KEY_p, 0x1D7D,
GDK_KEY_r, 0x024D,
GDK_KEY_t, 0x0167,
GDK_KEY_u, 0x0289,
GDK_KEY_y, 0x024F,
GDK_KEY_z, 0x01B6,
GDK_KEY_nobreakspace, 0x0338,
GDK_KEY_Oacute, 0x01FE,
GDK_KEY_oacute, 0x01FF,
0x0237, 0x025F,
0x0269, 0x1D7C,
GDK_KEY_dead_stroke, 0x002F,
GDK_KEY_lessthanequal, 0x2270,
GDK_KEY_greaterthanequal, 0x2271,
GDK_KEY_dead_acute, GDK_KEY_O, 0x01FE,
GDK_KEY_dead_acute, GDK_KEY_o, 0x01FF,
GDK_KEY_dead_abovedot, GDK_KEY_j, 0x025F,
GDK_KEY_dead_greek, GDK_KEY_r, 0x03FC,
GDK_KEY_Greek_accentdieresis, 180, 184, 184, 184, 184,
GDK_KEY_dead_grave, 184, 246, 333, 545, 545,
GDK_KEY_dead_acute, 545, 609, 705, 981, 981,
GDK_KEY_dead_circumflex, 981, 1105, 1105, 1305, 1305,
GDK_KEY_dead_tilde, 1305, 1389, 1452, 1592, 1592,
GDK_KEY_dead_macron, 1592, 1638, 1656, 1728, 1728,
GDK_KEY_dead_breve, 1728, 1778, 1778, 1802, 1802,
GDK_KEY_dead_abovedot, 1802, 1832, 1835, 1871, 1871,
GDK_KEY_dead_diaeresis, 1871, 1959, 1971, 1995, 1995,
GDK_KEY_dead_abovering, 1995, 2005, 2005, 2005, 2005,
GDK_KEY_dead_doubleacute, 2005, 2015, 2015, 2015, 2015,
GDK_KEY_dead_caron, 2015, 2057, 2057, 2065, 2065,
GDK_KEY_dead_cedilla, 2065, 2077, 2083, 2083, 2083,
GDK_KEY_dead_ogonek, 2083, 2093, 2093, 2093, 2093,
GDK_KEY_dead_iota, 2093, 2115, 2214, 2646, 3306,
GDK_KEY_dead_voiced_sound, 3306, 3352, 3352, 3352, 3352,
GDK_KEY_dead_semivoiced_sound, 3352, 3362, 3362, 3362, 3362,
GDK_KEY_dead_belowdot, 3362, 3378, 3378, 3394, 3394,
GDK_KEY_dead_hook, 3394, 3472, 3475, 3531, 3531,
GDK_KEY_dead_horn, 3531, 3541, 3541, 3541, 3541,
GDK_KEY_dead_stroke, 3541, 3629, 3641, 3641, 3641,
GDK_KEY_dead_psili, 3641, 3669, 3669, 3669, 3669,
GDK_KEY_dead_dasia, 3669, 3701, 3701, 3701, 3701,
GDK_KEY_dead_belowring, 3701, 3703, 3703, 3703, 3703,
GDK_KEY_dead_belowtilde, 3703, 3705, 3705, 3705, 3705,
GDK_KEY_dead_belowdiaeresis, 3705, 3705, 3708, 3708, 3708,
GDK_KEY_dead_belowcomma, 3708, 3722, 3722, 3722, 3722,
GDK_KEY_dead_currency, 3722, 3820, 3826, 3826, 3826,
GDK_KEY_dead_greek, 3826, 3928, 3952, 3952, 3952,
GDK_KEY_Multi_key, 3952, 3952, 10348, 14044, 15919,
GDK_KEY_Greek_iota, 0x0390,
GDK_KEY_Greek_upsilon, 0x03B0,
GDK_KEY_space, 0x0060,
......@@ -285,11 +242,11 @@ GDK_KEY_Greek_omicron, 0x03CC,
GDK_KEY_Greek_upsilon, 0x03CD,
GDK_KEY_Greek_omega, 0x03CE,
GDK_KEY_dead_acute, 0x00B4,
GDK_KEY_dead_stroke, GDK_KEY_O, 0x01FE,
GDK_KEY_dead_stroke, GDK_KEY_o, 0x01FF,
GDK_KEY_dead_diaeresis, GDK_KEY_space, 0x0385,
GDK_KEY_dead_diaeresis, GDK_KEY_Greek_iota, 0x0390,
GDK_KEY_dead_diaeresis, GDK_KEY_Greek_upsilon, 0x03B0,
GDK_KEY_dead_stroke, GDK_KEY_O, 0x01FE,
GDK_KEY_dead_stroke, GDK_KEY_o, 0x01FF,
GDK_KEY_dead_psili, GDK_KEY_Greek_ALPHA, 0x1F0C,
GDK_KEY_dead_psili, GDK_KEY_Greek_EPSILON, 0x1F1C,
GDK_KEY_dead_psili, GDK_KEY_Greek_ETA, 0x1F2C,
......@@ -746,6 +703,7 @@ GDK_KEY_dead_diaeresis, 0x00A8,
GDK_KEY_dead_acute, GDK_KEY_space, 0x0385,
GDK_KEY_dead_acute, GDK_KEY_Greek_iota, 0x0390,
GDK_KEY_dead_acute, GDK_KEY_Greek_upsilon, 0x03B0,
GDK_KEY_dead_belowdiaeresis, GDK_KEY_equal, 0x2A77,
GDK_KEY_Multi_key, GDK_KEY_underscore, GDK_KEY_U, 0x1E7A,
GDK_KEY_Multi_key, GDK_KEY_underscore, GDK_KEY_u, 0x1E7B,
GDK_KEY_Multi_key, GDK_KEY_asciitilde, GDK_KEY_O, 0x1E4E,
......@@ -791,6 +749,8 @@ GDK_KEY_cent, 0x20B5,
GDK_KEY_Cacute, 0x1E08,
GDK_KEY_cacute, 0x1E09,
GDK_KEY_dead_cedilla, 0x00B8,
GDK_KEY_dead_currency, GDK_KEY_C, 0x20B5,
GDK_KEY_dead_currency, GDK_KEY_c, 0x20B5,
GDK_KEY_space, 0x02DB,
GDK_KEY_nobreakspace, 0x0328,
GDK_KEY_Omacron, 0x01EC,
......@@ -1179,6 +1139,54 @@ GDK_KEY_nobreakspace, 0x031B,
GDK_KEY_Utilde, 0x1EEE,
GDK_KEY_utilde, 0x1EEF,
GDK_KEY_dead_horn, 0x031B,
GDK_KEY_space, 0x002F,
GDK_KEY_2, 0x01BB,
GDK_KEY_A, 0x023A,
GDK_KEY_B, 0x0243,
GDK_KEY_C, 0x023B,
GDK_KEY_D, 0x0110,
GDK_KEY_E, 0x0246,
GDK_KEY_G, 0x01E4,
GDK_KEY_H, 0x0126,
GDK_KEY_I, 0x0197,
GDK_KEY_J, 0x0248,
GDK_KEY_L, 0x0141,
GDK_KEY_O, 0x00D8,
GDK_KEY_P, 0x2C63,
GDK_KEY_R, 0x024C,
GDK_KEY_T, 0x0166,
GDK_KEY_U, 0x0244,
GDK_KEY_Y, 0x024E,
GDK_KEY_Z, 0x01B5,
GDK_KEY_a, 0x2C65,
GDK_KEY_b, 0x0180,
GDK_KEY_c, 0x023C,
GDK_KEY_d, 0x0111,
GDK_KEY_e, 0x0247,
GDK_KEY_g, 0x01E5,
GDK_KEY_h, 0x0127,
GDK_KEY_i, 0x0268,
GDK_KEY_j, 0x0249,
GDK_KEY_l, 0x0142,
GDK_KEY_o, 0x00F8,
GDK_KEY_p, 0x1D7D,
GDK_KEY_r, 0x024D,
GDK_KEY_t, 0x0167,
GDK_KEY_u, 0x0289,
GDK_KEY_y, 0x024F,
GDK_KEY_z, 0x01B6,
GDK_KEY_nobreakspace, 0x0338,
GDK_KEY_Oacute, 0x01FE,
GDK_KEY_oacute, 0x01FF,
0x0237, 0x025F,
0x0269, 0x1D7C,
GDK_KEY_lessthanequal, 0x2270,
GDK_KEY_greaterthanequal, 0x2271,
GDK_KEY_dead_stroke, 0x002F,
GDK_KEY_dead_acute, GDK_KEY_O, 0x01FE,
GDK_KEY_dead_acute, GDK_KEY_o, 0x01FF,
GDK_KEY_dead_abovedot, GDK_KEY_j, 0x025F,
GDK_KEY_dead_greek, GDK_KEY_r, 0x03FC,
GDK_KEY_Greek_ALPHA, 0x1F08,
GDK_KEY_Greek_EPSILON, 0x1F18,
GDK_KEY_Greek_ETA, 0x1F28,
......@@ -1209,6 +1217,67 @@ GDK_KEY_Greek_omicron, 0x1F41,
GDK_KEY_Greek_rho, 0x1FE5,
GDK_KEY_Greek_upsilon, 0x1F51,
GDK_KEY_Greek_omega, 0x1F61,
GDK_KEY_bar, 0x2AF0,
GDK_KEY_plus, 0x2A26,
GDK_KEY_dead_diaeresis, GDK_KEY_equal, 0x2A77,
GDK_KEY_space, 0x002C,
GDK_KEY_S, 0x0218,
GDK_KEY_T, 0x021A,
GDK_KEY_s, 0x0219,
GDK_KEY_t, 0x021B,
GDK_KEY_nobreakspace, 0x0326,
GDK_KEY_dead_belowcomma, 0x002C,
GDK_KEY_space, 0x00A4,
GDK_KEY_A, 0x20B3,
GDK_KEY_B, 0x20B1,
GDK_KEY_C, 0x20A1,
GDK_KEY_D, 0x20AF,
GDK_KEY_E, 0x20A0,
GDK_KEY_F, 0x20A3,
GDK_KEY_G, 0x20B2,
GDK_KEY_H, 0x20B4,
GDK_KEY_I, 0x17DB,
GDK_KEY_K, 0x20AD,
GDK_KEY_L, 0x20A4,
GDK_KEY_M, 0x2133,
GDK_KEY_N, 0x20A6,
GDK_KEY_O, 0x0AF1,
GDK_KEY_P, 0x20A7,
GDK_KEY_R, 0x20A8,
GDK_KEY_S, 0x0024,
GDK_KEY_T, 0x20AE,
GDK_KEY_U, 0x5713,
GDK_KEY_W, 0x20A9,
GDK_KEY_Y, 0x5186,
GDK_KEY_a, 0x060B,
GDK_KEY_b, 0x0E3F,
GDK_KEY_c, 0x00A2,
GDK_KEY_d, 0x20AB,
GDK_KEY_e, 0x20AC,
GDK_KEY_f, 0x0192,
GDK_KEY_g, 0x20B2,
GDK_KEY_h, 0x20B4,
GDK_KEY_i, 0xFDFC,
GDK_KEY_k, 0x20AD,
GDK_KEY_l, 0x00A3,
GDK_KEY_m, 0x20A5,
GDK_KEY_n, 0x20A6,
GDK_KEY_o, 0x0BF9,
GDK_KEY_p, 0x20B0,
GDK_KEY_r, 0x20A2,
GDK_KEY_s, 0x20AA,
GDK_KEY_t, 0x09F3,
GDK_KEY_u, 0x5143,
GDK_KEY_w, 0x20A9,
GDK_KEY_y, 0x00A5,
GDK_KEY_nobreakspace, 0x00A4,
GDK_KEY_Ccedilla, 0x20B5,
GDK_KEY_THORN, 0x09F2,
GDK_KEY_ccedilla, 0x20B5,
GDK_KEY_thorn, 0x09F2,
GDK_KEY_dead_currency, 0x00A4,
GDK_KEY_dead_cedilla, GDK_KEY_C, 0x20B5,
GDK_KEY_dead_cedilla, GDK_KEY_c, 0x20B5,
GDK_KEY_space, 0x00B5,
GDK_KEY_A, 0x0391,
GDK_KEY_B, 0x0392,
......@@ -1260,7 +1329,6 @@ GDK_KEY_y, 0x03C8,
GDK_KEY_z, 0x03B6,
GDK_KEY_nobreakspace, 0x00B5,
GDK_KEY_dead_greek, 0x00B5,
GDK_KEY_dead_stroke, GDK_KEY_r, 0x03FC,
GDK_KEY_dead_macron, GDK_KEY_A, 0x1FB9,
GDK_KEY_dead_macron, GDK_KEY_I, 0x1FD9,
GDK_KEY_dead_macron, GDK_KEY_U, 0x1FE9,
......@@ -1268,6 +1336,7 @@ GDK_KEY_dead_macron, GDK_KEY_a, 0x1FB1,
GDK_KEY_dead_macron, GDK_KEY_i, 0x1FD1,
GDK_KEY_dead_macron, GDK_KEY_u, 0x1FE1,
GDK_KEY_dead_hook, GDK_KEY_U, 0x03D2,
GDK_KEY_dead_stroke, GDK_KEY_r, 0x03FC,
GDK_KEY_space, GDK_KEY_space, 0x00A0,
GDK_KEY_space, GDK_KEY_apostrophe, 0x0027,
GDK_KEY_space, GDK_KEY_parenleft, 0x02D8,
......@@ -1292,7 +1361,6 @@ GDK_KEY_exclam, GDK_KEY_L, 0x1E36,
GDK_KEY_exclam, GDK_KEY_M, 0x1E42,
GDK_KEY_exclam, GDK_KEY_N, 0x1E46,
GDK_KEY_exclam, GDK_KEY_O, 0x1ECC,
GDK_KEY_exclam, GDK_KEY_P, 0x00B6,
GDK_KEY_exclam, GDK_KEY_R, 0x1E5A,
GDK_KEY_exclam, GDK_KEY_S, 0x1E62,
GDK_KEY_exclam, GDK_KEY_T, 0x1E6C,
......@@ -1313,7 +1381,6 @@ GDK_KEY_exclam, GDK_KEY_l, 0x1E37,
GDK_KEY_exclam, GDK_KEY_m, 0x1E43,
GDK_KEY_exclam, GDK_KEY_n, 0x1E47,
GDK_KEY_exclam, GDK_KEY_o, 0x1ECD,
GDK_KEY_exclam, GDK_KEY_p, 0x00B6,
GDK_KEY_exclam, GDK_KEY_r, 0x1E5B,
GDK_KEY_exclam, GDK_KEY_s, 0x1E63,
GDK_KEY_exclam, GDK_KEY_t, 0x1E6D,
......@@ -1509,12 +1576,6 @@ GDK_KEY_apostrophe, 0x2395, 0x235E,
GDK_KEY_parenleft, GDK_KEY_space, 0x02D8,
GDK_KEY_parenleft, GDK_KEY_parenleft, 0x005B,
GDK_KEY_parenleft, GDK_KEY_minus, 0x007B,
GDK_KEY_parenleft, GDK_KEY_A, 0x0102,
GDK_KEY_parenleft, GDK_KEY_G, 0x011E,
GDK_KEY_parenleft, GDK_KEY_a, 0x0103,
GDK_KEY_parenleft, GDK_KEY_c, 0x00A9,
GDK_KEY_parenleft, GDK_KEY_g, 0x011F,
GDK_KEY_parenleft, GDK_KEY_r, 0x00AE,
GDK_KEY_parenleft, GDK_KEY_Greek_ALPHA, 0x1F09,
GDK_KEY_parenleft, GDK_KEY_Greek_EPSILON, 0x1F19,
GDK_KEY_parenleft, GDK_KEY_Greek_ETA, 0x1F29,
......@@ -1575,6 +1636,7 @@ GDK_KEY_comma, GDK_KEY_I, 0x012E,
GDK_KEY_comma, GDK_KEY_K, 0x0136,
GDK_KEY_comma, GDK_KEY_L, 0x013B,
GDK_KEY_comma, GDK_KEY_N, 0x0145,
GDK_KEY_comma, GDK_KEY_O, 0x01EA,
GDK_KEY_comma, GDK_KEY_R, 0x0156,
GDK_KEY_comma, GDK_KEY_S, 0x015E,
GDK_KEY_comma, GDK_KEY_T, 0x0162,
......@@ -1589,6 +1651,7 @@ GDK_KEY_comma, GDK_KEY_i, 0x012F,
GDK_KEY_comma, GDK_KEY_k, 0x0137,
GDK_KEY_comma, GDK_KEY_l, 0x013C,
GDK_KEY_comma, GDK_KEY_n, 0x0146,
GDK_KEY_comma, GDK_KEY_o, 0x01EB,
GDK_KEY_comma, GDK_KEY_r, 0x0157,
GDK_KEY_comma, GDK_KEY_s, 0x015F,
GDK_KEY_comma, GDK_KEY_t, 0x0163,
......@@ -1601,13 +1664,12 @@ GDK_KEY_minus, GDK_KEY_comma, 0x00AC,
GDK_KEY_minus, GDK_KEY_slash, 0x233F,
GDK_KEY_minus, GDK_KEY_colon, 0x00F7,
GDK_KEY_minus, GDK_KEY_greater, 0x2192,
GDK_KEY_minus, GDK_KEY_A, 0x00C3,
GDK_KEY_minus, GDK_KEY_A, 0x0100,
GDK_KEY_minus, GDK_KEY_D, 0x0110,
GDK_KEY_minus, GDK_KEY_E, 0x0112,
GDK_KEY_minus, GDK_KEY_I, 0x012A,
GDK_KEY_minus, GDK_KEY_L, 0x00A3,
GDK_KEY_minus, GDK_KEY_N, 0x00D1,
GDK_KEY_minus, GDK_KEY_O, 0x00D5,
GDK_KEY_minus, GDK_KEY_O, 0x014C,
GDK_KEY_minus, GDK_KEY_U, 0x016A,
GDK_KEY_minus, GDK_KEY_Y, 0x00A5,
GDK_KEY_minus, GDK_KEY_backslash, 0x2340,
......@@ -1617,7 +1679,6 @@ GDK_KEY_minus, GDK_KEY_d, 0x0111,
GDK_KEY_minus, GDK_KEY_e, 0x0113,
GDK_KEY_minus, GDK_KEY_i, 0x012B,
GDK_KEY_minus, GDK_KEY_l, 0x00A3,
GDK_KEY_minus, GDK_KEY_n, 0x00F1,
GDK_KEY_minus, GDK_KEY_o, 0x014D,
GDK_KEY_minus, GDK_KEY_u, 0x016B,
GDK_KEY_minus, GDK_KEY_y, 0x00A5,
......@@ -1691,7 +1752,6 @@ GDK_KEY_slash, GDK_KEY_I, 0x0197,
GDK_KEY_slash, GDK_KEY_L, 0x0141,
GDK_KEY_slash, GDK_KEY_O, 0x00D8,
GDK_KEY_slash, GDK_KEY_T, 0x0166,
GDK_KEY_slash, GDK_KEY_U, 0x00B5,
GDK_KEY_slash, GDK_KEY_Z, 0x01B5,
GDK_KEY_slash, GDK_KEY_asciicircum, 0x007C,
GDK_KEY_slash, GDK_KEY_b, 0x0180,
......@@ -1720,13 +1780,6 @@ GDK_KEY_slash, 0x2194, 0x21AE,
GDK_KEY_slash, 0x2395, 0x2341,
GDK_KEY_0, GDK_KEY_asterisk, 0x00B0,
GDK_KEY_0, GDK_KEY_3, 0x2189,
GDK_KEY_0, GDK_KEY_C, 0x00A9,
GDK_KEY_0, GDK_KEY_S, 0x00A7,
GDK_KEY_0, GDK_KEY_X, 0x00A4,
GDK_KEY_0, GDK_KEY_asciicircum, 0x00B0,
GDK_KEY_0, GDK_KEY_c, 0x00A9,
GDK_KEY_0, GDK_KEY_s, 0x00A7,
GDK_KEY_0, GDK_KEY_x, 0x00A4,
GDK_KEY_0, GDK_KEY_asciitilde, 0x236C,
GDK_KEY_1, GDK_KEY_2, 0x00BD,
GDK_KEY_1, GDK_KEY_3, 0x2153,
......@@ -1736,20 +1789,14 @@ GDK_KEY_1, GDK_KEY_6, 0x2159,
GDK_KEY_1, GDK_KEY_7, 0x2150,
GDK_KEY_1, GDK_KEY_8, 0x215B,
GDK_KEY_1, GDK_KEY_9, 0x2151,
GDK_KEY_1, GDK_KEY_S, 0x00B9,
GDK_KEY_1, GDK_KEY_asciicircum, 0x00B9,
GDK_KEY_1, GDK_KEY_s, 0x00B9,
GDK_KEY_2, GDK_KEY_3, 0x2154,
GDK_KEY_2, GDK_KEY_5, 0x2156,
GDK_KEY_2, GDK_KEY_S, 0x00B2,
GDK_KEY_2, GDK_KEY_asciicircum, 0x00B2,
GDK_KEY_2, GDK_KEY_s, 0x00B2,
GDK_KEY_3, GDK_KEY_4, 0x00BE,
GDK_KEY_3, GDK_KEY_5, 0x2157,
GDK_KEY_3, GDK_KEY_8, 0x215C,
GDK_KEY_3, GDK_KEY_S, 0x00B3,
GDK_KEY_3, GDK_KEY_asciicircum, 0x00B3,
GDK_KEY_3, GDK_KEY_s, 0x00B3,
GDK_KEY_4, GDK_KEY_5, 0x2158,
GDK_KEY_5, GDK_KEY_6, 0x215A,
GDK_KEY_5, GDK_KEY_8, 0x215D,
......@@ -1764,12 +1811,16 @@ GDK_KEY_semicolon, GDK_KEY_A, 0x0104,
GDK_KEY_semicolon, GDK_KEY_E, 0x0118,
GDK_KEY_semicolon, GDK_KEY_I, 0x012E,
GDK_KEY_semicolon, GDK_KEY_O, 0x01EA,
GDK_KEY_semicolon, GDK_KEY_S, 0x0218,
GDK_KEY_semicolon, GDK_KEY_T, 0x021A,
GDK_KEY_semicolon, GDK_KEY_U, 0x0172,
GDK_KEY_semicolon, GDK_KEY_underscore, 0x236E,
GDK_KEY_semicolon, GDK_KEY_a, 0x0105,
GDK_KEY_semicolon, GDK_KEY_e, 0x0119,
GDK_KEY_semicolon, GDK_KEY_i, 0x012F,
GDK_KEY_semicolon, GDK_KEY_o, 0x01EB,
GDK_KEY_semicolon, GDK_KEY_s, 0x0219,
GDK_KEY_semicolon, GDK_KEY_t, 0x021B,
GDK_KEY_semicolon, GDK_KEY_u, 0x0173,
GDK_KEY_less, GDK_KEY_space, 0x02C7,
GDK_KEY_less, GDK_KEY_quotedbl, 0x201C,
......@@ -1802,6 +1853,7 @@ GDK_KEY_less, GDK_KEY_z, 0x017E,
GDK_KEY_less, 0x0338, 0x226E,
GDK_KEY_less, 0x2395, 0x2343,
GDK_KEY_equal, GDK_KEY_slash, 0x2260,
GDK_KEY_equal, GDK_KEY_greater, 0x21D2,
GDK_KEY_equal, GDK_KEY_C, 0x20AC,
GDK_KEY_equal, GDK_KEY_E, 0x20AC,
GDK_KEY_equal, GDK_KEY_L, 0x20A4,
......@@ -1814,7 +1866,6 @@ GDK_KEY_equal, GDK_KEY_underscore, 0x2261,
GDK_KEY_equal, GDK_KEY_c, 0x20AC,
GDK_KEY_equal, GDK_KEY_d, 0x20AB,
GDK_KEY_equal, GDK_KEY_e, 0x20AC,
GDK_KEY_equal, GDK_KEY_l, 0x00A3,
GDK_KEY_equal, GDK_KEY_o, 0x0151,
GDK_KEY_equal, GDK_KEY_u, 0x0171,
GDK_KEY_equal, GDK_KEY_y, 0x00A5,
......@@ -1872,13 +1923,14 @@ GDK_KEY_A, GDK_KEY_apostrophe, 0x00C1,
GDK_KEY_A, GDK_KEY_parenleft, 0x0102,
GDK_KEY_A, GDK_KEY_asterisk, 0x00C5,
GDK_KEY_A, GDK_KEY_comma, 0x0104,
GDK_KEY_A, GDK_KEY_minus, 0x00C3,
GDK_KEY_A, GDK_KEY_minus, 0x0100,
GDK_KEY_A, GDK_KEY_semicolon, 0x0104,
GDK_KEY_A, GDK_KEY_greater, 0x00C2,
GDK_KEY_A, GDK_KEY_A, 0x00C5,
GDK_KEY_A, GDK_KEY_E, 0x00C6,
GDK_KEY_A, GDK_KEY_T, 0x0040,
GDK_KEY_A, GDK_KEY_asciicircum, 0x00C2,
GDK_KEY_A, GDK_KEY_underscore, 0x00AA,
GDK_KEY_A, GDK_KEY_underscore, 0x0100,
GDK_KEY_A, GDK_KEY_grave, 0x00C0,
GDK_KEY_A, GDK_KEY_asciitilde, 0x00C3,
GDK_KEY_A, GDK_KEY_diaeresis, 0x00C4,
......@@ -1888,7 +1940,6 @@ GDK_KEY_C, GDK_KEY_apostrophe, 0x0106,
GDK_KEY_C, GDK_KEY_comma, 0x00C7,
GDK_KEY_C, GDK_KEY_period, 0x010A,
GDK_KEY_C, GDK_KEY_slash, 0x20A1,
GDK_KEY_C, GDK_KEY_0, 0x00A9,
GDK_KEY_C, GDK_KEY_less, 0x010C,
GDK_KEY_C, GDK_KEY_equal, 0x20AC,
GDK_KEY_C, GDK_KEY_E, 0x20A0,
......@@ -1906,6 +1957,7 @@ GDK_KEY_E, GDK_KEY_apostrophe, 0x00C9,
GDK_KEY_E, GDK_KEY_comma, 0x0118,
GDK_KEY_E, GDK_KEY_minus, 0x0112,
GDK_KEY_E, GDK_KEY_period, 0x0116,
GDK_KEY_E, GDK_KEY_semicolon, 0x0118,
GDK_KEY_E, GDK_KEY_less, 0x011A,
GDK_KEY_E, GDK_KEY_equal, 0x20AC,
GDK_KEY_E, GDK_KEY_greater, 0x00CA,
......@@ -1929,6 +1981,7 @@ GDK_KEY_I, GDK_KEY_apostrophe, 0x00CD,
GDK_KEY_I, GDK_KEY_comma, 0x012E,
GDK_KEY_I, GDK_KEY_minus, 0x012A,
GDK_KEY_I, GDK_KEY_period, 0x0130,
GDK_KEY_I, GDK_KEY_semicolon, 0x012E,
GDK_KEY_I, GDK_KEY_greater, 0x00CE,
GDK_KEY_I, GDK_KEY_J, 0x0132,
GDK_KEY_I, GDK_KEY_asciicircum, 0x00CE,
......@@ -1944,12 +1997,11 @@ GDK_KEY_L, GDK_KEY_comma, 0x013B,
GDK_KEY_L, GDK_KEY_minus, 0x00A3,
GDK_KEY_L, GDK_KEY_slash, 0x0141,
GDK_KEY_L, GDK_KEY_less, 0x013D,
GDK_KEY_L, GDK_KEY_equal, 0x00A3,
GDK_KEY_L, GDK_KEY_equal, 0x20A4,
GDK_KEY_L, GDK_KEY_V, 0x007C,
GDK_KEY_M, GDK_KEY_period, 0x1E40,
GDK_KEY_N, GDK_KEY_apostrophe, 0x0143,
GDK_KEY_N, GDK_KEY_comma, 0x0145,
GDK_KEY_N, GDK_KEY_minus, 0x00D1,
GDK_KEY_N, GDK_KEY_less, 0x0147,
GDK_KEY_N, GDK_KEY_equal, 0x20A6,
GDK_KEY_N, GDK_KEY_G, 0x014A,
......@@ -1958,8 +2010,10 @@ GDK_KEY_N, GDK_KEY_o, 0x2116,
GDK_KEY_N, GDK_KEY_asciitilde, 0x00D1,
GDK_KEY_O, GDK_KEY_quotedbl, 0x00D6,
GDK_KEY_O, GDK_KEY_apostrophe, 0x00D3,
GDK_KEY_O, GDK_KEY_minus, 0x00D5,
GDK_KEY_O, GDK_KEY_comma, 0x01EA,
GDK_KEY_O, GDK_KEY_minus, 0x014C,
GDK_KEY_O, GDK_KEY_slash, 0x00D8,
GDK_KEY_O, GDK_KEY_semicolon, 0x01EA,
GDK_KEY_O, GDK_KEY_greater, 0x00D4,
GDK_KEY_O, GDK_KEY_A, 0x24B6,
GDK_KEY_O, GDK_KEY_C, 0x00A9,
......@@ -1968,7 +2022,7 @@ GDK_KEY_O, GDK_KEY_R, 0x00AE,
GDK_KEY_O, GDK_KEY_S, 0x00A7,
GDK_KEY_O, GDK_KEY_X, 0x00A4,
GDK_KEY_O, GDK_KEY_asciicircum, 0x00D4,
GDK_KEY_O, GDK_KEY_underscore, 0x00BA,
GDK_KEY_O, GDK_KEY_underscore, 0x014C,
GDK_KEY_O, GDK_KEY_grave, 0x00D2,
GDK_KEY_O, GDK_KEY_c, 0x00A9,
GDK_KEY_O, GDK_KEY_r, 0x00AE,
......@@ -1989,20 +2043,17 @@ GDK_KEY_S, GDK_KEY_exclam, 0x00A7,
GDK_KEY_S, GDK_KEY_apostrophe, 0x015A,
GDK_KEY_S, GDK_KEY_comma, 0x015E,
GDK_KEY_S, GDK_KEY_period, 0x1E60,
GDK_KEY_S, GDK_KEY_0, 0x00A7,
GDK_KEY_S, GDK_KEY_1, 0x00B9,
GDK_KEY_S, GDK_KEY_2, 0x00B2,
GDK_KEY_S, GDK_KEY_3, 0x00B3,
GDK_KEY_S, GDK_KEY_semicolon, 0x0218,
GDK_KEY_S, GDK_KEY_less, 0x0160,
GDK_KEY_S, GDK_KEY_M, 0x2120,
GDK_KEY_S, GDK_KEY_O, 0x00A7,
GDK_KEY_S, GDK_KEY_S, 0x1E9E,
GDK_KEY_S, GDK_KEY_m, 0x2120,
GDK_KEY_S, GDK_KEY_cedilla, 0x015E,
GDK_KEY_T, GDK_KEY_comma, 0x0162,
GDK_KEY_T, GDK_KEY_minus, 0x0166,
GDK_KEY_T, GDK_KEY_period, 0x1E6A,
GDK_KEY_T, GDK_KEY_slash, 0x0166,
GDK_KEY_T, GDK_KEY_semicolon, 0x021A,
GDK_KEY_T, GDK_KEY_less, 0x0164,
GDK_KEY_T, GDK_KEY_H, 0x00DE,
GDK_KEY_T, GDK_KEY_M, 0x2122,
......@@ -2012,7 +2063,7 @@ GDK_KEY_U, GDK_KEY_apostrophe, 0x00DA,
GDK_KEY_U, GDK_KEY_asterisk, 0x016E,
GDK_KEY_U, GDK_KEY_comma, 0x0172,
GDK_KEY_U, GDK_KEY_minus, 0x016A,
GDK_KEY_U, GDK_KEY_slash, 0x00B5,
GDK_KEY_U, GDK_KEY_semicolon, 0x0172,
GDK_KEY_U, GDK_KEY_greater, 0x00DB,
GDK_KEY_U, GDK_KEY_A, 0x0102,
GDK_KEY_U, GDK_KEY_E, 0x0114,
......@@ -2055,7 +2106,6 @@ GDK_KEY_U, 0x1EA1, 0x1EB7,
GDK_KEY_V, GDK_KEY_L, 0x007C,
GDK_KEY_W, GDK_KEY_equal, 0x20A9,
GDK_KEY_W, GDK_KEY_asciicircum, 0x0174,
GDK_KEY_X, GDK_KEY_0, 0x00A4,
GDK_KEY_X, GDK_KEY_O, 0x00A4,
GDK_KEY_X, GDK_KEY_o, 0x00A4,
GDK_KEY_Y, GDK_KEY_quotedbl, 0x0178,
......@@ -2104,7 +2154,6 @@ GDK_KEY_asciicircum, GDK_KEY_U, 0x00DB,
GDK_KEY_asciicircum, GDK_KEY_W, 0x0174,
GDK_KEY_asciicircum, GDK_KEY_Y, 0x0176,
GDK_KEY_asciicircum, GDK_KEY_Z, 0x1E90,
GDK_KEY_asciicircum, GDK_KEY_underscore, 0x00AF,
GDK_KEY_asciicircum, GDK_KEY_a, 0x00E2,
GDK_KEY_asciicircum, GDK_KEY_c, 0x0109,
GDK_KEY_asciicircum, GDK_KEY_e, 0x00EA,
......@@ -2325,9 +2374,10 @@ GDK_KEY_a, GDK_KEY_parenleft, 0x0103,
GDK_KEY_a, GDK_KEY_asterisk, 0x00E5,
GDK_KEY_a, GDK_KEY_comma, 0x0105,
GDK_KEY_a, GDK_KEY_minus, 0x0101,
GDK_KEY_a, GDK_KEY_semicolon, 0x0105,
GDK_KEY_a, GDK_KEY_greater, 0x00E2,
GDK_KEY_a, GDK_KEY_asciicircum, 0x00E2,
GDK_KEY_a, GDK_KEY_underscore, 0x00AA,
GDK_KEY_a, GDK_KEY_underscore, 0x0101,
GDK_KEY_a, GDK_KEY_grave, 0x00E0,
GDK_KEY_a, GDK_KEY_a, 0x00E5,
GDK_KEY_a, GDK_KEY_e, 0x00E6,
......@@ -2371,7 +2421,6 @@ GDK_KEY_c, GDK_KEY_apostrophe, 0x0107,
GDK_KEY_c, GDK_KEY_comma, 0x00E7,
GDK_KEY_c, GDK_KEY_period, 0x010B,
GDK_KEY_c, GDK_KEY_slash, 0x00A2,
GDK_KEY_c, GDK_KEY_0, 0x00A9,
GDK_KEY_c, GDK_KEY_less, 0x010D,
GDK_KEY_c, GDK_KEY_equal, 0x20AC,
GDK_KEY_c, GDK_KEY_A, 0x01CD,
......@@ -2422,6 +2471,7 @@ GDK_KEY_e, GDK_KEY_apostrophe, 0x00E9,
GDK_KEY_e, GDK_KEY_comma, 0x0119,
GDK_KEY_e, GDK_KEY_minus, 0x0113,
GDK_KEY_e, GDK_KEY_period, 0x0117,
GDK_KEY_e, GDK_KEY_semicolon, 0x0119,
GDK_KEY_e, GDK_KEY_less, 0x011B,
GDK_KEY_e, GDK_KEY_equal, 0x20AC,
GDK_KEY_e, GDK_KEY_greater, 0x00EA,
......@@ -2464,21 +2514,21 @@ GDK_KEY_l, GDK_KEY_comma, 0x013C,
GDK_KEY_l, GDK_KEY_minus, 0x00A3,
GDK_KEY_l, GDK_KEY_slash, 0x0142,
GDK_KEY_l, GDK_KEY_less, 0x013E,
GDK_KEY_l, GDK_KEY_equal, 0x00A3,
GDK_KEY_l, GDK_KEY_v, 0x007C,
GDK_KEY_m, GDK_KEY_period, 0x1E41,
GDK_KEY_m, GDK_KEY_slash, 0x20A5,
GDK_KEY_m, GDK_KEY_u, 0x00B5,
GDK_KEY_n, GDK_KEY_apostrophe, 0x0144,
GDK_KEY_n, GDK_KEY_comma, 0x0146,
GDK_KEY_n, GDK_KEY_minus, 0x00F1,
GDK_KEY_n, GDK_KEY_less, 0x0148,
GDK_KEY_n, GDK_KEY_g, 0x014B,
GDK_KEY_n, GDK_KEY_asciitilde, 0x00F1,
GDK_KEY_o, GDK_KEY_quotedbl, 0x00F6,
GDK_KEY_o, GDK_KEY_apostrophe, 0x00F3,
GDK_KEY_o, GDK_KEY_comma, 0x01EB,
GDK_KEY_o, GDK_KEY_minus, 0x014D,
GDK_KEY_o, GDK_KEY_slash, 0x00F8,
GDK_KEY_o, GDK_KEY_semicolon, 0x01EB,
GDK_KEY_o, GDK_KEY_greater, 0x00F4,
GDK_KEY_o, GDK_KEY_A, 0x00C5,
GDK_KEY_o, GDK_KEY_C, 0x00A9,
......@@ -2486,7 +2536,7 @@ GDK_KEY_o, GDK_KEY_R, 0x00AE,
GDK_KEY_o, GDK_KEY_U, 0x016E,
GDK_KEY_o, GDK_KEY_X, 0x00A4,
GDK_KEY_o, GDK_KEY_asciicircum, 0x00F4,
GDK_KEY_o, GDK_KEY_underscore, 0x00BA,
GDK_KEY_o, GDK_KEY_underscore, 0x014D,
GDK_KEY_o, GDK_KEY_grave, 0x00F2,
GDK_KEY_o, GDK_KEY_a, 0x00E5,
GDK_KEY_o, GDK_KEY_c, 0x00A9,
......@@ -2510,10 +2560,7 @@ GDK_KEY_s, GDK_KEY_exclam, 0x00A7,
GDK_KEY_s, GDK_KEY_apostrophe, 0x015B,
GDK_KEY_s, GDK_KEY_comma, 0x015F,
GDK_KEY_s, GDK_KEY_period, 0x1E61,
GDK_KEY_s, GDK_KEY_0, 0x00A7,
GDK_KEY_s, GDK_KEY_1, 0x00B9,
GDK_KEY_s, GDK_KEY_2, 0x00B2,
GDK_KEY_s, GDK_KEY_3, 0x00B3,
GDK_KEY_s, GDK_KEY_semicolon, 0x0219,
GDK_KEY_s, GDK_KEY_less, 0x0161,
GDK_KEY_s, GDK_KEY_M, 0x2120,
GDK_KEY_s, GDK_KEY_m, 0x2120,
......@@ -2524,6 +2571,7 @@ GDK_KEY_t, GDK_KEY_comma, 0x0163,
GDK_KEY_t, GDK_KEY_minus, 0x0167,
GDK_KEY_t, GDK_KEY_period, 0x1E6B,
GDK_KEY_t, GDK_KEY_slash, 0x0167,
GDK_KEY_t, GDK_KEY_semicolon, 0x021B,
GDK_KEY_t, GDK_KEY_less, 0x0165,
GDK_KEY_t, GDK_KEY_M, 0x2122,
GDK_KEY_t, GDK_KEY_h, 0x00FE,
......@@ -2534,10 +2582,14 @@ GDK_KEY_u, GDK_KEY_asterisk, 0x016F,
GDK_KEY_u, GDK_KEY_comma, 0x0173,
GDK_KEY_u, GDK_KEY_minus, 0x016B,
GDK_KEY_u, GDK_KEY_slash, 0x00B5,
GDK_KEY_u, GDK_KEY_semicolon, 0x0173,
GDK_KEY_u, GDK_KEY_greater, 0x00FB,
GDK_KEY_u, GDK_KEY_A, 0x0102,
GDK_KEY_u, GDK_KEY_U, 0x016C,
GDK_KEY_u, GDK_KEY_asciicircum, 0x00FB,
GDK_KEY_u, GDK_KEY_underscore, 0x016B,
GDK_KEY_u, GDK_KEY_grave, 0x00F9,
GDK_KEY_u, GDK_KEY_a, 0x0103,
GDK_KEY_u, GDK_KEY_u, 0x016D,
GDK_KEY_u, GDK_KEY_asciitilde, 0x0169,
GDK_KEY_u, GDK_KEY_diaeresis, 0x00FC,
......@@ -2547,7 +2599,6 @@ GDK_KEY_v, GDK_KEY_Z, 0x017D,
GDK_KEY_v, GDK_KEY_l, 0x007C,
GDK_KEY_v, GDK_KEY_z, 0x017E,
GDK_KEY_w, GDK_KEY_asciicircum, 0x0175,
GDK_KEY_x, GDK_KEY_0, 0x00A4,
GDK_KEY_x, GDK_KEY_O, 0x00A4,
GDK_KEY_x, GDK_KEY_o, 0x00A4,
GDK_KEY_x, GDK_KEY_x, 0x00D7,
......@@ -2893,7 +2944,6 @@ GDK_KEY_Greek_alpha, GDK_KEY_apostrophe, 0x03AC,
GDK_KEY_Greek_epsilon, GDK_KEY_apostrophe, 0x03AD,
GDK_KEY_Greek_eta, GDK_KEY_apostrophe, 0x03AE,
GDK_KEY_Greek_iota, GDK_KEY_quotedbl, 0x03CA,
GDK_KEY_Greek_iota, GDK_KEY_apostrophe, 0x03AF,
GDK_KEY_Greek_iota, GDK_KEY_Greek_alphaaccent, 0x1FB4,
GDK_KEY_Greek_iota, GDK_KEY_Greek_etaaccent, 0x1FC4,
GDK_KEY_Greek_iota, GDK_KEY_Greek_omegaaccent, 0x1FF4,
......@@ -3427,9 +3477,6 @@ GDK_KEY_exclam, GDK_KEY_dead_horn, GDK_KEY_O, 0x1EE2,
GDK_KEY_exclam, GDK_KEY_dead_horn, GDK_KEY_U, 0x1EF0,
GDK_KEY_exclam, GDK_KEY_dead_horn, GDK_KEY_o, 0x1EE3,
GDK_KEY_exclam, GDK_KEY_dead_horn, GDK_KEY_u, 0x1EF1,
GDK_KEY_quotedbl, GDK_KEY_apostrophe, GDK_KEY_space, 0x0385,
GDK_KEY_quotedbl, GDK_KEY_apostrophe, GDK_KEY_Greek_iota, 0x0390,