diff --git a/eek/Makefile.am b/eek/Makefile.am index 6bfa328e..906ba1f1 100644 --- a/eek/Makefile.am +++ b/eek/Makefile.am @@ -33,8 +33,9 @@ libeek_public_headers = \ $(srcdir)/eek-keyboard.h \ $(srcdir)/eek-section.h \ $(srcdir)/eek-key.h \ - $(srcdir)/eek-types.h \ + $(srcdir)/eek-symbol.h \ $(srcdir)/eek-keysym.h \ + $(srcdir)/eek-types.h \ $(srcdir)/eek-xml.h \ $(srcdir)/eek.h @@ -43,7 +44,7 @@ libeek_private_headers = \ $(srcdir)/eek-xml-layout.h \ $(srcdir)/eek-special-keysym-entries.h \ $(srcdir)/eek-unicode-keysym-entries.h \ - $(srcdir)/eek-keyname-keysym-entries.h \ + $(srcdir)/eek-xkeysym-keysym-entries.h \ $(srcdir)/eek-marshallers.h libeek_sources = \ @@ -53,8 +54,9 @@ libeek_sources = \ $(srcdir)/eek-keyboard.c \ $(srcdir)/eek-section.c \ $(srcdir)/eek-key.c \ - $(srcdir)/eek-types.c \ + $(srcdir)/eek-symbol.c \ $(srcdir)/eek-keysym.c \ + $(srcdir)/eek-types.c \ $(srcdir)/eek-xml.c \ $(srcdir)/eek-xml-layout.c \ $(srcdir)/eek-renderer.c \ @@ -63,7 +65,7 @@ libeek_sources = \ libeek_keysym_sources = \ $(srcdir)/eek-special-keysym-entries.h \ $(srcdir)/eek-unicode-keysym-entries.h \ - $(srcdir)/eek-keyname-keysym-entries.h + $(srcdir)/eek-xkeysym-keysym-entries.h libeek_enumtypes_sources = \ $(srcdir)/eek-enumtypes.c \ @@ -156,8 +158,8 @@ eek-special-keysym-entries.h: special-keysym-entries.txt $(PYTHON) ./gen-keysym-entries.py special_keysym_entries < $< > $@ eek-unicode-keysym-entries.h: unicode-keysym-entries.txt $(PYTHON) ./gen-keysym-entries.py unicode_keysym_entries < $< > $@ -eek-keyname-keysym-entries.h: keyname-keysym-entries.txt - $(PYTHON) ./gen-keysym-entries.py keyname_keysym_entries < $< > $@ +eek-xkeysym-keysym-entries.h: xkeysym-keysym-entries.txt + $(PYTHON) ./gen-keysym-entries.py xkeysym_keysym_entries < $< > $@ # gen marshal eek-marshallers.h: eek-marshallers.list @@ -190,7 +192,7 @@ EXTRA_DIST = \ gen-keysym-entries.py \ special-keysym-entries.txt \ unicode-keysym-entries.txt \ - keyname-keysym-entries.txt \ + xkeysym-keysym-entries.txt \ eek-marshallers.list -include $(INTROSPECTION_MAKEFILE) diff --git a/eek/eek-gtk-keyboard.c b/eek/eek-gtk-keyboard.c index 7d58d0ad..a79883ef 100644 --- a/eek/eek-gtk-keyboard.c +++ b/eek/eek-gtk-keyboard.c @@ -33,7 +33,7 @@ #include "eek-keyboard.h" #include "eek-section.h" #include "eek-key.h" -#include "eek-keysym.h" +#include "eek-symbol.h" enum { PROP_0, @@ -66,7 +66,7 @@ static void on_key_pressed (EekKeyboard *keyboard, static void on_key_released (EekKeyboard *keyboard, EekKey *key, gpointer user_data); -static void on_keysym_index_changed (EekKeyboard *keyboard, +static void on_symbol_index_changed (EekKeyboard *keyboard, gint group, gint level, gpointer user_data); @@ -210,8 +210,8 @@ eek_gtk_keyboard_set_keyboard (EekGtkKeyboard *self, G_CALLBACK(on_key_pressed), self); g_signal_connect (priv->keyboard, "key-released", G_CALLBACK(on_key_released), self); - g_signal_connect (priv->keyboard, "keysym-index-changed", - G_CALLBACK(on_keysym_index_changed), self); + g_signal_connect (priv->keyboard, "symbol-index-changed", + G_CALLBACK(on_symbol_index_changed), self); } static void @@ -399,7 +399,7 @@ on_key_released (EekKeyboard *keyboard, } static void -on_keysym_index_changed (EekKeyboard *keyboard, +on_symbol_index_changed (EekKeyboard *keyboard, gint group, gint level, gpointer user_data) diff --git a/eek/eek-key.c b/eek/eek-key.c index 7fc88735..58a38030 100644 --- a/eek/eek-key.c +++ b/eek/eek-key.c @@ -37,12 +37,12 @@ #include "eek-key.h" #include "eek-section.h" #include "eek-keyboard.h" -#include "eek-keysym.h" +#include "eek-symbol.h" enum { PROP_0, PROP_KEYCODE, - PROP_KEYSYMS, + PROP_SYMBOL_MATRIX, PROP_COLUMN, PROP_ROW, PROP_OUTLINE, @@ -66,7 +66,7 @@ G_DEFINE_TYPE (EekKey, eek_key, EEK_TYPE_ELEMENT); struct _EekKeyPrivate { guint keycode; - EekKeysymMatrix keysyms; + EekSymbolMatrix *symbol_matrix; gint column; gint row; EekOutline *outline; @@ -88,53 +88,19 @@ eek_key_real_get_keycode (EekKey *self) } static void -eek_key_real_set_keysyms (EekKey *self, - guint *keysyms, - gint num_groups, - gint num_levels) +eek_key_real_set_symbol_matrix (EekKey *self, + EekSymbolMatrix *matrix) { EekKeyPrivate *priv = EEK_KEY_GET_PRIVATE(self); - gint num_keysyms = num_groups * num_levels; - - if (num_keysyms > 0) { - priv->keysyms.data = - g_slice_alloc (num_keysyms * sizeof(guint)); - memcpy (priv->keysyms.data, keysyms, - num_keysyms * sizeof(guint)); - } - priv->keysyms.num_groups = num_groups; - priv->keysyms.num_levels = num_levels; - -#if DEBUG - { - const gchar *name; - gint i; - - name = eek_element_get_name (EEK_ELEMENT(self)); - fprintf (stderr, "%s: ", name); - for (i = 0; i < priv->keysyms.num_groups * priv->keysyms.num_levels; i++) - fprintf (stderr, "\"%s\" ", eek_keysym_to_string (priv->keysyms.data[i])); - fprintf (stderr, "\n"); - } -#endif + eek_symbol_matrix_free (priv->symbol_matrix); + priv->symbol_matrix = eek_symbol_matrix_copy (matrix); } -static void -eek_key_real_get_keysyms (EekKey *self, - guint **keysyms, - gint *num_groups, - gint *num_levels) +static EekSymbolMatrix * +eek_key_real_get_symbol_matrix (EekKey *self) { EekKeyPrivate *priv = EEK_KEY_GET_PRIVATE(self); - gint num_keysyms = priv->keysyms.num_groups * priv->keysyms.num_levels; - - if (num_groups) - *num_groups = priv->keysyms.num_groups; - if (num_levels) - *num_levels = priv->keysyms.num_levels; - if (keysyms && num_keysyms > 0) { - memcpy (*keysyms, priv->keysyms.data, num_keysyms * sizeof(guint)); - } + return priv->symbol_matrix; } static void @@ -210,9 +176,7 @@ static void eek_key_finalize (GObject *object) { EekKeyPrivate *priv = EEK_KEY_GET_PRIVATE(object); - gint num_keysyms = priv->keysyms.num_groups * priv->keysyms.num_levels; - - g_slice_free1 (num_keysyms * sizeof (guint), priv->keysyms.data); + eek_symbol_matrix_free (priv->symbol_matrix); G_OBJECT_CLASS (eek_key_parent_class)->finalize (object); } @@ -222,19 +186,16 @@ eek_key_set_property (GObject *object, const GValue *value, GParamSpec *pspec) { - EekKeysymMatrix *matrix; + EekSymbolMatrix *matrix; gint column, row; switch (prop_id) { case PROP_KEYCODE: eek_key_set_keycode (EEK_KEY(object), g_value_get_uint (value)); break; - case PROP_KEYSYMS: + case PROP_SYMBOL_MATRIX: matrix = g_value_get_boxed (value); - eek_key_set_keysyms (EEK_KEY(object), - matrix->data, - matrix->num_groups, - matrix->num_levels); + eek_key_set_symbol_matrix (EEK_KEY(object), matrix); break; case PROP_COLUMN: eek_key_get_index (EEK_KEY(object), &column, &row); @@ -261,7 +222,6 @@ eek_key_get_property (GObject *object, GValue *value, GParamSpec *pspec) { - EekKeysymMatrix matrix; gint column, row; g_return_if_fail (EEK_IS_KEY(object)); @@ -269,10 +229,9 @@ eek_key_get_property (GObject *object, case PROP_KEYCODE: g_value_set_uint (value, eek_key_get_keycode (EEK_KEY(object))); break; - case PROP_KEYSYMS: - eek_key_get_keysyms (EEK_KEY(object), &matrix.data, &matrix.num_groups, - &matrix.num_levels); - g_value_set_boxed (value, &matrix); + case PROP_SYMBOL_MATRIX: + g_value_set_boxed (value, + eek_key_get_symbol_matrix (EEK_KEY(object))); break; case PROP_COLUMN: eek_key_get_index (EEK_KEY(object), &column, &row); @@ -304,8 +263,8 @@ eek_key_class_init (EekKeyClass *klass) klass->get_keycode = eek_key_real_get_keycode; klass->set_keycode = eek_key_real_set_keycode; - klass->set_keysyms = eek_key_real_set_keysyms; - klass->get_keysyms = eek_key_real_get_keysyms; + klass->set_symbol_matrix = eek_key_real_set_symbol_matrix; + klass->get_symbol_matrix = eek_key_real_get_symbol_matrix; klass->set_index = eek_key_real_set_index; klass->get_index = eek_key_real_get_index; klass->set_outline = eek_key_real_set_outline; @@ -333,16 +292,16 @@ eek_key_class_init (EekKeyClass *klass) g_object_class_install_property (gobject_class, PROP_KEYCODE, pspec); /** - * EekKey:keysyms: + * EekKey:symbol-matrix: * * The symbol matrix of #EekKey. */ - pspec = g_param_spec_boxed ("keysyms", - "Keysyms", + pspec = g_param_spec_boxed ("symbol-matrix", + "Symbol matrix", "Symbol matrix of the key", - EEK_TYPE_KEYSYM_MATRIX, + EEK_TYPE_SYMBOL_MATRIX, G_PARAM_READWRITE); - g_object_class_install_property (gobject_class, PROP_KEYSYMS, pspec); + g_object_class_install_property (gobject_class, PROP_SYMBOL_MATRIX, pspec); /** * EekKey:column: @@ -375,7 +334,7 @@ eek_key_class_init (EekKeyClass *klass) */ /* Use pointer instead of boxed to avoid copy, since we can assume that only a few outline shapes are used in a whole - keyboard (unlike keysyms and bounds). */ + keyboard (unlike symbol matrix and bounds). */ pspec = g_param_spec_pointer ("outline", "Outline", "Pointer to outline shape of the key", @@ -424,7 +383,7 @@ eek_key_init (EekKey *self) priv = self->priv = EEK_KEY_GET_PRIVATE(self); priv->keycode = 0; - memset (&priv->keysyms, 0, sizeof priv->keysyms); + priv->symbol_matrix = eek_symbol_matrix_new (0, 0); priv->column = priv->row = 0; priv->outline = NULL; } @@ -459,45 +418,32 @@ eek_key_get_keycode (EekKey *key) } /** - * eek_key_set_keysyms: + * eek_key_set_symbol_matrix: * @key: an #EekKey - * @keysyms: symbol matrix of @key - * @num_groups: number of groups (rows) of @keysyms - * @num_levels: number of levels (columns) of @keysyms + * @matrix: an #EekSymbolMatrix * - * Set the symbol matrix of @key to @keysyms. The length of @keysyms - * is @num_groups * @num_levels. + * Set the symbol matrix @matrix to @key. */ void -eek_key_set_keysyms (EekKey *key, - guint *keysyms, - gint num_groups, - gint num_levels) +eek_key_set_symbol_matrix (EekKey *key, + EekSymbolMatrix *matrix) { g_return_if_fail (EEK_IS_KEY(key)); - EEK_KEY_GET_CLASS(key)->set_keysyms (key, keysyms, num_groups, num_levels); + EEK_KEY_GET_CLASS(key)->set_symbol_matrix (key, matrix); } /** - * eek_key_get_keysyms: + * eek_key_get_symbol_matrix: * @key: an #EekKey - * @keysyms: pointer where symbol matrix of @key will be stored - * @num_groups: pointer where the number of groups (rows) of @keysyms - * will be stored - * @num_levels: pointer where the number of levels (columns) of - * @keysyms will be stored * - * Get the symbol matrix of @key. If either @keysyms, @num_groups, or - * @num_levels are NULL, this function does not try to get the value. + * Get the symbol matrix of @key. + * Returns: #EekSymbolMatrix or %NULL */ -void -eek_key_get_keysyms (EekKey *key, - guint **keysyms, - gint *num_groups, - gint *num_levels) +EekSymbolMatrix * +eek_key_get_symbol_matrix (EekKey *key) { - g_return_if_fail (EEK_IS_KEY(key)); - EEK_KEY_GET_CLASS(key)->get_keysyms (key, keysyms, num_groups, num_levels); + g_return_val_if_fail (EEK_IS_KEY(key), NULL); + return EEK_KEY_GET_CLASS(key)->get_symbol_matrix (key); } static EekKeyboard * @@ -515,54 +461,60 @@ get_keyboard (EekKey *key) } /** - * eek_key_get_keysym: + * eek_key_get_symbol: * @key: an #EekKey * * Get the current symbol of @key. - * Returns: a symbol or %EEK_INVALID_KEYSYM on failure + * Returns: an #EekSymbol or %NULL on failure */ -guint -eek_key_get_keysym (EekKey *key) +EekSymbol * +eek_key_get_symbol (EekKey *key) { gint group, level; EekKeyboard *keyboard; - g_return_val_if_fail (EEK_IS_KEY (key), EEK_INVALID_KEYSYM); + g_return_val_if_fail (EEK_IS_KEY (key), NULL); keyboard = get_keyboard (key); - g_return_val_if_fail (keyboard, EEK_INVALID_KEYSYM); + g_return_val_if_fail (keyboard, NULL); - eek_keyboard_get_keysym_index (keyboard, &group, &level); + eek_keyboard_get_symbol_index (keyboard, &group, &level); - return eek_key_get_keysym_at_index (key, group, level); + return eek_key_get_symbol_at_index (key, group, level); } /** - * eek_key_get_keysym_at_index: + * eek_key_get_symbol_at_index: * @key: an #EekKey - * @group: group index of the keysym matrix - * @level: level index of the keysym matrix + * @group: group index of the symbol matrix + * @level: level index of the symbol matrix * - * Get the symbol at (@group, @level) in the keysym matrix of @key. - * Returns: a symbol or %EEK_INVALID_KEYSYM on failure + * Get the symbol at (@group, @level) in the symbol matrix of @key. + * Returns: an #EekSymbol or %NULL on failure */ -guint -eek_key_get_keysym_at_index (EekKey *key, +EekSymbol * +eek_key_get_symbol_at_index (EekKey *key, gint group, gint level) { EekKeyPrivate *priv = EEK_KEY_GET_PRIVATE(key); - gint num_keysyms = priv->keysyms.num_groups * priv->keysyms.num_levels; + gint num_symbols; - if (num_keysyms == 0) - return EEK_INVALID_KEYSYM; + if (!priv->symbol_matrix) + return NULL; - if (group >= priv->keysyms.num_groups) - return EEK_INVALID_KEYSYM; - if (level >= priv->keysyms.num_levels) - return EEK_INVALID_KEYSYM; + num_symbols = priv->symbol_matrix->num_groups * + priv->symbol_matrix->num_levels; + if (num_symbols == 0) + return NULL; - return priv->keysyms.data[group * priv->keysyms.num_levels + level]; + if (group >= priv->symbol_matrix->num_groups) + return NULL; + if (level >= priv->symbol_matrix->num_levels) + return NULL; + + return priv->symbol_matrix->data[group * priv->symbol_matrix->num_levels + + level]; } /** diff --git a/eek/eek-key.h b/eek/eek-key.h index 28d5e153..c46faf21 100644 --- a/eek/eek-key.h +++ b/eek/eek-key.h @@ -48,8 +48,8 @@ struct _EekKey * EekKeyClass: * @set_keycode: virtual function for setting keycode of the key * @get_keycode: virtual function for getting keycode of the key - * @set_keysyms: virtual function for setting symbol matrix of the key - * @get_keysyms: virtual function for getting symbol matrix of the key + * @set_symbol_matrix: virtual function for setting symbol matrix of the key + * @get_symbol_matrix: virtual function for getting symbol matrix of the key * @set_index: virtual function for setting position of the key in the * section * @get_index: virtual function for getting position of the key in the @@ -66,70 +66,60 @@ struct _EekKeyClass EekElementClass parent_class; /*< public >*/ - void (* set_keycode) (EekKey *self, - guint keycode); - guint (* get_keycode) (EekKey *self); - void (* set_keysyms) (EekKey *self, - guint *keysyms, - gint num_groups, - gint num_levels); - void (* get_keysyms) (EekKey *self, - guint **keysyms, - gint *num_groups, - gint *num_levels); + void (* set_keycode) (EekKey *self, + guint keycode); + guint (* get_keycode) (EekKey *self); + void (* set_symbol_matrix) (EekKey *self, + EekSymbolMatrix *matrix); + EekSymbolMatrix *(* get_symbol_matrix) (EekKey *self); - void (* set_index) (EekKey *self, - gint column, - gint row); - void (* get_index) (EekKey *self, - gint *column, - gint *row); + void (* set_index) (EekKey *self, + gint column, + gint row); + void (* get_index) (EekKey *self, + gint *column, + gint *row); - void (* set_outline) (EekKey *self, - EekOutline *outline); - EekOutline *(* get_outline) (EekKey *self); + void (* set_outline) (EekKey *self, + EekOutline *outline); + EekOutline *(* get_outline) (EekKey *self); - gboolean (* is_pressed) (EekKey *self); + gboolean (* is_pressed) (EekKey *self); /* signals */ - void (* pressed) (EekKey *key); - void (* released) (EekKey *key); + void (* pressed) (EekKey *key); + void (* released) (EekKey *key); /*< private >*/ /* padding */ gpointer pdummy[23]; }; -GType eek_key_get_type (void) G_GNUC_CONST; +GType eek_key_get_type (void) G_GNUC_CONST; -void eek_key_set_keycode (EekKey *key, - guint keycode); -guint eek_key_get_keycode (EekKey *key); -void eek_key_set_keysyms (EekKey *key, - guint *keysyms, - gint num_groups, - gint num_levels); -void eek_key_get_keysyms (EekKey *key, - guint **keysyms, - gint *num_groups, - gint *num_levels); -guint eek_key_get_keysym (EekKey *key); -guint eek_key_get_keysym_at_index (EekKey *key, - gint group, - gint level); +void eek_key_set_keycode (EekKey *key, + guint keycode); +guint eek_key_get_keycode (EekKey *key); +void eek_key_set_symbol_matrix (EekKey *key, + EekSymbolMatrix *matrix); +EekSymbolMatrix *eek_key_get_symbol_matrix (EekKey *key); +EekSymbol *eek_key_get_symbol (EekKey *key); +EekSymbol *eek_key_get_symbol_at_index (EekKey *key, + gint group, + gint level); -void eek_key_set_index (EekKey *key, - gint column, - gint row); -void eek_key_get_index (EekKey *key, - gint *column, - gint *row); +void eek_key_set_index (EekKey *key, + gint column, + gint row); +void eek_key_get_index (EekKey *key, + gint *column, + gint *row); -void eek_key_set_outline (EekKey *key, - EekOutline *outline); -EekOutline *eek_key_get_outline (EekKey *key); +void eek_key_set_outline (EekKey *key, + EekOutline *outline); +EekOutline *eek_key_get_outline (EekKey *key); -gboolean eek_key_is_pressed (EekKey *key); +gboolean eek_key_is_pressed (EekKey *key); G_END_DECLS #endif /* EEK_KEY_H */ diff --git a/eek/eek-keyboard.c b/eek/eek-keyboard.c index 8e83399b..459457f3 100644 --- a/eek/eek-keyboard.c +++ b/eek/eek-keyboard.c @@ -34,7 +34,7 @@ #include "eek-keyboard.h" #include "eek-section.h" #include "eek-key.h" -#include "eek-keysym.h" +#include "eek-symbol.h" #include "eek-marshallers.h" enum { @@ -49,7 +49,7 @@ enum { enum { KEY_PRESSED, KEY_RELEASED, - KEYSYM_INDEX_CHANGED, + SYMBOL_INDEX_CHANGED, LAST_SIGNAL }; @@ -71,7 +71,7 @@ struct _EekKeyboardPrivate }; static void -eek_keyboard_real_set_keysym_index (EekKeyboard *self, +eek_keyboard_real_set_symbol_index (EekKeyboard *self, gint group, gint level) { @@ -81,12 +81,12 @@ eek_keyboard_real_set_keysym_index (EekKeyboard *self, priv->group = group; priv->level = level; - g_signal_emit_by_name (self, "keysym-index-changed", group, level); + g_signal_emit_by_name (self, "symbol-index-changed", group, level); } } void -eek_keyboard_real_get_keysym_index (EekKeyboard *self, +eek_keyboard_real_get_symbol_index (EekKeyboard *self, gint *group, gint *level) { @@ -182,7 +182,8 @@ eek_keyboard_set_property (GObject *object, break; case PROP_LAYOUT: priv->layout = g_value_get_object (value); - g_object_ref (priv->layout); + if (priv->layout) + g_object_ref (priv->layout); break; case PROP_MODIFIER_BEHAVIOR: eek_keyboard_set_modifier_behavior (EEK_KEYBOARD(object), @@ -229,11 +230,11 @@ eek_keyboard_get_property (GObject *object, } static void -eek_keyboard_real_keysym_index_changed (EekKeyboard *self, +eek_keyboard_real_symbol_index_changed (EekKeyboard *self, gint group, gint level) { - /* g_debug ("keysym-index-changed"); */ + /* g_debug ("symbol-index-changed"); */ } static void @@ -254,15 +255,17 @@ eek_keyboard_real_key_pressed (EekKeyboard *self, EekKey *key) { EekKeyboardPrivate *priv = EEK_KEYBOARD_GET_PRIVATE(self); - guint keysym; + EekSymbol *symbol; EekModifierType modifier; if (priv->modifier_behavior == EEK_MODIFIER_BEHAVIOR_LATCH) priv->modifiers = 0; - keysym = eek_key_get_keysym_at_index (key, priv->group, priv->level); - modifier = eek_keysym_to_modifier (keysym); - + symbol = eek_key_get_symbol_at_index (key, priv->group, priv->level); + if (!symbol) + return; + + modifier = eek_symbol_get_modifier_mask (symbol); if (modifier != 0) { if (priv->modifier_behavior == EEK_MODIFIER_BEHAVIOR_NONE || priv->modifier_behavior == EEK_MODIFIER_BEHAVIOR_LATCH) @@ -278,11 +281,14 @@ eek_keyboard_real_key_released (EekKeyboard *self, EekKey *key) { EekKeyboardPrivate *priv = EEK_KEYBOARD_GET_PRIVATE(self); - guint keysym; + EekSymbol *symbol; EekModifierType modifier; - keysym = eek_key_get_keysym_at_index (key, priv->group, priv->level); - modifier = eek_keysym_to_modifier (keysym); + symbol = eek_key_get_symbol_at_index (key, priv->group, priv->level); + if (!symbol) + return; + + modifier = eek_symbol_get_modifier_mask (symbol); if (modifier != 0) { if (priv->modifier_behavior == EEK_MODIFIER_BEHAVIOR_NONE) priv->modifiers &= ~modifier; @@ -312,15 +318,15 @@ eek_keyboard_class_init (EekKeyboardClass *klass) g_type_class_add_private (gobject_class, sizeof (EekKeyboardPrivate)); - klass->set_keysym_index = eek_keyboard_real_set_keysym_index; - klass->get_keysym_index = eek_keyboard_real_get_keysym_index; + klass->set_symbol_index = eek_keyboard_real_set_symbol_index; + klass->get_symbol_index = eek_keyboard_real_get_symbol_index; klass->create_section = eek_keyboard_real_create_section; klass->find_key_by_keycode = eek_keyboard_real_find_key_by_keycode; /* signals */ klass->key_pressed = eek_keyboard_real_key_pressed; klass->key_released = eek_keyboard_real_key_released; - klass->keysym_index_changed = eek_keyboard_real_keysym_index_changed; + klass->symbol_index_changed = eek_keyboard_real_symbol_index_changed; gobject_class->get_property = eek_keyboard_get_property; gobject_class->set_property = eek_keyboard_set_property; @@ -423,19 +429,19 @@ eek_keyboard_class_init (EekKeyboardClass *klass) EEK_TYPE_KEY); /** - * EekKeyboard::keysym-index-changed: + * EekKeyboard::symbol-index-changed: * @keyboard: an #EekKeyboard * @group: row index of the symbol matrix of keys on @keyboard * @level: column index of the symbol matrix of keys on @keyboard * - * The ::keysym-index-changed signal is emitted each time the + * The ::symbol-index-changed signal is emitted each time the * global configuration of group/level index changes. */ - signals[KEYSYM_INDEX_CHANGED] = - g_signal_new ("keysym-index-changed", + signals[SYMBOL_INDEX_CHANGED] = + g_signal_new ("symbol-index-changed", G_TYPE_FROM_CLASS(gobject_class), G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET(EekKeyboardClass, keysym_index_changed), + G_STRUCT_OFFSET(EekKeyboardClass, symbol_index_changed), NULL, NULL, _eek_marshal_VOID__INT_INT, @@ -458,7 +464,7 @@ eek_keyboard_init (EekKeyboard *self) } /** - * eek_keyboard_set_keysym_index: + * eek_keyboard_set_symbol_index: * @keyboard: an #EekKeyboard * @group: row index of the symbol matrix of keys on @keyboard * @level: column index of the symbol matrix of keys on @keyboard @@ -466,16 +472,16 @@ eek_keyboard_init (EekKeyboard *self) * Select a cell of the symbol matrix of each key on @keyboard. */ void -eek_keyboard_set_keysym_index (EekKeyboard *keyboard, +eek_keyboard_set_symbol_index (EekKeyboard *keyboard, gint group, gint level) { g_return_if_fail (EEK_IS_KEYBOARD(keyboard)); - EEK_KEYBOARD_GET_CLASS(keyboard)->set_keysym_index (keyboard, group, level); + EEK_KEYBOARD_GET_CLASS(keyboard)->set_symbol_index (keyboard, group, level); } /** - * eek_keyboard_get_keysym_index: + * eek_keyboard_get_symbol_index: * @keyboard: an #EekKeyboard * @group: a pointer where row index of the symbol matrix of keys on * @keyboard will be stored @@ -485,12 +491,12 @@ eek_keyboard_set_keysym_index (EekKeyboard *keyboard, * Get the current cell position of the symbol matrix of each key on @keyboard. */ void -eek_keyboard_get_keysym_index (EekKeyboard *keyboard, +eek_keyboard_get_symbol_index (EekKeyboard *keyboard, gint *group, gint *level) { g_return_if_fail (EEK_IS_KEYBOARD(keyboard)); - EEK_KEYBOARD_GET_CLASS(keyboard)->get_keysym_index (keyboard, group, level); + EEK_KEYBOARD_GET_CLASS(keyboard)->get_symbol_index (keyboard, group, level); } /** @@ -505,7 +511,7 @@ eek_keyboard_set_group (EekKeyboard *keyboard, gint group) { gint level = eek_keyboard_get_level (keyboard); - eek_keyboard_set_keysym_index (keyboard, group, level); + eek_keyboard_set_symbol_index (keyboard, group, level); } /** @@ -520,7 +526,7 @@ eek_keyboard_set_level (EekKeyboard *keyboard, gint level) { gint group = eek_keyboard_get_group (keyboard); - eek_keyboard_set_keysym_index (keyboard, group, level); + eek_keyboard_set_symbol_index (keyboard, group, level); } /** @@ -533,7 +539,7 @@ gint eek_keyboard_get_group (EekKeyboard *keyboard) { gint group; - eek_keyboard_get_keysym_index (keyboard, &group, NULL); + eek_keyboard_get_symbol_index (keyboard, &group, NULL); return group; } @@ -547,7 +553,7 @@ gint eek_keyboard_get_level (EekKeyboard *keyboard) { gint level; - eek_keyboard_get_keysym_index (keyboard, NULL, &level); + eek_keyboard_get_symbol_index (keyboard, NULL, &level); return level; } diff --git a/eek/eek-keyboard.h b/eek/eek-keyboard.h index dc395337..c603d256 100644 --- a/eek/eek-keyboard.h +++ b/eek/eek-keyboard.h @@ -24,7 +24,6 @@ #include "eek-container.h" #include "eek-types.h" #include "eek-layout.h" -#include "eek-keysym.h" G_BEGIN_DECLS @@ -65,10 +64,10 @@ struct _EekKeyboardClass EekContainerClass parent_class; /*< public >*/ - void (* set_keysym_index) (EekKeyboard *self, + void (* set_symbol_index) (EekKeyboard *self, gint group, gint level); - void (* get_keysym_index) (EekKeyboard *self, + void (* get_symbol_index) (EekKeyboard *self, gint *group, gint *level); @@ -82,7 +81,7 @@ struct _EekKeyboardClass EekKey *key); void (* key_released) (EekKeyboard *self, EekKey *key); - void (* keysym_index_changed) (EekKeyboard *self, + void (* symbol_index_changed) (EekKeyboard *self, gint group, gint level); @@ -103,11 +102,11 @@ void eek_keyboard_get_size (EekKeyboard *keyboard, gdouble *width, gdouble *height); -void eek_keyboard_set_keysym_index +void eek_keyboard_set_symbol_index (EekKeyboard *keyboard, gint group, gint level); -void eek_keyboard_get_keysym_index +void eek_keyboard_get_symbol_index (EekKeyboard *keyboard, gint *group, gint *level); diff --git a/eek/eek-keysym.c b/eek/eek-keysym.c index e3ef4909..a9a47de2 100644 --- a/eek/eek-keysym.c +++ b/eek/eek-keysym.c @@ -20,27 +20,57 @@ /** * SECTION:eek-keysym - * @short_description: Keysym conversion utilities + * @short_description: an #EekSymbol represents an X keysym */ -#include +#include #include #ifdef HAVE_CONFIG_H #include "config.h" #endif /* HAVE_CONFIG_H */ + #include "eek-keysym.h" -struct _EekKeysymEntry { - guint keysym; - const gchar *label; - EekKeysymCategory category; +/* modifier keys */ +#define EEK_KEYSYM_Shift_L 0xffe1 +#define EEK_KEYSYM_Shift_R 0xffe2 +#define EEK_KEYSYM_ISO_Level3_Shift 0xfe03 +#define EEK_KEYSYM_Caps_Lock 0xffe5 +#define EEK_KEYSYM_Shift_Lock 0xffe6 +#define EEK_KEYSYM_Control_L 0xffe3 +#define EEK_KEYSYM_Control_R 0xffe4 +#define EEK_KEYSYM_Alt_L 0xffe9 +#define EEK_KEYSYM_Alt_R 0xffea +#define EEK_KEYSYM_Meta_L 0xffe7 +#define EEK_KEYSYM_Meta_R 0xffe8 +#define EEK_KEYSYM_Super_L 0xffeb +#define EEK_KEYSYM_Super_R 0xffec +#define EEK_KEYSYM_Hyper_L 0xffed +#define EEK_KEYSYM_Hyper_R 0xffee + +struct _EekKeysymPrivate { + guint xkeysym; + const gchar *name; + EekSymbolCategory category; }; -typedef struct _EekKeysymEntry EekKeysymEntry; + +typedef EekKeysymPrivate EekKeysymEntry; #include "eek-special-keysym-entries.h" #include "eek-unicode-keysym-entries.h" -#include "eek-keyname-keysym-entries.h" +#include "eek-xkeysym-keysym-entries.h" + +static const EekKeysymEntry invalid_keysym_entry = { + EEK_INVALID_KEYSYM, + "\0", + EEK_SYMBOL_CATEGORY_UNKNOWN, +}; + +G_DEFINE_TYPE (EekKeysym, eek_keysym, EEK_TYPE_SYMBOL); + +#define EEK_KEYSYM_GET_PRIVATE(obj) \ + (G_TYPE_INSTANCE_GET_PRIVATE ((obj), EEK_TYPE_KEYSYM, EekKeysymPrivate)) static gchar * unichar_to_utf8 (gunichar uc) @@ -58,202 +88,179 @@ unichar_to_utf8 (gunichar uc) } static int -keysym_entry_compare_keysym (const void *key0, const void *key1) +keysym_entry_compare_by_xkeysym (const void *key0, const void *key1) { const EekKeysymEntry *entry0 = key0, *entry1 = key1; - return (gint)entry0->keysym - (gint)entry1->keysym; + return (gint)entry0->xkeysym - (gint)entry1->xkeysym; } -static gboolean -find_keysym (guint keysym, - gchar **label, - EekKeysymCategory *category) +static EekKeysymEntry * +find_keysym_entry_by_xkeysym (guint xkeysym, + const EekKeysymEntry *entries, + gint num_entries) { - EekKeysymEntry bsearch_key, *bsearch_val; + EekKeysymEntry key; + + key.xkeysym = xkeysym; + return bsearch (&key, entries, num_entries, sizeof (EekKeysymEntry), + keysym_entry_compare_by_xkeysym); +} + +static G_CONST_RETURN gchar * +eek_keysym_real_get_name (EekSymbol *self) +{ + EekKeysymPrivate *priv = EEK_KEYSYM_GET_PRIVATE(self); + return priv->name; +} + +static gchar * +eek_keysym_real_get_label (EekSymbol *self) +{ + EekKeysymPrivate *priv = EEK_KEYSYM_GET_PRIVATE(self); + EekKeysymEntry *entry; /* First, search special keysyms. */ - bsearch_key.keysym = keysym; - bsearch_val = bsearch (&bsearch_key, - special_keysym_entries, - G_N_ELEMENTS(special_keysym_entries), - sizeof (EekKeysymEntry), - keysym_entry_compare_keysym); - if (bsearch_val) { - if (label) - *label = g_strdup (bsearch_val->label); - if (category) - *category = bsearch_val->category; - return TRUE; - } + entry = find_keysym_entry_by_xkeysym (priv->xkeysym, + special_keysym_entries, + G_N_ELEMENTS(special_keysym_entries)); + if (entry) + return g_strdup (entry->name); /* Check for Latin-1 characters (1:1 mapping) */ - if ((keysym >= 0x0020 && keysym <= 0x007e) || - (keysym >= 0x00a0 && keysym <= 0x00ff)) { - if (label) - *label = unichar_to_utf8 (keysym); - if (category) - *category = EEK_KEYSYM_CATEGORY_LETTER; - return TRUE; - } + if ((priv->xkeysym >= 0x0020 && priv->xkeysym <= 0x007e) || + (priv->xkeysym >= 0x00a0 && priv->xkeysym <= 0x00ff)) + return unichar_to_utf8 (priv->xkeysym); /* Also check for directly encoded 24-bit UCS characters: */ - if ((keysym & 0xff000000) == 0x01000000) { - if (label) - *label = unichar_to_utf8 (keysym & 0x00ffffff); - if (category) - *category = EEK_KEYSYM_CATEGORY_LETTER; - return TRUE; - } + if ((priv->xkeysym & 0xff000000) == 0x01000000) + return unichar_to_utf8 (priv->xkeysym & 0x00ffffff); /* Search known unicode keysyms. */ - bsearch_key.keysym = keysym; - bsearch_val = bsearch (&bsearch_key, - unicode_keysym_entries, - G_N_ELEMENTS(unicode_keysym_entries), - sizeof (EekKeysymEntry), - keysym_entry_compare_keysym); - if (bsearch_val) { - if (label) - *label = g_strdup (bsearch_val->label); - if (category) - *category = bsearch_val->category; - return TRUE; - } + entry = find_keysym_entry_by_xkeysym (priv->xkeysym, + unicode_keysym_entries, + G_N_ELEMENTS(unicode_keysym_entries)); + if (entry) + return g_strdup (entry->name); - /* Finally, search keynames. */ - bsearch_key.keysym = keysym; - bsearch_val = bsearch (&bsearch_key, - keyname_keysym_entries, - G_N_ELEMENTS(keyname_keysym_entries), - sizeof (EekKeysymEntry), - keysym_entry_compare_keysym); - if (bsearch_val) { - if (label) - *label = g_strdup (bsearch_val->label); - if (category) - *category = bsearch_val->category; - return TRUE; - } - - return FALSE; + return g_strdup (eek_symbol_get_name (self)); } -/** - * eek_keysym_to_string: - * @keysym: keysym ID - * - * Return a string representation of @keysym. - */ -gchar * -eek_keysym_to_string (guint keysym) +EekSymbolCategory +eek_keysym_real_get_category (EekSymbol *self) { - gchar *label; - - if (find_keysym (keysym, &label, NULL)) - return label; - return g_strdup (""); + EekKeysymPrivate *priv = EEK_KEYSYM_GET_PRIVATE(self); + return priv->category; } -gchar * -eek_xkeysym_to_string (guint xkeysym) -{ - EekKeysymEntry bsearch_key, *bsearch_val; - - bsearch_key.keysym = xkeysym; - bsearch_val = bsearch (&bsearch_key, - keyname_keysym_entries, - G_N_ELEMENTS(keyname_keysym_entries), - sizeof (EekKeysymEntry), - keysym_entry_compare_keysym); - if (bsearch_val) - return g_strdup (bsearch_val->label); - return NULL; -} - -static GHashTable *xkeysym_hash = NULL; - -static void -xkeysym_free (gpointer xkeysym) -{ - g_slice_free (guint, xkeysym); -} - -guint -eek_xkeysym_from_string (gchar *string) -{ - guint *xkeysym; - - if (!xkeysym_hash) { - gint i; - - xkeysym_hash = g_hash_table_new_full (g_str_hash, - g_str_equal, - g_free, - xkeysym_free); - for (i = 0; i < G_N_ELEMENTS(keyname_keysym_entries); i++) { - xkeysym = g_slice_new (guint); - *xkeysym = keyname_keysym_entries[i].keysym; - g_hash_table_insert (xkeysym_hash, - g_strdup (keyname_keysym_entries[i].label), - xkeysym); - } - } - - xkeysym = g_hash_table_lookup (xkeysym_hash, string); - if (xkeysym) - return *xkeysym; - return EEK_INVALID_KEYSYM; -} - -/** - * eek_keysym_get_category: - * @keysym: keysym ID - * - * Return a string representation of @keysym. - */ -EekKeysymCategory -eek_keysym_get_category (guint keysym) -{ - EekKeysymCategory category; - - if (find_keysym (keysym, NULL, &category)) - return category; - return EEK_KEYSYM_CATEGORY_UNKNOWN; -} - -/** - * eek_keysym_to_modifier: - * @keysym: keysym ID - * - * Return a modifier mask which @keysym affects. - */ EekModifierType -eek_keysym_to_modifier (guint keysym) +eek_keysym_real_get_modifier_mask (EekSymbol *self) { - switch (keysym) { - case EEK_KEY_Shift_L: - case EEK_KEY_Shift_R: - case EEK_KEY_Caps_Lock: - case EEK_KEY_Shift_Lock: + EekKeysymPrivate *priv = EEK_KEYSYM_GET_PRIVATE(self); + + switch (priv->xkeysym) { + case EEK_KEYSYM_Shift_L: + case EEK_KEYSYM_Shift_R: + case EEK_KEYSYM_Caps_Lock: + case EEK_KEYSYM_Shift_Lock: return EEK_SHIFT_MASK; - case EEK_KEY_ISO_Level3_Shift: + case EEK_KEYSYM_ISO_Level3_Shift: return EEK_MOD5_MASK; - case EEK_KEY_Control_L: - case EEK_KEY_Control_R: + case EEK_KEYSYM_Control_L: + case EEK_KEYSYM_Control_R: return EEK_CONTROL_MASK; - case EEK_KEY_Alt_L: - case EEK_KEY_Alt_R: + case EEK_KEYSYM_Alt_L: + case EEK_KEYSYM_Alt_R: return EEK_MOD1_MASK; - case EEK_KEY_Meta_L: - case EEK_KEY_Meta_R: + case EEK_KEYSYM_Meta_L: + case EEK_KEYSYM_Meta_R: return EEK_META_MASK; - case EEK_KEY_Super_L: - case EEK_KEY_Super_R: + case EEK_KEYSYM_Super_L: + case EEK_KEYSYM_Super_R: return EEK_SUPER_MASK; - case EEK_KEY_Hyper_L: - case EEK_KEY_Hyper_R: + case EEK_KEYSYM_Hyper_L: + case EEK_KEYSYM_Hyper_R: return EEK_HYPER_MASK; } return 0; } + +static void +eek_keysym_class_init (EekKeysymClass *klass) +{ + EekSymbolClass *symbol_class = EEK_SYMBOL_CLASS (klass); + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + + g_type_class_add_private (gobject_class, sizeof (EekKeysymPrivate)); + + symbol_class->get_name = eek_keysym_real_get_name; + symbol_class->get_label = eek_keysym_real_get_label; + symbol_class->get_category = eek_keysym_real_get_category; + symbol_class->get_modifier_mask = eek_keysym_real_get_modifier_mask; +} + +static void +eek_keysym_init (EekKeysym *self) +{ + EekKeysymPrivate *priv; + + priv = self->priv = EEK_KEYSYM_GET_PRIVATE(self); + memcpy (priv, &invalid_keysym_entry, sizeof (EekKeysymEntry)); +} + +EekKeysym * +eek_keysym_new (guint xkeysym) +{ + EekKeysym *keysym; + EekKeysymPrivate *priv; + EekKeysymEntry *entry; + + keysym = g_object_new (EEK_TYPE_KEYSYM, NULL); + priv = EEK_KEYSYM_GET_PRIVATE(keysym); + + entry = find_keysym_entry_by_xkeysym (xkeysym, + xkeysym_keysym_entries, + G_N_ELEMENTS(xkeysym_keysym_entries)); + if (entry) + memcpy (priv, entry, sizeof (EekKeysymEntry)); + else { + // g_warning ("can't find keysym entry %u", xkeysym); + memcpy (priv, &invalid_keysym_entry, sizeof (EekKeysymEntry)); + priv->xkeysym = xkeysym; + } + return keysym; +} + +EekKeysym * +eek_keysym_new_from_name (const gchar *name) +{ + EekKeysym *keysym; + EekKeysymPrivate *priv; + gint i; + + for (i = 0; + i < G_N_ELEMENTS(xkeysym_keysym_entries) && + g_strcmp0 (xkeysym_keysym_entries[i].name, name) != 0; i++) + ; + + keysym = g_object_new (EEK_TYPE_KEYSYM, NULL); + priv = EEK_KEYSYM_GET_PRIVATE(keysym); + + if (i < G_N_ELEMENTS(xkeysym_keysym_entries)) + memcpy (priv, &xkeysym_keysym_entries[i], sizeof (EekKeysymEntry)); + else { + // g_warning ("can't find keysym entry for %s", name); + memcpy (priv, &invalid_keysym_entry, sizeof (EekKeysymEntry)); + } + return keysym; +} + +guint +eek_keysym_get_xkeysym (EekKeysym *keysym) +{ + EekKeysymPrivate *priv; + + g_assert (EEK_IS_KEYSYM(keysym)); + priv = EEK_KEYSYM_GET_PRIVATE(keysym); + return priv->xkeysym; +} diff --git a/eek/eek-keysym.h b/eek/eek-keysym.h index 5bdf0d10..562c194a 100644 --- a/eek/eek-keysym.h +++ b/eek/eek-keysym.h @@ -20,7 +20,9 @@ #ifndef EEK_KEYSYM_H #define EEK_KEYSYM_H 1 -#include +#include "eek-symbol.h" + +G_BEGIN_DECLS /** * EEK_INVALID_KEYSYM: @@ -29,93 +31,34 @@ */ #define EEK_INVALID_KEYSYM ((guint)(-1)) -/** - * EEK_INVALID_KEYCODE: - * - * Pseudo keycode used for error reporting. - */ -#define EEK_INVALID_KEYCODE ((guint)(-1)) +#define EEK_TYPE_KEYSYM (eek_keysym_get_type()) +#define EEK_KEYSYM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEK_TYPE_KEYSYM, EekKeysym)) +#define EEK_KEYSYM_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EEK_TYPE_KEYSYM, EekKeysymClass)) +#define EEK_IS_KEYSYM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEK_TYPE_KEYSYM)) +#define EEK_IS_KEYSYM_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EEK_TYPE_KEYSYM)) +#define EEK_KEYSYM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EEK_TYPE_KEYSYM, EekKeysymClass)) -/** - * EekKeysymCategory: - * @EEK_KEYSYM_CATEGORY_LETTER: the symbol represents an alphabet letter - * @EEK_KEYSYM_CATEGORY_FUNCTION: the symbol represents a function - * @EEK_KEYSYM_CATEGORY_KEYNAME: the symbol does not have meaning but - * have a name - * @EEK_KEYSYM_CATEGORY_UNKNOWN: used for error reporting - * - * Category of the key symbols. - */ -typedef enum { - EEK_KEYSYM_CATEGORY_LETTER, - EEK_KEYSYM_CATEGORY_FUNCTION, - EEK_KEYSYM_CATEGORY_KEYNAME, - EEK_KEYSYM_CATEGORY_UNKNOWN, +typedef struct _EekKeysymClass EekKeysymClass; +typedef struct _EekKeysymPrivate EekKeysymPrivate; + +struct _EekKeysym { /*< private >*/ - EEK_KEYSYM_CATEGORY_LAST = EEK_KEYSYM_CATEGORY_UNKNOWN -} EekKeysymCategory; + EekSymbol parent; -gchar *eek_keysym_to_string (guint keysym); + EekKeysymPrivate *priv; +}; -gchar *eek_xkeysym_to_string (guint xkeysym); -guint eek_xkeysym_from_string (gchar *string); +struct _EekKeysymClass { + /*< private >*/ + EekSymbolClass parent_class; +}; -EekKeysymCategory eek_keysym_get_category (guint keysym); +GType eek_keysym_get_type (void) G_GNUC_CONST; +EekKeysym *eek_keysym_new (guint xkeysym); +guint eek_keysym_get_xkeysym (EekKeysym *keysym); -typedef enum -{ - EEK_SHIFT_MASK = 1 << 0, - EEK_LOCK_MASK = 1 << 1, - EEK_CONTROL_MASK = 1 << 2, - EEK_MOD1_MASK = 1 << 3, - EEK_MOD2_MASK = 1 << 4, - EEK_MOD3_MASK = 1 << 5, - EEK_MOD4_MASK = 1 << 6, - EEK_MOD5_MASK = 1 << 7, - EEK_BUTTON1_MASK = 1 << 8, - EEK_BUTTON2_MASK = 1 << 9, - EEK_BUTTON3_MASK = 1 << 10, - EEK_BUTTON4_MASK = 1 << 11, - EEK_BUTTON5_MASK = 1 << 12, +EekKeysym *eek_keysym_new_from_name (const gchar *name); - /* The next few modifiers are used by XKB, so we skip to the end. - * Bits 15 - 25 are currently unused. Bit 29 is used internally. - */ - - EEK_SUPER_MASK = 1 << 26, - EEK_HYPER_MASK = 1 << 27, - EEK_META_MASK = 1 << 28, - - EEK_RELEASE_MASK = 1 << 30, - - EEK_MODIFIER_MASK = 0x5c001fff -} EekModifierType; - -#define EEK_KEY_Shift_L 0xffe1 -#define EEK_KEY_Shift_R 0xffe2 -#define EEK_KEY_ISO_Level3_Shift 0xfe03 -#define EEK_KEY_Caps_Lock 0xffe5 -#define EEK_KEY_Shift_Lock 0xffe6 -#define EEK_KEY_Control_L 0xffe3 -#define EEK_KEY_Control_R 0xffe4 -#define EEK_KEY_Alt_L 0xffe9 -#define EEK_KEY_Alt_R 0xffea -#define EEK_KEY_Meta_L 0xffe7 -#define EEK_KEY_Meta_R 0xffe8 -#define EEK_KEY_Super_L 0xffeb -#define EEK_KEY_Super_R 0xffec -#define EEK_KEY_Hyper_L 0xffed -#define EEK_KEY_Hyper_R 0xffee - -EekModifierType eek_keysym_to_modifier (guint keysym); - -/** - * eek_keysym_is_modifier: - * @keysym: keysym ID - * - * Check if @keysym is a modifier key. - * Returns: %TRUE if @keysym is a modifier. - */ -#define eek_keysym_is_modifier(keysym) (eek_keysym_to_modifier ((keysym)) != 0) +G_END_DECLS #endif /* EEK_KEYSYM_H */ diff --git a/eek/eek-layout.c b/eek/eek-layout.c index 10037636..bd650022 100644 --- a/eek/eek-layout.c +++ b/eek/eek-layout.c @@ -38,6 +38,7 @@ G_DEFINE_TYPE (EekLayout, eek_layout, G_TYPE_OBJECT); static void eek_layout_class_init (EekLayoutClass *klass) { + klass->create_keyboard = NULL; } void diff --git a/eek/eek-renderer.c b/eek/eek-renderer.c index b3dc66be..7e170fb8 100644 --- a/eek/eek-renderer.c +++ b/eek/eek-renderer.c @@ -58,10 +58,10 @@ struct _EekRendererPrivate struct { gint category; gdouble scale; -} keysym_category_scale_factors[EEK_KEYSYM_CATEGORY_LAST] = { - { EEK_KEYSYM_CATEGORY_LETTER, 1.0 }, - { EEK_KEYSYM_CATEGORY_FUNCTION, 0.5 }, - { EEK_KEYSYM_CATEGORY_KEYNAME, 0.5 } +} symbol_category_scale_factors[EEK_SYMBOL_CATEGORY_LAST] = { + { EEK_SYMBOL_CATEGORY_LETTER, 1.0 }, + { EEK_SYMBOL_CATEGORY_FUNCTION, 0.5 }, + { EEK_SYMBOL_CATEGORY_KEYNAME, 0.5 } }; /* eek-keyboard-drawing.c */ @@ -78,7 +78,7 @@ static void invalidate (EekRenderer *renderer); static void render_key (EekRenderer *self, cairo_t *cr, EekKey *key); -static void on_keysym_index_changed (EekKeyboard *keyboard, +static void on_symbol_index_changed (EekKeyboard *keyboard, gint group, gint level, gpointer user_data); @@ -269,16 +269,16 @@ calculate_font_size_key_callback (EekElement *element, gpointer user_data) PangoRectangle extents = { 0, }; PangoLayout *layout; gdouble size; - guint keysym; + EekSymbol *symbol; EekBounds bounds; gchar *label; - keysym = eek_key_get_keysym (EEK_KEY(element)); - if (keysym == EEK_INVALID_KEYSYM || - eek_keysym_get_category (keysym) != EEK_KEYSYM_CATEGORY_LETTER) + symbol = eek_key_get_symbol (EEK_KEY(element)); + if (!symbol || + eek_symbol_get_category (symbol) != EEK_SYMBOL_CATEGORY_LETTER) return; - label = eek_keysym_to_string (keysym); + label = eek_symbol_get_label (symbol); if (!label) return; @@ -434,23 +434,23 @@ eek_renderer_real_render_key_label (EekRenderer *self, EekKey *key) { EekRendererPrivate *priv = EEK_RENDERER_GET_PRIVATE(self); - guint keysym; - EekKeysymCategory category; + EekSymbol *symbol; + EekSymbolCategory category; gchar *label; EekBounds bounds; PangoFontDescription *font; gdouble size, scale; gint i; - keysym = eek_key_get_keysym (key); - if (keysym == EEK_INVALID_KEYSYM) + symbol = eek_key_get_symbol (key); + if (!symbol) return; - category = eek_keysym_get_category (keysym); - if (category == EEK_KEYSYM_CATEGORY_UNKNOWN) + category = eek_symbol_get_category (symbol); + if (category == EEK_SYMBOL_CATEGORY_UNKNOWN) return; - label = eek_keysym_to_string (keysym); + label = eek_symbol_get_label (symbol); if (!label) return; @@ -470,9 +470,9 @@ eek_renderer_real_render_key_label (EekRenderer *self, font = pango_font_description_copy (priv->font); size = pango_font_description_get_size (font); - for (i = 0; i < G_N_ELEMENTS(keysym_category_scale_factors); i++) - if (keysym_category_scale_factors[i].category == category) { - size *= keysym_category_scale_factors[i].scale; + for (i = 0; i < G_N_ELEMENTS(symbol_category_scale_factors); i++) + if (symbol_category_scale_factors[i].category == category) { + size *= symbol_category_scale_factors[i].scale; break; } pango_font_description_set_size (font, size * priv->scale * scale); @@ -536,8 +536,8 @@ eek_renderer_set_property (GObject *object, priv->keyboard = g_value_get_object (value); g_object_ref (priv->keyboard); - g_signal_connect (priv->keyboard, "keysym-index-changed", - G_CALLBACK(on_keysym_index_changed), + g_signal_connect (priv->keyboard, "symbol-index-changed", + G_CALLBACK(on_symbol_index_changed), object); break; case PROP_PCONTEXT: @@ -655,7 +655,7 @@ invalidate (EekRenderer *renderer) } static void -on_keysym_index_changed (EekKeyboard *keyboard, +on_symbol_index_changed (EekKeyboard *keyboard, gint group, gint level, gpointer user_data) diff --git a/eek/eek-symbol.c b/eek/eek-symbol.c new file mode 100644 index 00000000..310ef3fc --- /dev/null +++ b/eek/eek-symbol.c @@ -0,0 +1,266 @@ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif /* HAVE_CONFIG_H */ + +#include "eek-symbol.h" + +enum { + PROP_0, + PROP_NAME, + PROP_LABEL, + PROP_CATEGORY, + PROP_MODIFIER_MASK, + PROP_LAST +}; + +struct _EekSymbolPrivate { + gchar *name; + gchar *label; + EekSymbolCategory category; + EekModifierType modifier_mask; +}; + +G_DEFINE_TYPE (EekSymbol, eek_symbol, G_TYPE_OBJECT); + +#define EEK_SYMBOL_GET_PRIVATE(obj) \ + (G_TYPE_INSTANCE_GET_PRIVATE ((obj), EEK_TYPE_SYMBOL, EekSymbolPrivate)) + +static void +eek_symbol_real_set_name (EekSymbol *self, + const gchar *name) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + g_free (priv->name); + priv->name = g_strdup (name); +} + +G_CONST_RETURN gchar * +eek_symbol_real_get_name (EekSymbol *self) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + return priv->name; +} + +static void +eek_symbol_real_set_label (EekSymbol *self, + const gchar *label) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + g_free (priv->label); + priv->label = g_strdup (label); +} + +gchar * +eek_symbol_real_get_label (EekSymbol *self) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + return priv->label; +} + +static void +eek_symbol_real_set_category (EekSymbol *self, + EekSymbolCategory category) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + priv->category = category; +} + +EekSymbolCategory +eek_symbol_real_get_category (EekSymbol *self) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + return priv->category; +} + +static void +eek_symbol_real_set_modifier_mask (EekSymbol *self, + EekModifierType mask) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + priv->modifier_mask = mask; +} + +EekModifierType +eek_symbol_real_get_modifier_mask (EekSymbol *self) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(self); + return priv->modifier_mask; +} + +static void +eek_symbol_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + switch (prop_id) { + case PROP_NAME: + eek_symbol_set_name (EEK_SYMBOL(object), g_value_get_string (value)); + break; + case PROP_LABEL: + eek_symbol_set_label (EEK_SYMBOL(object), g_value_get_string (value)); + break; + case PROP_CATEGORY: + eek_symbol_set_category (EEK_SYMBOL(object), g_value_get_int (value)); + break; + case PROP_MODIFIER_MASK: + eek_symbol_set_modifier_mask (EEK_SYMBOL(object), + g_value_get_int (value)); + break; + default: + g_object_set_property (object, + g_param_spec_get_name (pspec), + value); + break; + } +} + +static void +eek_symbol_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + switch (prop_id) { + case PROP_NAME: + g_value_set_string (value, eek_symbol_get_name (EEK_SYMBOL(object))); + break; + case PROP_LABEL: + g_value_set_string (value, eek_symbol_get_label (EEK_SYMBOL(object))); + break; + case PROP_CATEGORY: + g_value_set_int (value, eek_symbol_get_category (EEK_SYMBOL(object))); + break; + case PROP_MODIFIER_MASK: + g_value_set_int (value, + eek_symbol_get_modifier_mask (EEK_SYMBOL(object))); + break; + default: + g_object_get_property (object, + g_param_spec_get_name (pspec), + value); + break; + } +} + +static void +eek_symbol_finalize (GObject *object) +{ + EekSymbolPrivate *priv = EEK_SYMBOL_GET_PRIVATE(object); + if (priv->name) + g_free (priv->name); +} + +static void +eek_symbol_class_init (EekSymbolClass *klass) +{ + GObjectClass *gobject_class = G_OBJECT_CLASS (klass); + GParamSpec *pspec; + + g_type_class_add_private (gobject_class, sizeof (EekSymbolPrivate)); + + klass->set_name = eek_symbol_real_set_name; + klass->get_name = eek_symbol_real_get_name; + klass->set_label = eek_symbol_real_set_label; + klass->get_label = eek_symbol_real_get_label; + klass->set_category = eek_symbol_real_set_category; + klass->get_category = eek_symbol_real_get_category; + klass->set_modifier_mask = eek_symbol_real_set_modifier_mask; + klass->get_modifier_mask = eek_symbol_real_get_modifier_mask; + + gobject_class->set_property = eek_symbol_set_property; + gobject_class->get_property = eek_symbol_get_property; + gobject_class->finalize = eek_symbol_finalize; + + pspec = g_param_spec_string ("name", + "Name", + "Canonical name of the keysym", + NULL, + G_PARAM_READWRITE); + g_object_class_install_property (gobject_class, PROP_NAME, pspec); + + pspec = g_param_spec_string ("label", + "Label", + "Text used to display the keysym", + NULL, + G_PARAM_READWRITE); + g_object_class_install_property (gobject_class, PROP_LABEL, pspec); +} + +static void +eek_symbol_init (EekSymbol *self) +{ + EekSymbolPrivate *priv; + + priv = self->priv = EEK_SYMBOL_GET_PRIVATE(self); + priv->name = NULL; + priv->label = NULL; + priv->category = EEK_SYMBOL_CATEGORY_UNKNOWN; + priv->modifier_mask = 0; +} + +EekSymbol * +eek_symbol_new (const gchar *name) +{ + return g_object_new (EEK_TYPE_SYMBOL, "name", name); +} + +void +eek_symbol_set_name (EekSymbol *symbol, + const gchar *name) +{ + g_return_if_fail (EEK_IS_SYMBOL(symbol)); + EEK_SYMBOL_GET_CLASS(symbol)->set_name (symbol, name); +} + +G_CONST_RETURN gchar * +eek_symbol_get_name (EekSymbol *symbol) +{ + g_return_val_if_fail (EEK_IS_SYMBOL(symbol), NULL); + return EEK_SYMBOL_GET_CLASS(symbol)->get_name (symbol); +} + +void +eek_symbol_set_label (EekSymbol *symbol, + const gchar *label) +{ + g_return_if_fail (EEK_IS_SYMBOL(symbol)); + return EEK_SYMBOL_GET_CLASS(symbol)->set_label (symbol, label); +} + +gchar * +eek_symbol_get_label (EekSymbol *symbol) +{ + g_return_val_if_fail (EEK_IS_SYMBOL(symbol), NULL); + return EEK_SYMBOL_GET_CLASS(symbol)->get_label (symbol); +} + +void +eek_symbol_set_category (EekSymbol *symbol, + EekSymbolCategory category) +{ + g_return_if_fail (EEK_IS_SYMBOL(symbol)); + return EEK_SYMBOL_GET_CLASS(symbol)->set_category (symbol, category); +} + +EekSymbolCategory +eek_symbol_get_category (EekSymbol *symbol) +{ + g_return_val_if_fail (EEK_IS_SYMBOL(symbol), EEK_SYMBOL_CATEGORY_UNKNOWN); + return EEK_SYMBOL_GET_CLASS(symbol)->get_category (symbol); +} + +void +eek_symbol_set_modifier_mask (EekSymbol *symbol, + EekModifierType mask) +{ + g_return_if_fail (EEK_IS_SYMBOL(symbol)); + return EEK_SYMBOL_GET_CLASS(symbol)->set_modifier_mask (symbol, mask); +} + +EekModifierType +eek_symbol_get_modifier_mask (EekSymbol *symbol) +{ + g_return_val_if_fail (EEK_IS_SYMBOL(symbol), 0); + return EEK_SYMBOL_GET_CLASS(symbol)->get_modifier_mask (symbol); +} diff --git a/eek/eek-symbol.h b/eek/eek-symbol.h new file mode 100644 index 00000000..8a2f494e --- /dev/null +++ b/eek/eek-symbol.h @@ -0,0 +1,101 @@ +#ifndef EEK_SYMBOL_H +#define EEK_SYMBOL_H 1 + +#include +#include "eek-types.h" + +G_BEGIN_DECLS + +/** + * EekSymbolCategory: + * @EEK_SYMBOL_CATEGORY_LETTER: the symbol represents an alphabet letter + * @EEK_SYMBOL_CATEGORY_FUNCTION: the symbol represents a function + * @EEK_SYMBOL_CATEGORY_KEYNAME: the symbol does not have meaning but + * have a name + * @EEK_SYMBOL_CATEGORY_UNKNOWN: used for error reporting + * + * Category of the key symbols. + */ +typedef enum { + EEK_SYMBOL_CATEGORY_LETTER, + EEK_SYMBOL_CATEGORY_FUNCTION, + EEK_SYMBOL_CATEGORY_KEYNAME, + EEK_SYMBOL_CATEGORY_USER0, + EEK_SYMBOL_CATEGORY_USER1, + EEK_SYMBOL_CATEGORY_USER2, + EEK_SYMBOL_CATEGORY_USER3, + EEK_SYMBOL_CATEGORY_USER4, + EEK_SYMBOL_CATEGORY_UNKNOWN, + /*< private >*/ + EEK_SYMBOL_CATEGORY_LAST = EEK_SYMBOL_CATEGORY_UNKNOWN +} EekSymbolCategory; + +#define EEK_TYPE_SYMBOL (eek_symbol_get_type()) +#define EEK_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEK_TYPE_SYMBOL, EekSymbol)) +#define EEK_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), EEK_TYPE_SYMBOL, EekSymbolClass)) +#define EEK_IS_SYMBOL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEK_TYPE_SYMBOL)) +#define EEK_IS_SYMBOL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), EEK_TYPE_SYMBOL)) +#define EEK_SYMBOL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), EEK_TYPE_SYMBOL, EekSymbolClass)) + +typedef struct _EekSymbolClass EekSymbolClass; +typedef struct _EekSymbolPrivate EekSymbolPrivate; + +struct _EekSymbol { + /*< private >*/ + GObject parent; + + EekSymbolPrivate *priv; +}; + +struct _EekSymbolClass { + /*< private >*/ + GObjectClass parent_class; + + /*< public >*/ + void (* set_name) (EekSymbol *self, + const gchar *name); + G_CONST_RETURN gchar *(* get_name) (EekSymbol *self); + void (* set_label) (EekSymbol *self, + const gchar *label); + gchar *(* get_label) (EekSymbol *self); + void (* set_category) (EekSymbol *self, + EekSymbolCategory category); + EekSymbolCategory (* get_category) (EekSymbol *self); + void (* set_modifier_mask) (EekSymbol *self, + EekModifierType mask); + EekModifierType (* get_modifier_mask) (EekSymbol *self); + + /*< private >*/ + /* padding */ + gpointer pdummy[24]; +}; + +GType eek_symbol_get_type (void) G_GNUC_CONST; + +EekSymbol *eek_symbol_new (const gchar *name); +void eek_symbol_set_name (EekSymbol *symbol, + const gchar *name); +G_CONST_RETURN gchar *eek_symbol_get_name (EekSymbol *symbol); +void eek_symbol_set_label (EekSymbol *symbol, + const gchar *label); +gchar *eek_symbol_get_label (EekSymbol *symbol); +void eek_symbol_set_category (EekSymbol *symbol, + EekSymbolCategory category); +EekSymbolCategory eek_symbol_get_category (EekSymbol *symbol); +EekModifierType eek_symbol_get_modifier_mask (EekSymbol *keysym); +void eek_symbol_set_modifier_mask (EekSymbol *keysym, + EekModifierType mask); + +/** + * eek_symbol_is_modifier: + * @symbol: an #EekSymbol + * + * Check if @symbol is a modifier. + * Returns: %TRUE if @symbol is a modifier. + */ +#define eek_symbol_is_modifier(symbol) \ + (eek_symbol_get_modifier_mask ((symbol)) != 0) + +G_END_DECLS + +#endif /* EEK_SYMBOL_H */ diff --git a/eek/eek-types.c b/eek/eek-types.c index 49d8aa81..659b232a 100644 --- a/eek/eek-types.c +++ b/eek/eek-types.c @@ -30,29 +30,55 @@ #include "eek-types.h" #include -/* EekKeysymMatrix */ -static EekKeysymMatrix * -eek_keysym_matrix_copy (const EekKeysymMatrix *matrix) +/* EekSymbolMatrix */ +EekSymbolMatrix * +eek_symbol_matrix_new (gint num_groups, gint num_levels) { - return g_slice_dup (EekKeysymMatrix, matrix); + EekSymbolMatrix *matrix = g_slice_new (EekSymbolMatrix); + + matrix->num_groups = num_groups; + matrix->num_levels = num_levels; + matrix->data = g_slice_alloc0 (sizeof (EekSymbol *) * + num_groups * num_levels); + return matrix; } -static void -eek_keysym_matrix_free (EekKeysymMatrix *matrix) +EekSymbolMatrix * +eek_symbol_matrix_copy (const EekSymbolMatrix *matrix) { - g_slice_free (EekKeysymMatrix, matrix); + EekSymbolMatrix *retval; + gint i, num_symbols = matrix->num_groups * matrix->num_levels; + + retval = g_slice_dup (EekSymbolMatrix, matrix); + retval->data = g_slice_copy (sizeof (EekSymbol *) * num_symbols, + matrix->data); + for (i = 0; i < num_symbols; i++) + if (retval->data[i]) + g_object_ref (retval->data[i]); + return retval; +} + +void +eek_symbol_matrix_free (EekSymbolMatrix *matrix) +{ + gint i, num_symbols = matrix->num_groups * matrix->num_levels; + for (i = 0; i < num_symbols; i++) + if (matrix->data[i]) + g_object_unref (matrix->data[i]); + g_slice_free1 (sizeof (EekSymbol *) * num_symbols, matrix->data); + g_slice_free (EekSymbolMatrix, matrix); } GType -eek_keysym_matrix_get_type (void) +eek_symbol_matrix_get_type (void) { static GType our_type = 0; if (our_type == 0) our_type = - g_boxed_type_register_static ("EekKeysymMatrix", - (GBoxedCopyFunc)eek_keysym_matrix_copy, - (GBoxedFreeFunc)eek_keysym_matrix_free); + g_boxed_type_register_static ("EekSymbolMatrix", + (GBoxedCopyFunc)eek_symbol_matrix_copy, + (GBoxedFreeFunc)eek_symbol_matrix_free); return our_type; } diff --git a/eek/eek-types.h b/eek/eek-types.h index cb843516..01c6d2a2 100644 --- a/eek/eek-types.h +++ b/eek/eek-types.h @@ -24,7 +24,7 @@ G_BEGIN_DECLS -#define EEK_TYPE_KEYSYM_MATRIX (eek_keysym_matrix_get_type ()) +#define EEK_TYPE_SYMBOL_MATRIX (eek_symbol_matrix_get_type ()) #define EEK_TYPE_POINT (eek_point_get_type ()) #define EEK_TYPE_BOUNDS (eek_bounds_get_type ()) #define EEK_TYPE_OUTLINE (eek_outline_get_type ()) @@ -61,35 +61,78 @@ typedef enum { EEK_MODIFIER_BEHAVIOR_LOCK, EEK_MODIFIER_BEHAVIOR_LATCH } EekModifierBehavior; + +typedef enum +{ + EEK_SHIFT_MASK = 1 << 0, + EEK_LOCK_MASK = 1 << 1, + EEK_CONTROL_MASK = 1 << 2, + EEK_MOD1_MASK = 1 << 3, + EEK_MOD2_MASK = 1 << 4, + EEK_MOD3_MASK = 1 << 5, + EEK_MOD4_MASK = 1 << 6, + EEK_MOD5_MASK = 1 << 7, + EEK_BUTTON1_MASK = 1 << 8, + EEK_BUTTON2_MASK = 1 << 9, + EEK_BUTTON3_MASK = 1 << 10, + EEK_BUTTON4_MASK = 1 << 11, + EEK_BUTTON5_MASK = 1 << 12, + + /* The next few modifiers are used by XKB, so we skip to the end. + * Bits 15 - 25 are currently unused. Bit 29 is used internally. + */ + + EEK_SUPER_MASK = 1 << 26, + EEK_HYPER_MASK = 1 << 27, + EEK_META_MASK = 1 << 28, + + EEK_RELEASE_MASK = 1 << 30, + + EEK_MODIFIER_MASK = 0x5c001fff +} EekModifierType; + +/** + * EEK_INVALID_KEYCODE: + * + * Pseudo keycode used for error reporting. + */ +#define EEK_INVALID_KEYCODE ((guint)(-1)) typedef struct _EekElement EekElement; typedef struct _EekContainer EekContainer; typedef struct _EekKey EekKey; typedef struct _EekSection EekSection; typedef struct _EekKeyboard EekKeyboard; +typedef struct _EekSymbol EekSymbol; +typedef struct _EekKeysym EekKeysym; -typedef struct _EekKeysymMatrix EekKeysymMatrix; +typedef struct _EekSymbolMatrix EekSymbolMatrix; typedef struct _EekPoint EekPoint; typedef struct _EekBounds EekBounds; typedef struct _EekOutline EekOutline; typedef struct _EekColor EekColor; /** - * EekKeysymMatrix: - * @data: array of keysyms + * EekSymbolMatrix: + * @data: array of symbols * @num_groups: the number of groups (rows) * @num_levels: the number of levels (columns) * * Symbol matrix of a key. */ -struct _EekKeysymMatrix +struct _EekSymbolMatrix { - guint *data; + EekSymbol **data; gint num_groups; gint num_levels; }; -GType eek_keysym_matrix_get_type (void) G_GNUC_CONST; +GType eek_symbol_matrix_get_type + (void) G_GNUC_CONST; +EekSymbolMatrix * eek_symbol_matrix_new (gint num_groups, + gint num_levels); +EekSymbolMatrix *eek_symbol_matrix_copy (const EekSymbolMatrix *matrix); +void eek_symbol_matrix_free (EekSymbolMatrix *matrix); /** * EekPoint: diff --git a/eek/eek-xkb-layout.c b/eek/eek-xkb-layout.c index 20170fab..de0b2834 100644 --- a/eek/eek-xkb-layout.c +++ b/eek/eek-xkb-layout.c @@ -123,11 +123,11 @@ create_key (EekXkbLayout *layout, EekXkbLayoutPrivate *priv = layout->priv; EekKey *key; EekBounds bounds; - guint *keysyms = NULL; + EekSymbolMatrix *matrix = NULL; gchar name[XkbKeyNameLength + 1]; EekOutline *outline; KeyCode keycode; - gint num_groups, num_levels, num_keysyms; + gint num_groups, num_levels, num_symbols; xkbgeometry = priv->xkb->geom; xkbshape = &xkbgeometry->shapes[xkbkey->shape_ndx]; @@ -193,12 +193,13 @@ create_key (EekXkbLayout *layout, num_groups = XkbKeyNumGroups (priv->xkb, keycode); num_levels = XkbKeyGroupsWidth (priv->xkb, keycode); - num_keysyms = num_groups * num_levels; - keysyms = g_slice_alloc0 (num_keysyms * sizeof(guint)); + num_symbols = num_groups * num_levels; + matrix = eek_symbol_matrix_new (num_groups, num_levels); for (i = 0; i < num_groups; i++) for (j = 0; j < num_levels; j++) { keysym = XkbKeySymEntry (priv->xkb, keycode, j, i); - keysyms[i * num_levels + j] = keysym; + matrix->data[i * num_levels + j] = + EEK_SYMBOL(eek_keysym_new (keysym)); } } @@ -206,9 +207,8 @@ create_key (EekXkbLayout *layout, eek_element_set_name (EEK_ELEMENT(key), name); eek_element_set_bounds (EEK_ELEMENT(key), &bounds); eek_key_set_keycode (key, keycode); - eek_key_set_keysyms (key, keysyms, num_groups, num_levels); - if (keysyms) - g_slice_free1 (num_keysyms * sizeof(guint), keysyms); + eek_key_set_symbol_matrix (key, matrix); + eek_symbol_matrix_free (matrix); eek_key_set_outline (key, outline); } diff --git a/eek/eek-xml-layout.c b/eek/eek-xml-layout.c index fd8f072a..ce0a6c21 100644 --- a/eek/eek-xml-layout.c +++ b/eek/eek-xml-layout.c @@ -32,6 +32,7 @@ #include "eek-keyboard.h" #include "eek-section.h" #include "eek-key.h" +#include "eek-keysym.h" enum { PROP_0, @@ -64,7 +65,7 @@ struct _ParseCallbackData { EekOrientation orientation; GSList *points; guint keycode; - GSList *keysyms; + GSList *symbols; gint groups, levels; EekOutline outline; gchar *oref; @@ -89,7 +90,10 @@ static const gchar *valid_path_list[] = { "symbols/key/section/keyboard", "groups/symbols/key/section/keyboard", "levels/symbols/key/section/keyboard", - "xkeysym/symbols/key/section/keyboard", + "keysym/symbols/key/section/keyboard", + "custom/symbols/key/section/keyboard", + "text/symbols/key/section/keyboard", + "icon/symbols/key/section/keyboard", "invalid/symbols/key/section/keyboard", "index/key/section/keyboard", "point/outline/keyboard" @@ -207,7 +211,7 @@ start_element_callback (GMarkupParseContext *pcontext, if (g_strcmp0 (element_name, "symbols") == 0) { data->groups = groups; data->levels = levels; - data->keysyms = NULL; + data->symbols = NULL; goto out; } @@ -253,23 +257,22 @@ end_element_callback (GMarkupParseContext *pcontext, } if (g_strcmp0 (element_name, "symbols") == 0) { - gint num_keysyms = data->groups * data->levels; - guint *keysyms = g_slice_alloc0 (sizeof(guint) * num_keysyms); + gint num_symbols = data->groups * data->levels; + EekSymbolMatrix *matrix = eek_symbol_matrix_new (data->groups, + data->levels); - head = data->keysyms = g_slist_reverse (data->keysyms); - for (i = 0; i < num_keysyms; i++) { + head = data->symbols = g_slist_reverse (data->symbols); + for (i = 0; i < num_symbols; i++) { if (head && head->data) { - keysyms[i] = eek_xkeysym_from_string (head->data); - g_free (head->data); + matrix->data[i] = head->data; head = g_slist_next (head); } else - keysyms[i] = EEK_INVALID_KEYSYM; + matrix->data[i] = NULL; } - eek_key_set_keysyms (data->key, keysyms, data->groups, data->levels); - g_slice_free1 (sizeof(guint) * num_keysyms, keysyms); - g_slist_free (data->keysyms); - data->keysyms = NULL; + eek_key_set_symbol_matrix (data->key, matrix); + g_slist_free (data->symbols); + data->symbols = NULL; goto out; } @@ -376,13 +379,15 @@ end_element_callback (GMarkupParseContext *pcontext, goto out; } - if (g_strcmp0 (element_name, "xkeysym") == 0) { - data->keysyms = g_slist_prepend (data->keysyms, g_strdup (text)); + if (g_strcmp0 (element_name, "keysym") == 0) { + data->symbols = + g_slist_prepend (data->symbols, + eek_keysym_new_from_name (g_strdup (text))); goto out; } if (g_strcmp0 (element_name, "invalid") == 0) { - data->keysyms = g_slist_prepend (data->keysyms, NULL); + data->symbols = g_slist_prepend (data->symbols, NULL); goto out; } diff --git a/eek/eek-xml.c b/eek/eek-xml.c index 811d3952..d716253a 100644 --- a/eek/eek-xml.c +++ b/eek/eek-xml.c @@ -27,6 +27,7 @@ #include "eek-section.h" #include "eek-key.h" #include "eek-xml.h" +#include "eek-keysym.h" #define g_string_append_indent(string, indent) \ { \ @@ -74,8 +75,8 @@ output_key_callback (EekElement *element, gpointer user_data) OutputCallbackData *data = user_data; EekBounds bounds; EekOutline *outline; - gint i, num_groups, num_levels, num_keysyms; - guint *keysyms; + gint i, num_symbols; + EekSymbolMatrix *matrix; gint column, row; eek_key_get_index (EEK_KEY(element), &column, &row); @@ -108,36 +109,27 @@ output_key_callback (EekElement *element, gpointer user_data) i); } - eek_key_get_keysyms (EEK_KEY(element), NULL, &num_groups, &num_levels); - num_keysyms = num_groups * num_levels; - if (num_keysyms > 0) { - keysyms = g_slice_alloc (num_keysyms * sizeof(guint)); - eek_key_get_keysyms (EEK_KEY(element), &keysyms, NULL, NULL); + matrix = eek_key_get_symbol_matrix (EEK_KEY(element)); + num_symbols = matrix->num_groups * matrix->num_levels; + if (num_symbols > 0) { g_string_append_indent (data->output, data->indent + 1); g_string_markup_printf (data->output, "\n", - num_groups, num_levels); + matrix->num_groups, matrix->num_levels); - for (i = 0; i < num_groups * num_levels; i++) { + for (i = 0; i < num_symbols; i++) { g_string_append_indent (data->output, data->indent + 2); - if (keysyms[i] != EEK_INVALID_KEYSYM) { - gchar *name = eek_xkeysym_to_string (keysyms[i]); - - if (name) { - g_string_markup_printf (data->output, - "%s\n", - name); - g_free (name); - } else - g_string_markup_printf (data->output, - "\n"); - } else + if (EEK_IS_KEYSYM(matrix->data[i])) g_string_markup_printf (data->output, - "\n"); + "%s\n", + eek_symbol_get_name (matrix->data[i])); + else + g_string_markup_printf (data->output, + "%s\n", + eek_symbol_get_name (matrix->data[i])); } g_string_append_indent (data->output, data->indent + 1); g_string_markup_printf (data->output, "\n"); - g_slice_free1 (num_keysyms * sizeof(guint), keysyms); } g_string_append_indent (data->output, data->indent); diff --git a/eek/eek.h b/eek/eek.h index 057c8937..073cba3b 100644 --- a/eek/eek.h +++ b/eek/eek.h @@ -24,6 +24,7 @@ #include "eek-section.h" #include "eek-key.h" #include "eek-layout.h" +#include "eek-symbol.h" #include "eek-keysym.h" #include "eek-xml.h" diff --git a/eek/keyname-keysym-entries.txt b/eek/keyname-keysym-entries.txt deleted file mode 100644 index c1164b6d..00000000 --- a/eek/keyname-keysym-entries.txt +++ /dev/null @@ -1,1306 +0,0 @@ -0x000020 "space" EEK_KEYSYM_CATEGORY_KEYNAME -0x000021 "exclam" EEK_KEYSYM_CATEGORY_KEYNAME -0x000022 "quotedbl" EEK_KEYSYM_CATEGORY_KEYNAME -0x000023 "numbersign" EEK_KEYSYM_CATEGORY_KEYNAME -0x000024 "dollar" EEK_KEYSYM_CATEGORY_KEYNAME -0x000025 "percent" EEK_KEYSYM_CATEGORY_KEYNAME -0x000026 "ampersand" EEK_KEYSYM_CATEGORY_KEYNAME -0x000027 "apostrophe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000027 "quoteright" EEK_KEYSYM_CATEGORY_KEYNAME -0x000028 "parenleft" EEK_KEYSYM_CATEGORY_KEYNAME -0x000029 "parenright" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002a "asterisk" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002b "plus" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002c "comma" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002d "minus" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002e "period" EEK_KEYSYM_CATEGORY_KEYNAME -0x00002f "slash" EEK_KEYSYM_CATEGORY_KEYNAME -0x000030 "0" EEK_KEYSYM_CATEGORY_LETTER -0x000031 "1" EEK_KEYSYM_CATEGORY_LETTER -0x000032 "2" EEK_KEYSYM_CATEGORY_LETTER -0x000033 "3" EEK_KEYSYM_CATEGORY_LETTER -0x000034 "4" EEK_KEYSYM_CATEGORY_LETTER -0x000035 "5" EEK_KEYSYM_CATEGORY_LETTER -0x000036 "6" EEK_KEYSYM_CATEGORY_LETTER -0x000037 "7" EEK_KEYSYM_CATEGORY_LETTER -0x000038 "8" EEK_KEYSYM_CATEGORY_LETTER -0x000039 "9" EEK_KEYSYM_CATEGORY_LETTER -0x00003a "colon" EEK_KEYSYM_CATEGORY_KEYNAME -0x00003b "semicolon" EEK_KEYSYM_CATEGORY_KEYNAME -0x00003c "less" EEK_KEYSYM_CATEGORY_KEYNAME -0x00003d "equal" EEK_KEYSYM_CATEGORY_KEYNAME -0x00003e "greater" EEK_KEYSYM_CATEGORY_KEYNAME -0x00003f "question" EEK_KEYSYM_CATEGORY_KEYNAME -0x000040 "at" EEK_KEYSYM_CATEGORY_KEYNAME -0x000041 "A" EEK_KEYSYM_CATEGORY_LETTER -0x000042 "B" EEK_KEYSYM_CATEGORY_LETTER -0x000043 "C" EEK_KEYSYM_CATEGORY_LETTER -0x000044 "D" EEK_KEYSYM_CATEGORY_LETTER -0x000045 "E" EEK_KEYSYM_CATEGORY_LETTER -0x000046 "F" EEK_KEYSYM_CATEGORY_LETTER -0x000047 "G" EEK_KEYSYM_CATEGORY_LETTER -0x000048 "H" EEK_KEYSYM_CATEGORY_LETTER -0x000049 "I" EEK_KEYSYM_CATEGORY_LETTER -0x00004a "J" EEK_KEYSYM_CATEGORY_LETTER -0x00004b "K" EEK_KEYSYM_CATEGORY_LETTER -0x00004c "L" EEK_KEYSYM_CATEGORY_LETTER -0x00004d "M" EEK_KEYSYM_CATEGORY_LETTER -0x00004e "N" EEK_KEYSYM_CATEGORY_LETTER -0x00004f "O" EEK_KEYSYM_CATEGORY_LETTER -0x000050 "P" EEK_KEYSYM_CATEGORY_LETTER -0x000051 "Q" EEK_KEYSYM_CATEGORY_LETTER -0x000052 "R" EEK_KEYSYM_CATEGORY_LETTER -0x000053 "S" EEK_KEYSYM_CATEGORY_LETTER -0x000054 "T" EEK_KEYSYM_CATEGORY_LETTER -0x000055 "U" EEK_KEYSYM_CATEGORY_LETTER -0x000056 "V" EEK_KEYSYM_CATEGORY_LETTER -0x000057 "W" EEK_KEYSYM_CATEGORY_LETTER -0x000058 "X" EEK_KEYSYM_CATEGORY_LETTER -0x000059 "Y" EEK_KEYSYM_CATEGORY_LETTER -0x00005a "Z" EEK_KEYSYM_CATEGORY_LETTER -0x00005b "bracketleft" EEK_KEYSYM_CATEGORY_KEYNAME -0x00005c "backslash" EEK_KEYSYM_CATEGORY_KEYNAME -0x00005d "bracketright" EEK_KEYSYM_CATEGORY_KEYNAME -0x00005e "asciicircum" EEK_KEYSYM_CATEGORY_KEYNAME -0x00005f "underscore" EEK_KEYSYM_CATEGORY_KEYNAME -0x000060 "grave" EEK_KEYSYM_CATEGORY_KEYNAME -0x000060 "quoteleft" EEK_KEYSYM_CATEGORY_KEYNAME -0x000061 "a" EEK_KEYSYM_CATEGORY_LETTER -0x000062 "b" EEK_KEYSYM_CATEGORY_LETTER -0x000063 "c" EEK_KEYSYM_CATEGORY_LETTER -0x000064 "d" EEK_KEYSYM_CATEGORY_LETTER -0x000065 "e" EEK_KEYSYM_CATEGORY_LETTER -0x000066 "f" EEK_KEYSYM_CATEGORY_LETTER -0x000067 "g" EEK_KEYSYM_CATEGORY_LETTER -0x000068 "h" EEK_KEYSYM_CATEGORY_LETTER -0x000069 "i" EEK_KEYSYM_CATEGORY_LETTER -0x00006a "j" EEK_KEYSYM_CATEGORY_LETTER -0x00006b "k" EEK_KEYSYM_CATEGORY_LETTER -0x00006c "l" EEK_KEYSYM_CATEGORY_LETTER -0x00006d "m" EEK_KEYSYM_CATEGORY_LETTER -0x00006e "n" EEK_KEYSYM_CATEGORY_LETTER -0x00006f "o" EEK_KEYSYM_CATEGORY_LETTER -0x000070 "p" EEK_KEYSYM_CATEGORY_LETTER -0x000071 "q" EEK_KEYSYM_CATEGORY_LETTER -0x000072 "r" EEK_KEYSYM_CATEGORY_LETTER -0x000073 "s" EEK_KEYSYM_CATEGORY_LETTER -0x000074 "t" EEK_KEYSYM_CATEGORY_LETTER -0x000075 "u" EEK_KEYSYM_CATEGORY_LETTER -0x000076 "v" EEK_KEYSYM_CATEGORY_LETTER -0x000077 "w" EEK_KEYSYM_CATEGORY_LETTER -0x000078 "x" EEK_KEYSYM_CATEGORY_LETTER -0x000079 "y" EEK_KEYSYM_CATEGORY_LETTER -0x00007a "z" EEK_KEYSYM_CATEGORY_LETTER -0x00007b "braceleft" EEK_KEYSYM_CATEGORY_KEYNAME -0x00007c "bar" EEK_KEYSYM_CATEGORY_KEYNAME -0x00007d "braceright" EEK_KEYSYM_CATEGORY_KEYNAME -0x00007e "asciitilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a0 "nobreakspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a1 "exclamdown" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a2 "cent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a3 "sterling" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a4 "currency" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a5 "yen" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a6 "brokenbar" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a7 "section" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a8 "diaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000a9 "copyright" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000aa "ordfeminine" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ab "guillemotleft" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ac "notsign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ad "hyphen" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ae "registered" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000af "macron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b0 "degree" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b1 "plusminus" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b2 "twosuperior" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b3 "threesuperior" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b4 "acute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b5 "mu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b6 "paragraph" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b7 "periodcentered" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b8 "cedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000b9 "onesuperior" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ba "masculine" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000bb "guillemotright" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000bc "onequarter" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000bd "onehalf" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000be "threequarters" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000bf "questiondown" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c0 "Agrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c1 "Aacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c2 "Acircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c3 "Atilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c4 "Adiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c5 "Aring" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c6 "AE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c7 "Ccedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c8 "Egrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000c9 "Eacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ca "Ecircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000cb "Ediaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000cc "Igrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000cd "Iacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ce "Icircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000cf "Idiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d0 "ETH" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d0 "Eth" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d1 "Ntilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d2 "Ograve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d3 "Oacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d4 "Ocircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d5 "Otilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d6 "Odiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d7 "multiply" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d8 "Ooblique" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000d9 "Ugrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000da "Uacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000db "Ucircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000dc "Udiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000dd "Yacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000de "THORN" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000de "Thorn" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000df "ssharp" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e0 "agrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e1 "aacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e2 "acircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e3 "atilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e4 "adiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e5 "aring" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e6 "ae" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e7 "ccedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e8 "egrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000e9 "eacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ea "ecircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000eb "ediaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ec "igrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ed "iacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ee "icircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ef "idiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f0 "eth" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f1 "ntilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f2 "ograve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f3 "oacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f4 "ocircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f5 "otilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f6 "odiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f7 "division" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f8 "oslash" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000f9 "ugrave" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000fa "uacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000fb "ucircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000fc "udiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000fd "yacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000fe "thorn" EEK_KEYSYM_CATEGORY_KEYNAME -0x0000ff "ydiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a1 "Aogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a2 "breve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a3 "Lstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a5 "Lcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a6 "Sacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001a9 "Scaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001aa "Scedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ab "Tcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ac "Zacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ae "Zcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001af "Zabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b1 "aogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b2 "ogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b3 "lstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b5 "lcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b6 "sacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b7 "caron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001b9 "scaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ba "scedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001bb "tcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001bc "zacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001bd "doubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001be "zcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001bf "zabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001c0 "Racute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001c3 "Abreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001c5 "Lacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001c6 "Cacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001c8 "Ccaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ca "Eogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001cc "Ecaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001cf "Dcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d0 "Dstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d1 "Nacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d2 "Ncaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d5 "Odoubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d8 "Rcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001d9 "Uring" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001db "Udoubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001de "Tcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001e0 "racute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001e3 "abreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001e5 "lacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001e6 "cacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001e8 "ccaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ea "eogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ec "ecaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ef "dcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f0 "dstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f1 "nacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f2 "ncaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f5 "odoubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f8 "rcaron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001f9 "uring" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001fb "udoubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001fe "tcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0001ff "abovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002a1 "Hstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002a6 "Hcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002a9 "Iabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002ab "Gbreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002ac "Jcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002b1 "hstroke" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002b6 "hcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002b9 "idotless" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002bb "gbreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002bc "jcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002c5 "Cabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002c6 "Ccircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002d5 "Gabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002d8 "Gcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002dd "Ubreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002de "Scircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002e5 "cabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002e6 "ccircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002f5 "gabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002f8 "gcircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002fd "ubreve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0002fe "scircumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003a2 "kappa" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003a2 "kra" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003a3 "Rcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003a5 "Itilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003a6 "Lcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003aa "Emacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003ab "Gcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003ac "Tslash" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003b3 "rcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003b5 "itilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003b6 "lcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003ba "emacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003bb "gcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003bc "tslash" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003bd "ENG" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003bf "eng" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003c0 "Amacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003c7 "Iogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003cc "Eabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003cf "Imacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003d1 "Ncedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003d2 "Omacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003d3 "Kcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003d9 "Uogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003dd "Utilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003de "Umacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003e0 "amacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003e7 "iogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003ec "eabovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003ef "imacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003f1 "ncedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003f2 "omacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003f3 "kcedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003f9 "uogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003fd "utilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x0003fe "umacron" EEK_KEYSYM_CATEGORY_KEYNAME -0x00047e "overline" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a1 "kana_fullstop" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a2 "kana_openingbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a3 "kana_closingbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a4 "kana_comma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a5 "kana_conjunctive" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a5 "kana_middledot" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a6 "kana_WO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a7 "kana_a" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a8 "kana_i" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004a9 "kana_u" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004aa "kana_e" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ab "kana_o" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ac "kana_ya" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ad "kana_yu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ae "kana_yo" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004af "kana_tsu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004af "kana_tu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b0 "prolongedsound" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b1 "kana_A" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b2 "kana_I" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b3 "kana_U" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b4 "kana_E" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b5 "kana_O" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b6 "kana_KA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b7 "kana_KI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b8 "kana_KU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004b9 "kana_KE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ba "kana_KO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004bb "kana_SA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004bc "kana_SHI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004bd "kana_SU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004be "kana_SE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004bf "kana_SO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c0 "kana_TA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c1 "kana_CHI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c1 "kana_TI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c2 "kana_TSU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c2 "kana_TU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c3 "kana_TE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c4 "kana_TO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c5 "kana_NA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c6 "kana_NI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c7 "kana_NU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c8 "kana_NE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004c9 "kana_NO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ca "kana_HA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004cb "kana_HI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004cc "kana_FU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004cc "kana_HU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004cd "kana_HE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004ce "kana_HO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004cf "kana_MA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d0 "kana_MI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d1 "kana_MU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d2 "kana_ME" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d3 "kana_MO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d4 "kana_YA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d5 "kana_YU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d6 "kana_YO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d7 "kana_RA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d8 "kana_RI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004d9 "kana_RU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004da "kana_RE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004db "kana_RO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004dc "kana_WA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004dd "kana_N" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004de "voicedsound" EEK_KEYSYM_CATEGORY_KEYNAME -0x0004df "semivoicedsound" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ac "Arabic_comma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005bb "Arabic_semicolon" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005bf "Arabic_question_mark" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c1 "Arabic_hamza" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c2 "Arabic_maddaonalef" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c3 "Arabic_hamzaonalef" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c4 "Arabic_hamzaonwaw" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c5 "Arabic_hamzaunderalef" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c6 "Arabic_hamzaonyeh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c7 "Arabic_alef" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c8 "Arabic_beh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005c9 "Arabic_tehmarbuta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ca "Arabic_teh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005cb "Arabic_theh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005cc "Arabic_jeem" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005cd "Arabic_hah" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ce "Arabic_khah" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005cf "Arabic_dal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d0 "Arabic_thal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d1 "Arabic_ra" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d2 "Arabic_zain" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d3 "Arabic_seen" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d4 "Arabic_sheen" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d5 "Arabic_sad" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d6 "Arabic_dad" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d7 "Arabic_tah" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d8 "Arabic_zah" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005d9 "Arabic_ain" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005da "Arabic_ghain" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e0 "Arabic_tatweel" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e1 "Arabic_feh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e2 "Arabic_qaf" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e3 "Arabic_kaf" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e4 "Arabic_lam" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e5 "Arabic_meem" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e6 "Arabic_noon" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e7 "Arabic_ha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e7 "Arabic_heh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e8 "Arabic_waw" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005e9 "Arabic_alefmaksura" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ea "Arabic_yeh" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005eb "Arabic_fathatan" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ec "Arabic_dammatan" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ed "Arabic_kasratan" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ee "Arabic_fatha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005ef "Arabic_damma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005f0 "Arabic_kasra" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005f1 "Arabic_shadda" EEK_KEYSYM_CATEGORY_KEYNAME -0x0005f2 "Arabic_sukun" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a1 "Serbian_dje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a2 "Macedonia_gje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a3 "Cyrillic_io" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a4 "Ukrainian_ie" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a4 "Ukranian_je" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a5 "Macedonia_dse" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a6 "Ukrainian_i" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a6 "Ukranian_i" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a7 "Ukrainian_yi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a7 "Ukranian_yi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a8 "Cyrillic_je" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a8 "Serbian_je" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a9 "Cyrillic_lje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006a9 "Serbian_lje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006aa "Cyrillic_nje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006aa "Serbian_nje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ab "Serbian_tshe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ac "Macedonia_kje" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ae "Byelorussian_shortu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006af "Cyrillic_dzhe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006af "Serbian_dze" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b0 "numerosign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b1 "Serbian_DJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b2 "Macedonia_GJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b3 "Cyrillic_IO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b4 "Ukrainian_IE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b4 "Ukranian_JE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b5 "Macedonia_DSE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b6 "Ukrainian_I" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b6 "Ukranian_I" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b7 "Ukrainian_YI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b7 "Ukranian_YI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b8 "Cyrillic_JE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b8 "Serbian_JE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b9 "Cyrillic_LJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006b9 "Serbian_LJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ba "Cyrillic_NJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ba "Serbian_NJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006bb "Serbian_TSHE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006bc "Macedonia_KJE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006be "Byelorussian_SHORTU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006bf "Cyrillic_DZHE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006bf "Serbian_DZE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c0 "Cyrillic_yu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c1 "Cyrillic_a" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c2 "Cyrillic_be" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c3 "Cyrillic_tse" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c4 "Cyrillic_de" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c5 "Cyrillic_ie" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c6 "Cyrillic_ef" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c7 "Cyrillic_ghe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c8 "Cyrillic_ha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006c9 "Cyrillic_i" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ca "Cyrillic_shorti" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006cb "Cyrillic_ka" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006cc "Cyrillic_el" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006cd "Cyrillic_em" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ce "Cyrillic_en" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006cf "Cyrillic_o" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d0 "Cyrillic_pe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d1 "Cyrillic_ya" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d2 "Cyrillic_er" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d3 "Cyrillic_es" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d4 "Cyrillic_te" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d5 "Cyrillic_u" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d6 "Cyrillic_zhe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d7 "Cyrillic_ve" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d8 "Cyrillic_softsign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006d9 "Cyrillic_yeru" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006da "Cyrillic_ze" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006db "Cyrillic_sha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006dc "Cyrillic_e" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006dd "Cyrillic_shcha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006de "Cyrillic_che" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006df "Cyrillic_hardsign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e0 "Cyrillic_YU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e1 "Cyrillic_A" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e2 "Cyrillic_BE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e3 "Cyrillic_TSE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e4 "Cyrillic_DE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e5 "Cyrillic_IE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e6 "Cyrillic_EF" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e7 "Cyrillic_GHE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e8 "Cyrillic_HA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006e9 "Cyrillic_I" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ea "Cyrillic_SHORTI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006eb "Cyrillic_KA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ec "Cyrillic_EL" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ed "Cyrillic_EM" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ee "Cyrillic_EN" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ef "Cyrillic_O" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f0 "Cyrillic_PE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f1 "Cyrillic_YA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f2 "Cyrillic_ER" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f3 "Cyrillic_ES" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f4 "Cyrillic_TE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f5 "Cyrillic_U" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f6 "Cyrillic_ZHE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f7 "Cyrillic_VE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f8 "Cyrillic_SOFTSIGN" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006f9 "Cyrillic_YERU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006fa "Cyrillic_ZE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006fb "Cyrillic_SHA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006fc "Cyrillic_E" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006fd "Cyrillic_SHCHA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006fe "Cyrillic_CHE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0006ff "Cyrillic_HARDSIGN" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a1 "Greek_ALPHAaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a2 "Greek_EPSILONaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a3 "Greek_ETAaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a4 "Greek_IOTAaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a5 "Greek_IOTAdieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a5 "Greek_IOTAdiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a7 "Greek_OMICRONaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a8 "Greek_UPSILONaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007a9 "Greek_UPSILONdieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ab "Greek_OMEGAaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ae "Greek_accentdieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007af "Greek_horizbar" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b1 "Greek_alphaaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b2 "Greek_epsilonaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b3 "Greek_etaaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b4 "Greek_iotaaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b5 "Greek_iotadieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b6 "Greek_iotaaccentdieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b7 "Greek_omicronaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b8 "Greek_upsilonaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007b9 "Greek_upsilondieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ba "Greek_upsilonaccentdieresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007bb "Greek_omegaaccent" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c1 "Greek_ALPHA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c2 "Greek_BETA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c3 "Greek_GAMMA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c4 "Greek_DELTA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c5 "Greek_EPSILON" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c6 "Greek_ZETA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c7 "Greek_ETA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c8 "Greek_THETA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007c9 "Greek_IOTA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ca "Greek_KAPPA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007cb "Greek_LAMBDA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007cb "Greek_LAMDA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007cc "Greek_MU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007cd "Greek_NU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ce "Greek_XI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007cf "Greek_OMICRON" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d0 "Greek_PI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d1 "Greek_RHO" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d2 "Greek_SIGMA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d4 "Greek_TAU" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d5 "Greek_UPSILON" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d6 "Greek_PHI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d7 "Greek_CHI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d8 "Greek_PSI" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007d9 "Greek_OMEGA" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e1 "Greek_alpha" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e2 "Greek_beta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e3 "Greek_gamma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e4 "Greek_delta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e5 "Greek_epsilon" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e6 "Greek_zeta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e7 "Greek_eta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e8 "Greek_theta" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007e9 "Greek_iota" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ea "Greek_kappa" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007eb "Greek_lambda" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007eb "Greek_lamda" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ec "Greek_mu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ed "Greek_nu" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ee "Greek_xi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007ef "Greek_omicron" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f0 "Greek_pi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f1 "Greek_rho" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f2 "Greek_sigma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f3 "Greek_finalsmallsigma" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f4 "Greek_tau" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f5 "Greek_upsilon" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f6 "Greek_phi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f7 "Greek_chi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f8 "Greek_psi" EEK_KEYSYM_CATEGORY_KEYNAME -0x0007f9 "Greek_omega" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a1 "leftradical" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a2 "topleftradical" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a3 "horizconnector" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a4 "topintegral" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a5 "botintegral" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a6 "vertconnector" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a7 "topleftsqbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a8 "botleftsqbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008a9 "toprightsqbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008aa "botrightsqbracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ab "topleftparens" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ac "botleftparens" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ad "toprightparens" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ae "botrightparens" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008af "leftmiddlecurlybrace" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b0 "rightmiddlecurlybrace" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b1 "topleftsummation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b2 "botleftsummation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b3 "topvertsummationconnector" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b4 "botvertsummationconnector" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b5 "toprightsummation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b6 "botrightsummation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008b7 "rightmiddlesummation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008bc "lessthanequal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008bd "notequal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008be "greaterthanequal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008bf "integral" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c0 "therefore" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c1 "variation" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c2 "infinity" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c5 "nabla" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c8 "approximate" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008c9 "similarequal" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008cd "ifonlyif" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ce "implies" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008cf "identical" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008d6 "radical" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008da "includedin" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008db "includes" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008dc "intersection" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008dd "union" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008de "logicaland" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008df "logicalor" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008ef "partialderivative" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008f6 "function" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008fb "leftarrow" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008fc "uparrow" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008fd "rightarrow" EEK_KEYSYM_CATEGORY_KEYNAME -0x0008fe "downarrow" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009df "blank" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e0 "soliddiamond" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e1 "checkerboard" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e2 "ht" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e3 "ff" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e4 "cr" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e5 "lf" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e8 "nl" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009e9 "vt" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009ea "lowrightcorner" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009eb "uprightcorner" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009ec "upleftcorner" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009ed "lowleftcorner" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009ee "crossinglines" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009ef "horizlinescan1" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f0 "horizlinescan3" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f1 "horizlinescan5" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f2 "horizlinescan7" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f3 "horizlinescan9" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f4 "leftt" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f5 "rightt" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f6 "bott" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f7 "topt" EEK_KEYSYM_CATEGORY_KEYNAME -0x0009f8 "vertbar" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa1 "emspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa2 "enspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa3 "em3space" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa4 "em4space" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa5 "digitspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa6 "punctspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa7 "thinspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa8 "hairspace" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aa9 "emdash" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aaa "endash" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aac "signifblank" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aae "ellipsis" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aaf "doubbaselinedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab0 "onethird" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab1 "twothirds" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab2 "onefifth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab3 "twofifths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab4 "threefifths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab5 "fourfifths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab6 "onesixth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab7 "fivesixths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ab8 "careof" EEK_KEYSYM_CATEGORY_KEYNAME -0x000abb "figdash" EEK_KEYSYM_CATEGORY_KEYNAME -0x000abc "leftanglebracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x000abd "decimalpoint" EEK_KEYSYM_CATEGORY_KEYNAME -0x000abe "rightanglebracket" EEK_KEYSYM_CATEGORY_KEYNAME -0x000abf "marker" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ac3 "oneeighth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ac4 "threeeighths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ac5 "fiveeighths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ac6 "seveneighths" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ac9 "trademark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aca "signaturemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000acb "trademarkincircle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000acc "leftopentriangle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000acd "rightopentriangle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ace "emopencircle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000acf "emopenrectangle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad0 "leftsinglequotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad1 "rightsinglequotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad2 "leftdoublequotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad3 "rightdoublequotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad4 "prescription" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad6 "minutes" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad7 "seconds" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ad9 "latincross" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ada "hexagram" EEK_KEYSYM_CATEGORY_KEYNAME -0x000adb "filledrectbullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000adc "filledlefttribullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000add "filledrighttribullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ade "emfilledcircle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000adf "emfilledrect" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae0 "enopencircbullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae1 "enopensquarebullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae2 "openrectbullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae3 "opentribulletup" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae4 "opentribulletdown" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae5 "openstar" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae6 "enfilledcircbullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae7 "enfilledsqbullet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae8 "filledtribulletup" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ae9 "filledtribulletdown" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aea "leftpointer" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aeb "rightpointer" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aec "club" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aed "diamond" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aee "heart" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af0 "maltesecross" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af1 "dagger" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af2 "doubledagger" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af3 "checkmark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af4 "ballotcross" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af5 "musicalsharp" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af6 "musicalflat" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af7 "malesymbol" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af8 "femalesymbol" EEK_KEYSYM_CATEGORY_KEYNAME -0x000af9 "telephone" EEK_KEYSYM_CATEGORY_KEYNAME -0x000afa "telephonerecorder" EEK_KEYSYM_CATEGORY_KEYNAME -0x000afb "phonographcopyright" EEK_KEYSYM_CATEGORY_KEYNAME -0x000afc "caret" EEK_KEYSYM_CATEGORY_KEYNAME -0x000afd "singlelowquotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000afe "doublelowquotemark" EEK_KEYSYM_CATEGORY_KEYNAME -0x000aff "cursor" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ba3 "leftcaret" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ba6 "rightcaret" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ba8 "downcaret" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ba9 "upcaret" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bc0 "overbar" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bc2 "downtack" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bc3 "upshoe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bc4 "downstile" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bc6 "underbar" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bca "jot" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bcc "quad" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bce "uptack" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bcf "circle" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bd3 "upstile" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bd6 "downshoe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bd8 "rightshoe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bda "leftshoe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bdc "lefttack" EEK_KEYSYM_CATEGORY_KEYNAME -0x000bfc "righttack" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cdf "hebrew_doublelowline" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce0 "hebrew_aleph" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce1 "hebrew_bet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce1 "hebrew_beth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce2 "hebrew_gimel" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce2 "hebrew_gimmel" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce3 "hebrew_dalet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce3 "hebrew_daleth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce4 "hebrew_he" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce5 "hebrew_waw" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce6 "hebrew_zain" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce6 "hebrew_zayin" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce7 "hebrew_chet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce7 "hebrew_het" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce8 "hebrew_tet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce8 "hebrew_teth" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ce9 "hebrew_yod" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cea "hebrew_finalkaph" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ceb "hebrew_kaph" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cec "hebrew_lamed" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ced "hebrew_finalmem" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cee "hebrew_mem" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cef "hebrew_finalnun" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf0 "hebrew_nun" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf1 "hebrew_samech" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf1 "hebrew_samekh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf2 "hebrew_ayin" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf3 "hebrew_finalpe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf4 "hebrew_pe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf5 "hebrew_finalzade" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf5 "hebrew_finalzadi" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf6 "hebrew_zade" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf6 "hebrew_zadi" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf7 "hebrew_kuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf7 "hebrew_qoph" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf8 "hebrew_resh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cf9 "hebrew_shin" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cfa "hebrew_taf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000cfa "hebrew_taw" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da1 "Thai_kokai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da2 "Thai_khokhai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da3 "Thai_khokhuat" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da4 "Thai_khokhwai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da5 "Thai_khokhon" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da6 "Thai_khorakhang" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da7 "Thai_ngongu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da8 "Thai_chochan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000da9 "Thai_choching" EEK_KEYSYM_CATEGORY_KEYNAME -0x000daa "Thai_chochang" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dab "Thai_soso" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dac "Thai_chochoe" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dad "Thai_yoying" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dae "Thai_dochada" EEK_KEYSYM_CATEGORY_KEYNAME -0x000daf "Thai_topatak" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db0 "Thai_thothan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db1 "Thai_thonangmontho" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db2 "Thai_thophuthao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db3 "Thai_nonen" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db4 "Thai_dodek" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db5 "Thai_totao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db6 "Thai_thothung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db7 "Thai_thothahan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db8 "Thai_thothong" EEK_KEYSYM_CATEGORY_KEYNAME -0x000db9 "Thai_nonu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dba "Thai_bobaimai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dbb "Thai_popla" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dbc "Thai_phophung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dbd "Thai_fofa" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dbe "Thai_phophan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dbf "Thai_fofan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc0 "Thai_phosamphao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc1 "Thai_moma" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc2 "Thai_yoyak" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc3 "Thai_rorua" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc4 "Thai_ru" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc5 "Thai_loling" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc6 "Thai_lu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc7 "Thai_wowaen" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc8 "Thai_sosala" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dc9 "Thai_sorusi" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dca "Thai_sosua" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dcb "Thai_hohip" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dcc "Thai_lochula" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dcd "Thai_oang" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dce "Thai_honokhuk" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dcf "Thai_paiyannoi" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd0 "Thai_saraa" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd1 "Thai_maihanakat" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd2 "Thai_saraaa" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd3 "Thai_saraam" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd4 "Thai_sarai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd5 "Thai_saraii" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd6 "Thai_saraue" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd7 "Thai_sarauee" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd8 "Thai_sarau" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dd9 "Thai_sarauu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dda "Thai_phinthu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dde "Thai_maihanakat_maitho" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ddf "Thai_baht" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de0 "Thai_sarae" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de1 "Thai_saraae" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de2 "Thai_sarao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de3 "Thai_saraaimaimuan" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de4 "Thai_saraaimaimalai" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de5 "Thai_lakkhangyao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de6 "Thai_maiyamok" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de7 "Thai_maitaikhu" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de8 "Thai_maiek" EEK_KEYSYM_CATEGORY_KEYNAME -0x000de9 "Thai_maitho" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dea "Thai_maitri" EEK_KEYSYM_CATEGORY_KEYNAME -0x000deb "Thai_maichattawa" EEK_KEYSYM_CATEGORY_KEYNAME -0x000dec "Thai_thanthakhat" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ded "Thai_nikhahit" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df0 "Thai_leksun" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df1 "Thai_leknung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df2 "Thai_leksong" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df3 "Thai_leksam" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df4 "Thai_leksi" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df5 "Thai_lekha" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df6 "Thai_lekhok" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df7 "Thai_lekchet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df8 "Thai_lekpaet" EEK_KEYSYM_CATEGORY_KEYNAME -0x000df9 "Thai_lekkao" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea1 "Hangul_Kiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea2 "Hangul_SsangKiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea3 "Hangul_KiyeogSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea4 "Hangul_Nieun" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea5 "Hangul_NieunJieuj" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea6 "Hangul_NieunHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea7 "Hangul_Dikeud" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea8 "Hangul_SsangDikeud" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ea9 "Hangul_Rieul" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eaa "Hangul_RieulKiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eab "Hangul_RieulMieum" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eac "Hangul_RieulPieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ead "Hangul_RieulSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eae "Hangul_RieulTieut" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eaf "Hangul_RieulPhieuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb0 "Hangul_RieulHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb1 "Hangul_Mieum" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb2 "Hangul_Pieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb3 "Hangul_SsangPieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb4 "Hangul_PieubSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb5 "Hangul_Sios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb6 "Hangul_SsangSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb7 "Hangul_Ieung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb8 "Hangul_Jieuj" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eb9 "Hangul_SsangJieuj" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eba "Hangul_Cieuc" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ebb "Hangul_Khieuq" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ebc "Hangul_Tieut" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ebd "Hangul_Phieuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ebe "Hangul_Hieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ebf "Hangul_A" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec0 "Hangul_AE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec1 "Hangul_YA" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec2 "Hangul_YAE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec3 "Hangul_EO" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec4 "Hangul_E" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec5 "Hangul_YEO" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec6 "Hangul_YE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec7 "Hangul_O" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec8 "Hangul_WA" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ec9 "Hangul_WAE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eca "Hangul_OE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ecb "Hangul_YO" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ecc "Hangul_U" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ecd "Hangul_WEO" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ece "Hangul_WE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ecf "Hangul_WI" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed0 "Hangul_YU" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed1 "Hangul_EU" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed2 "Hangul_YI" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed3 "Hangul_I" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed4 "Hangul_J_Kiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed5 "Hangul_J_SsangKiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed6 "Hangul_J_KiyeogSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed7 "Hangul_J_Nieun" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed8 "Hangul_J_NieunJieuj" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ed9 "Hangul_J_NieunHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eda "Hangul_J_Dikeud" EEK_KEYSYM_CATEGORY_KEYNAME -0x000edb "Hangul_J_Rieul" EEK_KEYSYM_CATEGORY_KEYNAME -0x000edc "Hangul_J_RieulKiyeog" EEK_KEYSYM_CATEGORY_KEYNAME -0x000edd "Hangul_J_RieulMieum" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ede "Hangul_J_RieulPieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000edf "Hangul_J_RieulSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee0 "Hangul_J_RieulTieut" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee1 "Hangul_J_RieulPhieuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee2 "Hangul_J_RieulHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee3 "Hangul_J_Mieum" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee4 "Hangul_J_Pieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee5 "Hangul_J_PieubSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee6 "Hangul_J_Sios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee7 "Hangul_J_SsangSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee8 "Hangul_J_Ieung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ee9 "Hangul_J_Jieuj" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eea "Hangul_J_Cieuc" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eeb "Hangul_J_Khieuq" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eec "Hangul_J_Tieut" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eed "Hangul_J_Phieuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eee "Hangul_J_Hieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eef "Hangul_RieulYeorinHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef0 "Hangul_SunkyeongeumMieum" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef1 "Hangul_SunkyeongeumPieub" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef2 "Hangul_PanSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef3 "Hangul_KkogjiDalrinIeung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef4 "Hangul_SunkyeongeumPhieuf" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef5 "Hangul_YeorinHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef6 "Hangul_AraeA" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef7 "Hangul_AraeAE" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef8 "Hangul_J_PanSios" EEK_KEYSYM_CATEGORY_KEYNAME -0x000ef9 "Hangul_J_KkogjiDalrinIeung" EEK_KEYSYM_CATEGORY_KEYNAME -0x000efa "Hangul_J_YeorinHieuh" EEK_KEYSYM_CATEGORY_KEYNAME -0x000eff "Korean_Won" EEK_KEYSYM_CATEGORY_KEYNAME -0x0013bc "OE" EEK_KEYSYM_CATEGORY_KEYNAME -0x0013bd "oe" EEK_KEYSYM_CATEGORY_KEYNAME -0x0013be "Ydiaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a0 "EcuSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a1 "ColonSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a2 "CruzeiroSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a3 "FFrancSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a4 "LiraSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a5 "MillSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a6 "NairaSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a7 "PesetaSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a8 "RupeeSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020a9 "WonSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020aa "NewSheqelSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020ab "DongSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x0020ac "EuroSign" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd01 "3270_Duplicate" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd02 "3270_FieldMark" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd03 "3270_Right2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd04 "3270_Left2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd05 "3270_BackTab" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd06 "3270_EraseEOF" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd07 "3270_EraseInput" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd08 "3270_Reset" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd09 "3270_Quit" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0a "3270_PA1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0b "3270_PA2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0c "3270_PA3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0d "3270_Test" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0e "3270_Attn" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd0f "3270_CursorBlink" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd10 "3270_AltCursor" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd11 "3270_KeyClick" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd12 "3270_Jump" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd13 "3270_Ident" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd14 "3270_Rule" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd15 "3270_Copy" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd16 "3270_Play" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd17 "3270_Setup" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd18 "3270_Record" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd19 "3270_ChangeScreen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd1a "3270_DeleteWord" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd1b "3270_ExSelect" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd1c "3270_CursorSelect" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd1d "3270_PrintScreen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fd1e "3270_Enter" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe01 "ISO_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe02 "ISO_Level2_Latch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe03 "ISO_Level3_Shift" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe04 "ISO_Level3_Latch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe05 "ISO_Level3_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe06 "ISO_Group_Latch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe07 "ISO_Group_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe08 "ISO_Next_Group" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe09 "ISO_Next_Group_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0a "ISO_Prev_Group" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0b "ISO_Prev_Group_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0c "ISO_First_Group" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0d "ISO_First_Group_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0e "ISO_Last_Group" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe0f "ISO_Last_Group_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe20 "ISO_Left_Tab" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe21 "ISO_Move_Line_Up" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe22 "ISO_Move_Line_Down" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe23 "ISO_Partial_Line_Up" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe24 "ISO_Partial_Line_Down" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe25 "ISO_Partial_Space_Left" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe26 "ISO_Partial_Space_Right" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe27 "ISO_Set_Margin_Left" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe28 "ISO_Set_Margin_Right" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe29 "ISO_Release_Margin_Left" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2a "ISO_Release_Margin_Right" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2b "ISO_Release_Both_Margins" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2c "ISO_Fast_Cursor_Left" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2d "ISO_Fast_Cursor_Right" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2e "ISO_Fast_Cursor_Up" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe2f "ISO_Fast_Cursor_Down" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe30 "ISO_Continuous_Underline" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe31 "ISO_Discontinuous_Underline" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe32 "ISO_Emphasize" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe33 "ISO_Center_Object" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe34 "ISO_Enter" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe50 "dead_grave" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe51 "dead_acute" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe52 "dead_circumflex" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe53 "dead_tilde" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe54 "dead_macron" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe55 "dead_breve" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe56 "dead_abovedot" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe57 "dead_diaeresis" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe58 "dead_abovering" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe59 "dead_doubleacute" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5a "dead_caron" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5b "dead_cedilla" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5c "dead_ogonek" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5d "dead_iota" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5e "dead_voiced_sound" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe5f "dead_semivoiced_sound" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe60 "dead_belowdot" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe61 "dead_hook" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe62 "dead_horn" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe70 "AccessX_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe71 "AccessX_Feedback_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe72 "RepeatKeys_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe73 "SlowKeys_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe74 "BounceKeys_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe75 "StickyKeys_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe76 "MouseKeys_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe77 "MouseKeys_Accel_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe78 "Overlay1_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe79 "Overlay2_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fe7a "AudibleBell_Enable" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fed0 "First_Virtual_Screen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fed1 "Prev_Virtual_Screen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fed2 "Next_Virtual_Screen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fed4 "Last_Virtual_Screen" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fed5 "Terminate_Server" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee0 "Pointer_Left" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee1 "Pointer_Right" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee2 "Pointer_Up" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee3 "Pointer_Down" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee4 "Pointer_UpLeft" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee5 "Pointer_UpRight" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee6 "Pointer_DownLeft" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee7 "Pointer_DownRight" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee8 "Pointer_Button_Dflt" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fee9 "Pointer_Button1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feea "Pointer_Button2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feeb "Pointer_Button3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feec "Pointer_Button4" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feed "Pointer_Button5" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feee "Pointer_DblClick_Dflt" EEK_KEYSYM_CATEGORY_KEYNAME -0x00feef "Pointer_DblClick1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef0 "Pointer_DblClick2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef1 "Pointer_DblClick3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef2 "Pointer_DblClick4" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef3 "Pointer_DblClick5" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef4 "Pointer_Drag_Dflt" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef5 "Pointer_Drag1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef6 "Pointer_Drag2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef7 "Pointer_Drag3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef8 "Pointer_Drag4" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fef9 "Pointer_EnableKeys" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fefa "Pointer_Accelerate" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fefb "Pointer_DfltBtnNext" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fefc "Pointer_DfltBtnPrev" EEK_KEYSYM_CATEGORY_KEYNAME -0x00fefd "Pointer_Drag5" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff08 "BackSpace" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff09 "Tab" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff0a "Linefeed" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff0b "Clear" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff0d "Return" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff13 "Pause" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff14 "Scroll_Lock" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff15 "Sys_Req" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff1b "Escape" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff20 "Multi_key" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff21 "Kanji" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff22 "Muhenkan" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff23 "Henkan" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff23 "Henkan_Mode" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff24 "Romaji" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff25 "Hiragana" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff26 "Katakana" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff27 "Hiragana_Katakana" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff28 "Zenkaku" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff29 "Hankaku" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2a "Zenkaku_Hankaku" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2b "Touroku" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2c "Massyo" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2d "Kana_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2e "Kana_Shift" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff2f "Eisu_Shift" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff30 "Eisu_toggle" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff31 "Hangul" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff32 "Hangul_Start" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff33 "Hangul_End" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff34 "Hangul_Hanja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff35 "Hangul_Jamo" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff36 "Hangul_Romaja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff37 "Codeinput" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff38 "Hangul_Jeonja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff39 "Hangul_Banja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3a "Hangul_PreHanja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3b "Hangul_PostHanja" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3c "SingleCandidate" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3d "MultipleCandidate" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3e "PreviousCandidate" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff3f "Hangul_Special" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff50 "Home" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff51 "Left" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff52 "Up" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff53 "Right" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff54 "Down" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff55 "Page_Up" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff55 "Prior" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff56 "Page_Down" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff56 "Next" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff57 "End" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff58 "Begin" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff60 "Select" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff61 "Print" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff62 "Execute" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff63 "Insert" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff65 "Undo" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff66 "Redo" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff67 "Menu" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff68 "Find" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff69 "Cancel" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff6a "Help" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff6b "Break" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "Arabic_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "Greek_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "Hangul_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "Hebrew_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "ISO_Group_Shift" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "Mode_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "kana_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7e "script_switch" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff7f "Num_Lock" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff80 "KP_Space" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff89 "KP_Tab" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff8d "KP_Enter" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff91 "KP_F1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff92 "KP_F2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff93 "KP_F3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff94 "KP_F4" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ff95 "KP_Home" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff96 "KP_Left" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff97 "KP_Up" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff98 "KP_Right" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff99 "KP_Down" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9a "KP_Page_Up" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9a "KP_Prior" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9b "KP_Page_Down" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9b "KP_Next" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9c "KP_End" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9d "KP_Begin" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9e "KP_Insert" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ff9f "KP_Delete" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0x00ffaa "KP_Multiply" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffab "KP_Add" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffac "KP_Separator" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffad "KP_Subtract" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffae "KP_Decimal" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffaf "KP_Divide" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb0 "KP_0" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb1 "KP_1" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb2 "KP_2" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb3 "KP_3" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb4 "KP_4" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb5 "KP_5" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb6 "KP_6" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb7 "KP_7" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb8 "KP_8" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffb9 "KP_9" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffbd "KP_Equal" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffbe "F1" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffbf "F2" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc0 "F3" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc1 "F4" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc2 "F5" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc3 "F6" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc4 "F7" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc5 "F8" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc6 "F9" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc7 "F10" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc8 "F11" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffc9 "F12" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffca "F13" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffcb "F14" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffcc "F15" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffcd "F16" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffce "F17" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffcf "F18" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd0 "F19" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd1 "F20" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd2 "F21" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd3 "F22" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd4 "F23" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd5 "F24" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd6 "F25" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd7 "F26" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd8 "F27" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffd9 "F28" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffda "F29" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffdb "F30" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffdc "F31" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffdd "F32" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffde "F33" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffdf "F34" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffe0 "F35" EEK_KEYSYM_CATEGORY_FUNCTION -0x00ffe1 "Shift_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe2 "Shift_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe3 "Control_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe4 "Control_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe5 "Caps_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe6 "Shift_Lock" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe7 "Meta_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe8 "Meta_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffe9 "Alt_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffea "Alt_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffeb "Super_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffec "Super_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffed "Hyper_L" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffee "Hyper_R" EEK_KEYSYM_CATEGORY_KEYNAME -0x00ffff "Delete" EEK_KEYSYM_CATEGORY_KEYNAME # 1 -0xffffff "VoidSymbol" EEK_KEYSYM_CATEGORY_KEYNAME diff --git a/eek/special-keysym-entries.txt b/eek/special-keysym-entries.txt index 7947de4a..6721f3c9 100644 --- a/eek/special-keysym-entries.txt +++ b/eek/special-keysym-entries.txt @@ -1,31 +1,31 @@ -0x20 "" EEK_KEYSYM_CATEGORY_LETTER -0x8A3 "horiz\nconn" EEK_KEYSYM_CATEGORY_LETTER -0xFE50 "ˋ" EEK_KEYSYM_CATEGORY_LETTER -0xFE51 "ˊ" EEK_KEYSYM_CATEGORY_LETTER -0xFE52 "ˆ" EEK_KEYSYM_CATEGORY_LETTER -0xFE53 "~" EEK_KEYSYM_CATEGORY_LETTER -0xFE54 "ˉ" EEK_KEYSYM_CATEGORY_LETTER -0xFE55 "˘" EEK_KEYSYM_CATEGORY_LETTER -0xFE56 "˙" EEK_KEYSYM_CATEGORY_LETTER -0xFE57 "¨" EEK_KEYSYM_CATEGORY_LETTER -0xFE58 "˚" EEK_KEYSYM_CATEGORY_LETTER -0xFE59 "˝" EEK_KEYSYM_CATEGORY_LETTER -0xFE5A "ˇ" EEK_KEYSYM_CATEGORY_LETTER -0xFE5B "¸" EEK_KEYSYM_CATEGORY_LETTER -0xFE5C "˛" EEK_KEYSYM_CATEGORY_LETTER -0xFF14 "Scroll\nLock" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF20 "Compose" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF55 "Page\nUp" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF56 "Page\nDown" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF7E "AltGr" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF7F "Num\nLock" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF8D "Enter" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF95 "Home" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF96 "Left" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF97 "Up" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF98 "Right" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF99 "Down" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF9C "End" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF9D "Begin" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF9E "Ins" EEK_KEYSYM_CATEGORY_FUNCTION -0xFF9F "Del" EEK_KEYSYM_CATEGORY_FUNCTION +0x20 "" EEK_SYMBOL_CATEGORY_LETTER +0x8A3 "horiz\nconn" EEK_SYMBOL_CATEGORY_LETTER +0xFE50 "ˋ" EEK_SYMBOL_CATEGORY_LETTER +0xFE51 "ˊ" EEK_SYMBOL_CATEGORY_LETTER +0xFE52 "ˆ" EEK_SYMBOL_CATEGORY_LETTER +0xFE53 "~" EEK_SYMBOL_CATEGORY_LETTER +0xFE54 "ˉ" EEK_SYMBOL_CATEGORY_LETTER +0xFE55 "˘" EEK_SYMBOL_CATEGORY_LETTER +0xFE56 "˙" EEK_SYMBOL_CATEGORY_LETTER +0xFE57 "¨" EEK_SYMBOL_CATEGORY_LETTER +0xFE58 "˚" EEK_SYMBOL_CATEGORY_LETTER +0xFE59 "˝" EEK_SYMBOL_CATEGORY_LETTER +0xFE5A "ˇ" EEK_SYMBOL_CATEGORY_LETTER +0xFE5B "¸" EEK_SYMBOL_CATEGORY_LETTER +0xFE5C "˛" EEK_SYMBOL_CATEGORY_LETTER +0xFF14 "Scroll\nLock" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF20 "Compose" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF55 "Page\nUp" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF56 "Page\nDown" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF7E "AltGr" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF7F "Num\nLock" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF8D "Enter" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF95 "Home" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF96 "Left" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF97 "Up" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF98 "Right" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF99 "Down" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF9C "End" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF9D "Begin" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF9E "Ins" EEK_SYMBOL_CATEGORY_FUNCTION +0xFF9F "Del" EEK_SYMBOL_CATEGORY_FUNCTION diff --git a/eek/unicode-keysym-entries.txt b/eek/unicode-keysym-entries.txt index a2b84a59..bf8ef169 100644 --- a/eek/unicode-keysym-entries.txt +++ b/eek/unicode-keysym-entries.txt @@ -13,404 +13,404 @@ # benefit of doing so is smallish. It would save about ~1000 bytes # total. -0x01a1 "Ą" EEK_KEYSYM_CATEGORY_LETTER # Aogonek Ą LATIN CAPITAL LETTER A WITH OGONEK -0x01a2 "˘" EEK_KEYSYM_CATEGORY_LETTER # breve ˘ BREVE -0x01a3 "Ł" EEK_KEYSYM_CATEGORY_LETTER # Lstroke Ł LATIN CAPITAL LETTER L WITH STROKE -0x01a5 "Ľ" EEK_KEYSYM_CATEGORY_LETTER # Lcaron Ľ LATIN CAPITAL LETTER L WITH CARON -0x01a6 "Ś" EEK_KEYSYM_CATEGORY_LETTER # Sacute Ś LATIN CAPITAL LETTER S WITH ACUTE -0x01a9 "Š" EEK_KEYSYM_CATEGORY_LETTER # Scaron Š LATIN CAPITAL LETTER S WITH CARON -0x01aa "Ş" EEK_KEYSYM_CATEGORY_LETTER # Scedilla Ş LATIN CAPITAL LETTER S WITH CEDILLA -0x01ab "Ť" EEK_KEYSYM_CATEGORY_LETTER # Tcaron Ť LATIN CAPITAL LETTER T WITH CARON -0x01ac "Ź" EEK_KEYSYM_CATEGORY_LETTER # Zacute Ź LATIN CAPITAL LETTER Z WITH ACUTE -0x01ae "Ž" EEK_KEYSYM_CATEGORY_LETTER # Zcaron Ž LATIN CAPITAL LETTER Z WITH CARON -0x01af "Ż" EEK_KEYSYM_CATEGORY_LETTER # Zabovedot Ż LATIN CAPITAL LETTER Z WITH DOT ABOVE -0x01b1 "ą" EEK_KEYSYM_CATEGORY_LETTER # aogonek ą LATIN SMALL LETTER A WITH OGONEK -0x01b2 "˛" EEK_KEYSYM_CATEGORY_LETTER # ogonek ˛ OGONEK -0x01b3 "ł" EEK_KEYSYM_CATEGORY_LETTER # lstroke ł LATIN SMALL LETTER L WITH STROKE -0x01b5 "ľ" EEK_KEYSYM_CATEGORY_LETTER # lcaron ľ LATIN SMALL LETTER L WITH CARON -0x01b6 "ś" EEK_KEYSYM_CATEGORY_LETTER # sacute ś LATIN SMALL LETTER S WITH ACUTE -0x01b7 "ˇ" EEK_KEYSYM_CATEGORY_LETTER # caron ˇ CARON -0x01b9 "š" EEK_KEYSYM_CATEGORY_LETTER # scaron š LATIN SMALL LETTER S WITH CARON -0x01ba "ş" EEK_KEYSYM_CATEGORY_LETTER # scedilla ş LATIN SMALL LETTER S WITH CEDILLA -0x01bb "ť" EEK_KEYSYM_CATEGORY_LETTER # tcaron ť LATIN SMALL LETTER T WITH CARON -0x01bc "ź" EEK_KEYSYM_CATEGORY_LETTER # zacute ź LATIN SMALL LETTER Z WITH ACUTE -0x01bd "˝" EEK_KEYSYM_CATEGORY_LETTER # doubleacute ˝ DOUBLE ACUTE ACCENT -0x01be "ž" EEK_KEYSYM_CATEGORY_LETTER # zcaron ž LATIN SMALL LETTER Z WITH CARON -0x01bf "ż" EEK_KEYSYM_CATEGORY_LETTER # zabovedot ż LATIN SMALL LETTER Z WITH DOT ABOVE -0x01c0 "Ŕ" EEK_KEYSYM_CATEGORY_LETTER # Racute Ŕ LATIN CAPITAL LETTER R WITH ACUTE -0x01c3 "Ă" EEK_KEYSYM_CATEGORY_LETTER # Abreve Ă LATIN CAPITAL LETTER A WITH BREVE -0x01c5 "Ĺ" EEK_KEYSYM_CATEGORY_LETTER # Lacute Ĺ LATIN CAPITAL LETTER L WITH ACUTE -0x01c6 "Ć" EEK_KEYSYM_CATEGORY_LETTER # Cacute Ć LATIN CAPITAL LETTER C WITH ACUTE -0x01c8 "Č" EEK_KEYSYM_CATEGORY_LETTER # Ccaron Č LATIN CAPITAL LETTER C WITH CARON -0x01ca "Ę" EEK_KEYSYM_CATEGORY_LETTER # Eogonek Ę LATIN CAPITAL LETTER E WITH OGONEK -0x01cc "Ě" EEK_KEYSYM_CATEGORY_LETTER # Ecaron Ě LATIN CAPITAL LETTER E WITH CARON -0x01cf "Ď" EEK_KEYSYM_CATEGORY_LETTER # Dcaron Ď LATIN CAPITAL LETTER D WITH CARON -0x01d0 "Đ" EEK_KEYSYM_CATEGORY_LETTER # Dstroke Đ LATIN CAPITAL LETTER D WITH STROKE -0x01d1 "Ń" EEK_KEYSYM_CATEGORY_LETTER # Nacute Ń LATIN CAPITAL LETTER N WITH ACUTE -0x01d2 "Ň" EEK_KEYSYM_CATEGORY_LETTER # Ncaron Ň LATIN CAPITAL LETTER N WITH CARON -0x01d5 "Ő" EEK_KEYSYM_CATEGORY_LETTER # Odoubleacute Ő LATIN CAPITAL LETTER O WITH DOUBLE ACUTE -0x01d8 "Ř" EEK_KEYSYM_CATEGORY_LETTER # Rcaron Ř LATIN CAPITAL LETTER R WITH CARON -0x01d9 "Ů" EEK_KEYSYM_CATEGORY_LETTER # Uring Ů LATIN CAPITAL LETTER U WITH RING ABOVE -0x01db "Ű" EEK_KEYSYM_CATEGORY_LETTER # Udoubleacute Ű LATIN CAPITAL LETTER U WITH DOUBLE ACUTE -0x01de "Ţ" EEK_KEYSYM_CATEGORY_LETTER # Tcedilla Ţ LATIN CAPITAL LETTER T WITH CEDILLA -0x01e0 "ŕ" EEK_KEYSYM_CATEGORY_LETTER # racute ŕ LATIN SMALL LETTER R WITH ACUTE -0x01e3 "ă" EEK_KEYSYM_CATEGORY_LETTER # abreve ă LATIN SMALL LETTER A WITH BREVE -0x01e5 "ĺ" EEK_KEYSYM_CATEGORY_LETTER # lacute ĺ LATIN SMALL LETTER L WITH ACUTE -0x01e6 "ć" EEK_KEYSYM_CATEGORY_LETTER # cacute ć LATIN SMALL LETTER C WITH ACUTE -0x01e8 "č" EEK_KEYSYM_CATEGORY_LETTER # ccaron č LATIN SMALL LETTER C WITH CARON -0x01ea "ę" EEK_KEYSYM_CATEGORY_LETTER # eogonek ę LATIN SMALL LETTER E WITH OGONEK -0x01ec "ě" EEK_KEYSYM_CATEGORY_LETTER # ecaron ě LATIN SMALL LETTER E WITH CARON -0x01ef "ď" EEK_KEYSYM_CATEGORY_LETTER # dcaron ď LATIN SMALL LETTER D WITH CARON -0x01f0 "đ" EEK_KEYSYM_CATEGORY_LETTER # dstroke đ LATIN SMALL LETTER D WITH STROKE -0x01f1 "ń" EEK_KEYSYM_CATEGORY_LETTER # nacute ń LATIN SMALL LETTER N WITH ACUTE -0x01f2 "ň" EEK_KEYSYM_CATEGORY_LETTER # ncaron ň LATIN SMALL LETTER N WITH CARON -0x01f5 "ő" EEK_KEYSYM_CATEGORY_LETTER # odoubleacute ő LATIN SMALL LETTER O WITH DOUBLE ACUTE -0x01f8 "ř" EEK_KEYSYM_CATEGORY_LETTER # rcaron ř LATIN SMALL LETTER R WITH CARON -0x01f9 "ů" EEK_KEYSYM_CATEGORY_LETTER # uring ů LATIN SMALL LETTER U WITH RING ABOVE -0x01fb "ű" EEK_KEYSYM_CATEGORY_LETTER # udoubleacute ű LATIN SMALL LETTER U WITH DOUBLE ACUTE -0x01fe "ţ" EEK_KEYSYM_CATEGORY_LETTER # tcedilla ţ LATIN SMALL LETTER T WITH CEDILLA -0x01ff "˙" EEK_KEYSYM_CATEGORY_LETTER # abovedot ˙ DOT ABOVE -0x02a1 "Ħ" EEK_KEYSYM_CATEGORY_LETTER # Hstroke Ħ LATIN CAPITAL LETTER H WITH STROKE -0x02a6 "Ĥ" EEK_KEYSYM_CATEGORY_LETTER # Hcircumflex Ĥ LATIN CAPITAL LETTER H WITH CIRCUMFLEX -0x02a9 "İ" EEK_KEYSYM_CATEGORY_LETTER # Iabovedot İ LATIN CAPITAL LETTER I WITH DOT ABOVE -0x02ab "Ğ" EEK_KEYSYM_CATEGORY_LETTER # Gbreve Ğ LATIN CAPITAL LETTER G WITH BREVE -0x02ac "Ĵ" EEK_KEYSYM_CATEGORY_LETTER # Jcircumflex Ĵ LATIN CAPITAL LETTER J WITH CIRCUMFLEX -0x02b1 "ħ" EEK_KEYSYM_CATEGORY_LETTER # hstroke ħ LATIN SMALL LETTER H WITH STROKE -0x02b6 "ĥ" EEK_KEYSYM_CATEGORY_LETTER # hcircumflex ĥ LATIN SMALL LETTER H WITH CIRCUMFLEX -0x02b9 "ı" EEK_KEYSYM_CATEGORY_LETTER # idotless ı LATIN SMALL LETTER DOTLESS I -0x02bb "ğ" EEK_KEYSYM_CATEGORY_LETTER # gbreve ğ LATIN SMALL LETTER G WITH BREVE -0x02bc "ĵ" EEK_KEYSYM_CATEGORY_LETTER # jcircumflex ĵ LATIN SMALL LETTER J WITH CIRCUMFLEX -0x02c5 "Ċ" EEK_KEYSYM_CATEGORY_LETTER # Cabovedot Ċ LATIN CAPITAL LETTER C WITH DOT ABOVE -0x02c6 "Ĉ" EEK_KEYSYM_CATEGORY_LETTER # Ccircumflex Ĉ LATIN CAPITAL LETTER C WITH CIRCUMFLEX -0x02d5 "Ġ" EEK_KEYSYM_CATEGORY_LETTER # Gabovedot Ġ LATIN CAPITAL LETTER G WITH DOT ABOVE -0x02d8 "Ĝ" EEK_KEYSYM_CATEGORY_LETTER # Gcircumflex Ĝ LATIN CAPITAL LETTER G WITH CIRCUMFLEX -0x02dd "Ŭ" EEK_KEYSYM_CATEGORY_LETTER # Ubreve Ŭ LATIN CAPITAL LETTER U WITH BREVE -0x02de "Ŝ" EEK_KEYSYM_CATEGORY_LETTER # Scircumflex Ŝ LATIN CAPITAL LETTER S WITH CIRCUMFLEX -0x02e5 "ċ" EEK_KEYSYM_CATEGORY_LETTER # cabovedot ċ LATIN SMALL LETTER C WITH DOT ABOVE -0x02e6 "ĉ" EEK_KEYSYM_CATEGORY_LETTER # ccircumflex ĉ LATIN SMALL LETTER C WITH CIRCUMFLEX -0x02f5 "ġ" EEK_KEYSYM_CATEGORY_LETTER # gabovedot ġ LATIN SMALL LETTER G WITH DOT ABOVE -0x02f8 "ĝ" EEK_KEYSYM_CATEGORY_LETTER # gcircumflex ĝ LATIN SMALL LETTER G WITH CIRCUMFLEX -0x02fd "ŭ" EEK_KEYSYM_CATEGORY_LETTER # ubreve ŭ LATIN SMALL LETTER U WITH BREVE -0x02fe "ŝ" EEK_KEYSYM_CATEGORY_LETTER # scircumflex ŝ LATIN SMALL LETTER S WITH CIRCUMFLEX -0x03a2 "ĸ" EEK_KEYSYM_CATEGORY_LETTER # kra ĸ LATIN SMALL LETTER KRA -0x03a3 "Ŗ" EEK_KEYSYM_CATEGORY_LETTER # Rcedilla Ŗ LATIN CAPITAL LETTER R WITH CEDILLA -0x03a5 "Ĩ" EEK_KEYSYM_CATEGORY_LETTER # Itilde Ĩ LATIN CAPITAL LETTER I WITH TILDE -0x03a6 "Ļ" EEK_KEYSYM_CATEGORY_LETTER # Lcedilla Ļ LATIN CAPITAL LETTER L WITH CEDILLA -0x03aa "Ē" EEK_KEYSYM_CATEGORY_LETTER # Emacron Ē LATIN CAPITAL LETTER E WITH MACRON -0x03ab "Ģ" EEK_KEYSYM_CATEGORY_LETTER # Gcedilla Ģ LATIN CAPITAL LETTER G WITH CEDILLA -0x03ac "Ŧ" EEK_KEYSYM_CATEGORY_LETTER # Tslash Ŧ LATIN CAPITAL LETTER T WITH STROKE -0x03b3 "ŗ" EEK_KEYSYM_CATEGORY_LETTER # rcedilla ŗ LATIN SMALL LETTER R WITH CEDILLA -0x03b5 "ĩ" EEK_KEYSYM_CATEGORY_LETTER # itilde ĩ LATIN SMALL LETTER I WITH TILDE -0x03b6 "ļ" EEK_KEYSYM_CATEGORY_LETTER # lcedilla ļ LATIN SMALL LETTER L WITH CEDILLA -0x03ba "ē" EEK_KEYSYM_CATEGORY_LETTER # emacron ē LATIN SMALL LETTER E WITH MACRON -0x03bb "ģ" EEK_KEYSYM_CATEGORY_LETTER # gcedilla ģ LATIN SMALL LETTER G WITH CEDILLA -0x03bc "ŧ" EEK_KEYSYM_CATEGORY_LETTER # tslash ŧ LATIN SMALL LETTER T WITH STROKE -0x03bd "Ŋ" EEK_KEYSYM_CATEGORY_LETTER # ENG Ŋ LATIN CAPITAL LETTER ENG -0x03bf "ŋ" EEK_KEYSYM_CATEGORY_LETTER # eng ŋ LATIN SMALL LETTER ENG -0x03c0 "Ā" EEK_KEYSYM_CATEGORY_LETTER # Amacron Ā LATIN CAPITAL LETTER A WITH MACRON -0x03c7 "Į" EEK_KEYSYM_CATEGORY_LETTER # Iogonek Į LATIN CAPITAL LETTER I WITH OGONEK -0x03cc "Ė" EEK_KEYSYM_CATEGORY_LETTER # Eabovedot Ė LATIN CAPITAL LETTER E WITH DOT ABOVE -0x03cf "Ī" EEK_KEYSYM_CATEGORY_LETTER # Imacron Ī LATIN CAPITAL LETTER I WITH MACRON -0x03d1 "Ņ" EEK_KEYSYM_CATEGORY_LETTER # Ncedilla Ņ LATIN CAPITAL LETTER N WITH CEDILLA -0x03d2 "Ō" EEK_KEYSYM_CATEGORY_LETTER # Omacron Ō LATIN CAPITAL LETTER O WITH MACRON -0x03d3 "Ķ" EEK_KEYSYM_CATEGORY_LETTER # Kcedilla Ķ LATIN CAPITAL LETTER K WITH CEDILLA -0x03d9 "Ų" EEK_KEYSYM_CATEGORY_LETTER # Uogonek Ų LATIN CAPITAL LETTER U WITH OGONEK -0x03dd "Ũ" EEK_KEYSYM_CATEGORY_LETTER # Utilde Ũ LATIN CAPITAL LETTER U WITH TILDE -0x03de "Ū" EEK_KEYSYM_CATEGORY_LETTER # Umacron Ū LATIN CAPITAL LETTER U WITH MACRON -0x03e0 "ā" EEK_KEYSYM_CATEGORY_LETTER # amacron ā LATIN SMALL LETTER A WITH MACRON -0x03e7 "į" EEK_KEYSYM_CATEGORY_LETTER # iogonek į LATIN SMALL LETTER I WITH OGONEK -0x03ec "ė" EEK_KEYSYM_CATEGORY_LETTER # eabovedot ė LATIN SMALL LETTER E WITH DOT ABOVE -0x03ef "ī" EEK_KEYSYM_CATEGORY_LETTER # imacron ī LATIN SMALL LETTER I WITH MACRON -0x03f1 "ņ" EEK_KEYSYM_CATEGORY_LETTER # ncedilla ņ LATIN SMALL LETTER N WITH CEDILLA -0x03f2 "ō" EEK_KEYSYM_CATEGORY_LETTER # omacron ō LATIN SMALL LETTER O WITH MACRON -0x03f3 "ķ" EEK_KEYSYM_CATEGORY_LETTER # kcedilla ķ LATIN SMALL LETTER K WITH CEDILLA -0x03f9 "ų" EEK_KEYSYM_CATEGORY_LETTER # uogonek ų LATIN SMALL LETTER U WITH OGONEK -0x03fd "ũ" EEK_KEYSYM_CATEGORY_LETTER # utilde ũ LATIN SMALL LETTER U WITH TILDE -0x03fe "ū" EEK_KEYSYM_CATEGORY_LETTER # umacron ū LATIN SMALL LETTER U WITH MACRON -0x047e "‾" EEK_KEYSYM_CATEGORY_LETTER # overline ‾ OVERLINE -0x04a1 "。" EEK_KEYSYM_CATEGORY_LETTER # kana_fullstop 。 IDEOGRAPHIC FULL STOP -0x04a2 "「" EEK_KEYSYM_CATEGORY_LETTER # kana_openingbracket 「 LEFT CORNER BRACKET -0x04a3 "」" EEK_KEYSYM_CATEGORY_LETTER # kana_closingbracket 」 RIGHT CORNER BRACKET -0x04a4 "、" EEK_KEYSYM_CATEGORY_LETTER # kana_comma 、 IDEOGRAPHIC COMMA -0x04a5 "・" EEK_KEYSYM_CATEGORY_LETTER # kana_conjunctive ・ KATAKANA MIDDLE DOT -0x04a6 "ヲ" EEK_KEYSYM_CATEGORY_LETTER # kana_WO ヲ KATAKANA LETTER WO -0x04a7 "ァ" EEK_KEYSYM_CATEGORY_LETTER # kana_a ァ KATAKANA LETTER SMALL A -0x04a8 "ィ" EEK_KEYSYM_CATEGORY_LETTER # kana_i ィ KATAKANA LETTER SMALL I -0x04a9 "ゥ" EEK_KEYSYM_CATEGORY_LETTER # kana_u ゥ KATAKANA LETTER SMALL U -0x04aa "ェ" EEK_KEYSYM_CATEGORY_LETTER # kana_e ェ KATAKANA LETTER SMALL E -0x04ab "ォ" EEK_KEYSYM_CATEGORY_LETTER # kana_o ォ KATAKANA LETTER SMALL O -0x04ac "ャ" EEK_KEYSYM_CATEGORY_LETTER # kana_ya ャ KATAKANA LETTER SMALL YA -0x04ad "ュ" EEK_KEYSYM_CATEGORY_LETTER # kana_yu ュ KATAKANA LETTER SMALL YU -0x04ae "ョ" EEK_KEYSYM_CATEGORY_LETTER # kana_yo ョ KATAKANA LETTER SMALL YO -0x04af "ッ" EEK_KEYSYM_CATEGORY_LETTER # kana_tsu ッ KATAKANA LETTER SMALL TU -0x04b0 "ー" EEK_KEYSYM_CATEGORY_LETTER # prolongedsound ー KATAKANA-HIRAGANA PROLONGED SOUND MARK -0x04b1 "ア" EEK_KEYSYM_CATEGORY_LETTER # kana_A ア KATAKANA LETTER A -0x04b2 "イ" EEK_KEYSYM_CATEGORY_LETTER # kana_I イ KATAKANA LETTER I -0x04b3 "ウ" EEK_KEYSYM_CATEGORY_LETTER # kana_U ウ KATAKANA LETTER U -0x04b4 "エ" EEK_KEYSYM_CATEGORY_LETTER # kana_E エ KATAKANA LETTER E -0x04b5 "オ" EEK_KEYSYM_CATEGORY_LETTER # kana_O オ KATAKANA LETTER O -0x04b6 "カ" EEK_KEYSYM_CATEGORY_LETTER # kana_KA カ KATAKANA LETTER KA -0x04b7 "キ" EEK_KEYSYM_CATEGORY_LETTER # kana_KI キ KATAKANA LETTER KI -0x04b8 "ク" EEK_KEYSYM_CATEGORY_LETTER # kana_KU ク KATAKANA LETTER KU -0x04b9 "ケ" EEK_KEYSYM_CATEGORY_LETTER # kana_KE ケ KATAKANA LETTER KE -0x04ba "コ" EEK_KEYSYM_CATEGORY_LETTER # kana_KO コ KATAKANA LETTER KO -0x04bb "サ" EEK_KEYSYM_CATEGORY_LETTER # kana_SA サ KATAKANA LETTER SA -0x04bc "シ" EEK_KEYSYM_CATEGORY_LETTER # kana_SHI シ KATAKANA LETTER SI -0x04bd "ス" EEK_KEYSYM_CATEGORY_LETTER # kana_SU ス KATAKANA LETTER SU -0x04be "セ" EEK_KEYSYM_CATEGORY_LETTER # kana_SE セ KATAKANA LETTER SE -0x04bf "ソ" EEK_KEYSYM_CATEGORY_LETTER # kana_SO ソ KATAKANA LETTER SO -0x04c0 "タ" EEK_KEYSYM_CATEGORY_LETTER # kana_TA タ KATAKANA LETTER TA -0x04c1 "チ" EEK_KEYSYM_CATEGORY_LETTER # kana_CHI チ KATAKANA LETTER TI -0x04c2 "ツ" EEK_KEYSYM_CATEGORY_LETTER # kana_TSU ツ KATAKANA LETTER TU -0x04c3 "テ" EEK_KEYSYM_CATEGORY_LETTER # kana_TE テ KATAKANA LETTER TE -0x04c4 "ト" EEK_KEYSYM_CATEGORY_LETTER # kana_TO ト KATAKANA LETTER TO -0x04c5 "ナ" EEK_KEYSYM_CATEGORY_LETTER # kana_NA ナ KATAKANA LETTER NA -0x04c6 "ニ" EEK_KEYSYM_CATEGORY_LETTER # kana_NI ニ KATAKANA LETTER NI -0x04c7 "ヌ" EEK_KEYSYM_CATEGORY_LETTER # kana_NU ヌ KATAKANA LETTER NU -0x04c8 "ネ" EEK_KEYSYM_CATEGORY_LETTER # kana_NE ネ KATAKANA LETTER NE -0x04c9 "ノ" EEK_KEYSYM_CATEGORY_LETTER # kana_NO ノ KATAKANA LETTER NO -0x04ca "ハ" EEK_KEYSYM_CATEGORY_LETTER # kana_HA ハ KATAKANA LETTER HA -0x04cb "ヒ" EEK_KEYSYM_CATEGORY_LETTER # kana_HI ヒ KATAKANA LETTER HI -0x04cc "フ" EEK_KEYSYM_CATEGORY_LETTER # kana_FU フ KATAKANA LETTER HU -0x04cd "ヘ" EEK_KEYSYM_CATEGORY_LETTER # kana_HE ヘ KATAKANA LETTER HE -0x04ce "ホ" EEK_KEYSYM_CATEGORY_LETTER # kana_HO ホ KATAKANA LETTER HO -0x04cf "マ" EEK_KEYSYM_CATEGORY_LETTER # kana_MA マ KATAKANA LETTER MA -0x04d0 "ミ" EEK_KEYSYM_CATEGORY_LETTER # kana_MI ミ KATAKANA LETTER MI -0x04d1 "ム" EEK_KEYSYM_CATEGORY_LETTER # kana_MU ム KATAKANA LETTER MU -0x04d2 "メ" EEK_KEYSYM_CATEGORY_LETTER # kana_ME メ KATAKANA LETTER ME -0x04d3 "モ" EEK_KEYSYM_CATEGORY_LETTER # kana_MO モ KATAKANA LETTER MO -0x04d4 "ヤ" EEK_KEYSYM_CATEGORY_LETTER # kana_YA ヤ KATAKANA LETTER YA -0x04d5 "ユ" EEK_KEYSYM_CATEGORY_LETTER # kana_YU ユ KATAKANA LETTER YU -0x04d6 "ヨ" EEK_KEYSYM_CATEGORY_LETTER # kana_YO ヨ KATAKANA LETTER YO -0x04d7 "ラ" EEK_KEYSYM_CATEGORY_LETTER # kana_RA ラ KATAKANA LETTER RA -0x04d8 "リ" EEK_KEYSYM_CATEGORY_LETTER # kana_RI リ KATAKANA LETTER RI -0x04d9 "ル" EEK_KEYSYM_CATEGORY_LETTER # kana_RU ル KATAKANA LETTER RU -0x04da "レ" EEK_KEYSYM_CATEGORY_LETTER # kana_RE レ KATAKANA LETTER RE -0x04db "ロ" EEK_KEYSYM_CATEGORY_LETTER # kana_RO ロ KATAKANA LETTER RO -0x04dc "ワ" EEK_KEYSYM_CATEGORY_LETTER # kana_WA ワ KATAKANA LETTER WA -0x04dd "ン" EEK_KEYSYM_CATEGORY_LETTER # kana_N ン KATAKANA LETTER N -0x04de "゛" EEK_KEYSYM_CATEGORY_LETTER # voicedsound ゛ KATAKANA-HIRAGANA VOICED SOUND MARK -0x04df "゜" EEK_KEYSYM_CATEGORY_LETTER # semivoicedsound ゜ KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK -0x05ac "،" EEK_KEYSYM_CATEGORY_LETTER # Arabic_comma ، ARABIC COMMA -0x05bb "؛" EEK_KEYSYM_CATEGORY_LETTER # Arabic_semicolon ؛ ARABIC SEMICOLON -0x05bf "؟" EEK_KEYSYM_CATEGORY_LETTER # Arabic_question_mark ؟ ARABIC QUESTION MARK -0x05c1 "ء" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hamza ء ARABIC LETTER HAMZA -0x05c2 "آ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_maddaonalef آ ARABIC LETTER ALEF WITH MADDA ABOVE -0x05c3 "أ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hamzaonalef أ ARABIC LETTER ALEF WITH HAMZA ABOVE -0x05c4 "ؤ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hamzaonwaw ؤ ARABIC LETTER WAW WITH HAMZA ABOVE -0x05c5 "إ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hamzaunderalef إ ARABIC LETTER ALEF WITH HAMZA BELOW -0x05c6 "ئ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hamzaonyeh ئ ARABIC LETTER YEH WITH HAMZA ABOVE -0x05c7 "ا" EEK_KEYSYM_CATEGORY_LETTER # Arabic_alef ا ARABIC LETTER ALEF -0x05c8 "ب" EEK_KEYSYM_CATEGORY_LETTER # Arabic_beh ب ARABIC LETTER BEH -0x05c9 "ة" EEK_KEYSYM_CATEGORY_LETTER # Arabic_tehmarbuta ة ARABIC LETTER TEH MARBUTA -0x05ca "ت" EEK_KEYSYM_CATEGORY_LETTER # Arabic_teh ت ARABIC LETTER TEH -0x05cb "ث" EEK_KEYSYM_CATEGORY_LETTER # Arabic_theh ث ARABIC LETTER THEH -0x05cc "ج" EEK_KEYSYM_CATEGORY_LETTER # Arabic_jeem ج ARABIC LETTER JEEM -0x05cd "ح" EEK_KEYSYM_CATEGORY_LETTER # Arabic_hah ح ARABIC LETTER HAH -0x05ce "خ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_khah خ ARABIC LETTER KHAH -0x05cf "د" EEK_KEYSYM_CATEGORY_LETTER # Arabic_dal د ARABIC LETTER DAL -0x05d0 "ذ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_thal ذ ARABIC LETTER THAL -0x05d1 "ر" EEK_KEYSYM_CATEGORY_LETTER # Arabic_ra ر ARABIC LETTER REH -0x05d2 "ز" EEK_KEYSYM_CATEGORY_LETTER # Arabic_zain ز ARABIC LETTER ZAIN -0x05d3 "س" EEK_KEYSYM_CATEGORY_LETTER # Arabic_seen س ARABIC LETTER SEEN -0x05d4 "ش" EEK_KEYSYM_CATEGORY_LETTER # Arabic_sheen ش ARABIC LETTER SHEEN -0x05d5 "ص" EEK_KEYSYM_CATEGORY_LETTER # Arabic_sad ص ARABIC LETTER SAD -0x05d6 "ض" EEK_KEYSYM_CATEGORY_LETTER # Arabic_dad ض ARABIC LETTER DAD -0x05d7 "ط" EEK_KEYSYM_CATEGORY_LETTER # Arabic_tah ط ARABIC LETTER TAH -0x05d8 "ظ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_zah ظ ARABIC LETTER ZAH -0x05d9 "ع" EEK_KEYSYM_CATEGORY_LETTER # Arabic_ain ع ARABIC LETTER AIN -0x05da "غ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_ghain غ ARABIC LETTER GHAIN -0x05e0 "ـ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_tatweel ـ ARABIC TATWEEL -0x05e1 "ف" EEK_KEYSYM_CATEGORY_LETTER # Arabic_feh ف ARABIC LETTER FEH -0x05e2 "ق" EEK_KEYSYM_CATEGORY_LETTER # Arabic_qaf ق ARABIC LETTER QAF -0x05e3 "ك" EEK_KEYSYM_CATEGORY_LETTER # Arabic_kaf ك ARABIC LETTER KAF -0x05e4 "ل" EEK_KEYSYM_CATEGORY_LETTER # Arabic_lam ل ARABIC LETTER LAM -0x05e5 "م" EEK_KEYSYM_CATEGORY_LETTER # Arabic_meem م ARABIC LETTER MEEM -0x05e6 "ن" EEK_KEYSYM_CATEGORY_LETTER # Arabic_noon ن ARABIC LETTER NOON -0x05e7 "ه" EEK_KEYSYM_CATEGORY_LETTER # Arabic_ha ه ARABIC LETTER HEH -0x05e8 "و" EEK_KEYSYM_CATEGORY_LETTER # Arabic_waw و ARABIC LETTER WAW -0x05e9 "ى" EEK_KEYSYM_CATEGORY_LETTER # Arabic_alefmaksura ى ARABIC LETTER ALEF MAKSURA -0x05ea "ي" EEK_KEYSYM_CATEGORY_LETTER # Arabic_yeh ي ARABIC LETTER YEH -0x05eb "ً" EEK_KEYSYM_CATEGORY_LETTER # Arabic_fathatan ً ARABIC FATHATAN -0x05ec "ٌ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_dammatan ٌ ARABIC DAMMATAN -0x05ed "ٍ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_kasratan ٍ ARABIC KASRATAN -0x05ee "َ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_fatha َ ARABIC FATHA -0x05ef "ُ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_damma ُ ARABIC DAMMA -0x05f0 "ِ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_kasra ِ ARABIC KASRA -0x05f1 "ّ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_shadda ّ ARABIC SHADDA -0x05f2 "ْ" EEK_KEYSYM_CATEGORY_LETTER # Arabic_sukun ْ ARABIC SUKUN -0x06a1 "ђ" EEK_KEYSYM_CATEGORY_LETTER # Serbian_dje ђ CYRILLIC SMALL LETTER DJE -0x06a2 "ѓ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_gje ѓ CYRILLIC SMALL LETTER GJE -0x06a3 "ё" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_io ё CYRILLIC SMALL LETTER IO -0x06a4 "є" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_ie є CYRILLIC SMALL LETTER UKRAINIAN IE -0x06a5 "ѕ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_dse ѕ CYRILLIC SMALL LETTER DZE -0x06a6 "і" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_i і CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I -0x06a7 "ї" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_yi ї CYRILLIC SMALL LETTER YI -0x06a8 "ј" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_je ј CYRILLIC SMALL LETTER JE -0x06a9 "љ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_lje љ CYRILLIC SMALL LETTER LJE -0x06aa "њ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_nje њ CYRILLIC SMALL LETTER NJE -0x06ab "ћ" EEK_KEYSYM_CATEGORY_LETTER # Serbian_tshe ћ CYRILLIC SMALL LETTER TSHE -0x06ac "ќ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_kje ќ CYRILLIC SMALL LETTER KJE -0x06ad "ґ" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_ghe_with_upturn ґ CYRILLIC SMALL LETTER GHE WITH UPTURN -0x06ae "ў" EEK_KEYSYM_CATEGORY_LETTER # Byelorussian_shortu ў CYRILLIC SMALL LETTER SHORT U -0x06af "џ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_dzhe џ CYRILLIC SMALL LETTER DZHE -0x06b0 "№" EEK_KEYSYM_CATEGORY_LETTER # numerosign № NUMERO SIGN -0x06b1 "Ђ" EEK_KEYSYM_CATEGORY_LETTER # Serbian_DJE Ђ CYRILLIC CAPITAL LETTER DJE -0x06b2 "Ѓ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_GJE Ѓ CYRILLIC CAPITAL LETTER GJE -0x06b3 "Ё" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_IO Ё CYRILLIC CAPITAL LETTER IO -0x06b4 "Є" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_IE Є CYRILLIC CAPITAL LETTER UKRAINIAN IE -0x06b5 "Ѕ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_DSE Ѕ CYRILLIC CAPITAL LETTER DZE -0x06b6 "І" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_I І CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I -0x06b7 "Ї" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_YI Ї CYRILLIC CAPITAL LETTER YI -0x06b8 "Ј" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_JE Ј CYRILLIC CAPITAL LETTER JE -0x06b9 "Љ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_LJE Љ CYRILLIC CAPITAL LETTER LJE -0x06ba "Њ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_NJE Њ CYRILLIC CAPITAL LETTER NJE -0x06bb "Ћ" EEK_KEYSYM_CATEGORY_LETTER # Serbian_TSHE Ћ CYRILLIC CAPITAL LETTER TSHE -0x06bc "Ќ" EEK_KEYSYM_CATEGORY_LETTER # Macedonia_KJE Ќ CYRILLIC CAPITAL LETTER KJE -0x06bd "Ґ" EEK_KEYSYM_CATEGORY_LETTER # Ukrainian_GHE_WITH_UPTURN Ґ CYRILLIC CAPITAL LETTER GHE WITH UPTURN -0x06be "Ў" EEK_KEYSYM_CATEGORY_LETTER # Byelorussian_SHORTU Ў CYRILLIC CAPITAL LETTER SHORT U -0x06bf "Џ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_DZHE Џ CYRILLIC CAPITAL LETTER DZHE -0x06c0 "ю" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_yu ю CYRILLIC SMALL LETTER YU -0x06c1 "а" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_a а CYRILLIC SMALL LETTER A -0x06c2 "б" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_be б CYRILLIC SMALL LETTER BE -0x06c3 "ц" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_tse ц CYRILLIC SMALL LETTER TSE -0x06c4 "д" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_de д CYRILLIC SMALL LETTER DE -0x06c5 "е" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ie е CYRILLIC SMALL LETTER IE -0x06c6 "ф" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ef ф CYRILLIC SMALL LETTER EF -0x06c7 "г" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ghe г CYRILLIC SMALL LETTER GHE -0x06c8 "х" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ha х CYRILLIC SMALL LETTER HA -0x06c9 "и" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_i и CYRILLIC SMALL LETTER I -0x06ca "й" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_shorti й CYRILLIC SMALL LETTER SHORT I -0x06cb "к" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ka к CYRILLIC SMALL LETTER KA -0x06cc "л" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_el л CYRILLIC SMALL LETTER EL -0x06cd "м" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_em м CYRILLIC SMALL LETTER EM -0x06ce "н" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_en н CYRILLIC SMALL LETTER EN -0x06cf "о" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_o о CYRILLIC SMALL LETTER O -0x06d0 "п" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_pe п CYRILLIC SMALL LETTER PE -0x06d1 "я" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ya я CYRILLIC SMALL LETTER YA -0x06d2 "р" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_er р CYRILLIC SMALL LETTER ER -0x06d3 "с" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_es с CYRILLIC SMALL LETTER ES -0x06d4 "т" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_te т CYRILLIC SMALL LETTER TE -0x06d5 "у" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_u у CYRILLIC SMALL LETTER U -0x06d6 "ж" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_zhe ж CYRILLIC SMALL LETTER ZHE -0x06d7 "в" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ve в CYRILLIC SMALL LETTER VE -0x06d8 "ь" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_softsign ь CYRILLIC SMALL LETTER SOFT SIGN -0x06d9 "ы" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_yeru ы CYRILLIC SMALL LETTER YERU -0x06da "з" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ze з CYRILLIC SMALL LETTER ZE -0x06db "ш" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_sha ш CYRILLIC SMALL LETTER SHA -0x06dc "э" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_e э CYRILLIC SMALL LETTER E -0x06dd "щ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_shcha щ CYRILLIC SMALL LETTER SHCHA -0x06de "ч" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_che ч CYRILLIC SMALL LETTER CHE -0x06df "ъ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_hardsign ъ CYRILLIC SMALL LETTER HARD SIGN -0x06e0 "Ю" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_YU Ю CYRILLIC CAPITAL LETTER YU -0x06e1 "А" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_A А CYRILLIC CAPITAL LETTER A -0x06e2 "Б" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_BE Б CYRILLIC CAPITAL LETTER BE -0x06e3 "Ц" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_TSE Ц CYRILLIC CAPITAL LETTER TSE -0x06e4 "Д" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_DE Д CYRILLIC CAPITAL LETTER DE -0x06e5 "Е" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_IE Е CYRILLIC CAPITAL LETTER IE -0x06e6 "Ф" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_EF Ф CYRILLIC CAPITAL LETTER EF -0x06e7 "Г" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_GHE Г CYRILLIC CAPITAL LETTER GHE -0x06e8 "Х" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_HA Х CYRILLIC CAPITAL LETTER HA -0x06e9 "И" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_I И CYRILLIC CAPITAL LETTER I -0x06ea "Й" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_SHORTI Й CYRILLIC CAPITAL LETTER SHORT I -0x06eb "К" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_KA К CYRILLIC CAPITAL LETTER KA -0x06ec "Л" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_EL Л CYRILLIC CAPITAL LETTER EL -0x06ed "М" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_EM М CYRILLIC CAPITAL LETTER EM -0x06ee "Н" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_EN Н CYRILLIC CAPITAL LETTER EN -0x06ef "О" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_O О CYRILLIC CAPITAL LETTER O -0x06f0 "П" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_PE П CYRILLIC CAPITAL LETTER PE -0x06f1 "Я" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_YA Я CYRILLIC CAPITAL LETTER YA -0x06f2 "Р" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ER Р CYRILLIC CAPITAL LETTER ER -0x06f3 "С" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ES С CYRILLIC CAPITAL LETTER ES -0x06f4 "Т" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_TE Т CYRILLIC CAPITAL LETTER TE -0x06f5 "У" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_U У CYRILLIC CAPITAL LETTER U -0x06f6 "Ж" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ZHE Ж CYRILLIC CAPITAL LETTER ZHE -0x06f7 "В" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_VE В CYRILLIC CAPITAL LETTER VE -0x06f8 "Ь" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_SOFTSIGN Ь CYRILLIC CAPITAL LETTER SOFT SIGN -0x06f9 "Ы" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_YERU Ы CYRILLIC CAPITAL LETTER YERU -0x06fa "З" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_ZE З CYRILLIC CAPITAL LETTER ZE -0x06fb "Ш" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_SHA Ш CYRILLIC CAPITAL LETTER SHA -0x06fc "Э" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_E Э CYRILLIC CAPITAL LETTER E -0x06fd "Щ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_SHCHA Щ CYRILLIC CAPITAL LETTER SHCHA -0x06fe "Ч" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_CHE Ч CYRILLIC CAPITAL LETTER CHE -0x06ff "Ъ" EEK_KEYSYM_CATEGORY_LETTER # Cyrillic_HARDSIGN Ъ CYRILLIC CAPITAL LETTER HARD SIGN -0x07a1 "Ά" EEK_KEYSYM_CATEGORY_LETTER # Geek_ALPHAaccent Ά GREEK CAPITAL LETTER ALPHA WITH TONOS -0x07a2 "Έ" EEK_KEYSYM_CATEGORY_LETTER # Geek_EPSILONaccent Έ GREEK CAPITAL LETTER EPSILON WITH TONOS -0x07a3 "Ή" EEK_KEYSYM_CATEGORY_LETTER # Geek_ETAaccent Ή GREEK CAPITAL LETTER ETA WITH TONOS -0x07a4 "Ί" EEK_KEYSYM_CATEGORY_LETTER # Geek_IOTAaccent Ί GREEK CAPITAL LETTER IOTA WITH TONOS -0x07a5 "Ϊ" EEK_KEYSYM_CATEGORY_LETTER # Geek_IOTAdieresis Ϊ GREEK CAPITAL LETTER IOTA WITH DIALYTIKA -0x07a7 "Ό" EEK_KEYSYM_CATEGORY_LETTER # Geek_OMICRONaccent Ό GREEK CAPITAL LETTER OMICRON WITH TONOS -0x07a8 "Ύ" EEK_KEYSYM_CATEGORY_LETTER # Geek_UPSILONaccent Ύ GREEK CAPITAL LETTER UPSILON WITH TONOS -0x07a9 "Ϋ" EEK_KEYSYM_CATEGORY_LETTER # Geek_UPSILONdieresis Ϋ GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA -0x07ab "Ώ" EEK_KEYSYM_CATEGORY_LETTER # Geek_OMEGAaccent Ώ GREEK CAPITAL LETTER OMEGA WITH TONOS -0x07ae "΅" EEK_KEYSYM_CATEGORY_LETTER # Geek_accentdieresis ΅ GREEK DIALYTIKA TONOS -0x07af "―" EEK_KEYSYM_CATEGORY_LETTER # Geek_horizbar ― HORIZONTAL BAR -0x07b1 "ά" EEK_KEYSYM_CATEGORY_LETTER # Geek_alphaaccent ά GREEK SMALL LETTER ALPHA WITH TONOS -0x07b2 "έ" EEK_KEYSYM_CATEGORY_LETTER # Geek_epsilonaccent έ GREEK SMALL LETTER EPSILON WITH TONOS -0x07b3 "ή" EEK_KEYSYM_CATEGORY_LETTER # Geek_etaaccent ή GREEK SMALL LETTER ETA WITH TONOS -0x07b4 "ί" EEK_KEYSYM_CATEGORY_LETTER # Geek_iotaaccent ί GREEK SMALL LETTER IOTA WITH TONOS -0x07b5 "ϊ" EEK_KEYSYM_CATEGORY_LETTER # Geek_iotadieresis ϊ GREEK SMALL LETTER IOTA WITH DIALYTIKA -0x07b6 "ΐ" EEK_KEYSYM_CATEGORY_LETTER # Geek_iotaaccentdieresis ΐ GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS -0x07b7 "ό" EEK_KEYSYM_CATEGORY_LETTER # Geek_omicronaccent ό GREEK SMALL LETTER OMICRON WITH TONOS -0x07b8 "ύ" EEK_KEYSYM_CATEGORY_LETTER # Geek_upsilonaccent ύ GREEK SMALL LETTER UPSILON WITH TONOS -0x07b9 "ϋ" EEK_KEYSYM_CATEGORY_LETTER # Geek_upsilondieresis ϋ GREEK SMALL LETTER UPSILON WITH DIALYTIKA -0x07ba "ΰ" EEK_KEYSYM_CATEGORY_LETTER # Geek_upsilonaccentdieresis ΰ GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS -0x07bb "ώ" EEK_KEYSYM_CATEGORY_LETTER # Geek_omegaaccent ώ GREEK SMALL LETTER OMEGA WITH TONOS -0x07c1 "Α" EEK_KEYSYM_CATEGORY_LETTER # Geek_ALPHA Α GREEK CAPITAL LETTER ALPHA -0x07c2 "Β" EEK_KEYSYM_CATEGORY_LETTER # Geek_BETA Β GREEK CAPITAL LETTER BETA -0x07c3 "Γ" EEK_KEYSYM_CATEGORY_LETTER # Geek_GAMMA Γ GREEK CAPITAL LETTER GAMMA -0x07c4 "Δ" EEK_KEYSYM_CATEGORY_LETTER # Geek_DELTA Δ GREEK CAPITAL LETTER DELTA -0x07c5 "Ε" EEK_KEYSYM_CATEGORY_LETTER # Geek_EPSILON Ε GREEK CAPITAL LETTER EPSILON -0x07c6 "Ζ" EEK_KEYSYM_CATEGORY_LETTER # Geek_ZETA Ζ GREEK CAPITAL LETTER ZETA -0x07c7 "Η" EEK_KEYSYM_CATEGORY_LETTER # Geek_ETA Η GREEK CAPITAL LETTER ETA -0x07c8 "Θ" EEK_KEYSYM_CATEGORY_LETTER # Geek_THETA Θ GREEK CAPITAL LETTER THETA -0x07c9 "Ι" EEK_KEYSYM_CATEGORY_LETTER # Geek_IOTA Ι GREEK CAPITAL LETTER IOTA -0x07ca "Κ" EEK_KEYSYM_CATEGORY_LETTER # Geek_KAPPA Κ GREEK CAPITAL LETTER KAPPA -0x07cb "Λ" EEK_KEYSYM_CATEGORY_LETTER # Geek_LAMBDA Λ GREEK CAPITAL LETTER LAMDA -0x07cc "Μ" EEK_KEYSYM_CATEGORY_LETTER # Geek_MU Μ GREEK CAPITAL LETTER MU -0x07cd "Ν" EEK_KEYSYM_CATEGORY_LETTER # Geek_NU Ν GREEK CAPITAL LETTER NU -0x07ce "Ξ" EEK_KEYSYM_CATEGORY_LETTER # Geek_XI Ξ GREEK CAPITAL LETTER XI -0x07cf "Ο" EEK_KEYSYM_CATEGORY_LETTER # Geek_OMICRON Ο GREEK CAPITAL LETTER OMICRON -0x07d0 "Π" EEK_KEYSYM_CATEGORY_LETTER # Geek_PI Π GREEK CAPITAL LETTER PI -0x07d1 "Ρ" EEK_KEYSYM_CATEGORY_LETTER # Geek_RHO Ρ GREEK CAPITAL LETTER RHO -0x07d2 "Σ" EEK_KEYSYM_CATEGORY_LETTER # Geek_SIGMA Σ GREEK CAPITAL LETTER SIGMA -0x07d4 "Τ" EEK_KEYSYM_CATEGORY_LETTER # Geek_TAU Τ GREEK CAPITAL LETTER TAU -0x07d5 "Υ" EEK_KEYSYM_CATEGORY_LETTER # Geek_UPSILON Υ GREEK CAPITAL LETTER UPSILON -0x07d6 "Φ" EEK_KEYSYM_CATEGORY_LETTER # Geek_PHI Φ GREEK CAPITAL LETTER PHI -0x07d7 "Χ" EEK_KEYSYM_CATEGORY_LETTER # Geek_CHI Χ GREEK CAPITAL LETTER CHI -0x07d8 "Ψ" EEK_KEYSYM_CATEGORY_LETTER # Geek_PSI Ψ GREEK CAPITAL LETTER PSI -0x07d9 "Ω" EEK_KEYSYM_CATEGORY_LETTER # Geek_OMEGA Ω GREEK CAPITAL LETTER OMEGA -0x07e1 "α" EEK_KEYSYM_CATEGORY_LETTER # Geek_alpha α GREEK SMALL LETTER ALPHA -0x07e2 "β" EEK_KEYSYM_CATEGORY_LETTER # Geek_beta β GREEK SMALL LETTER BETA -0x07e3 "γ" EEK_KEYSYM_CATEGORY_LETTER # Geek_gamma γ GREEK SMALL LETTER GAMMA -0x07e4 "δ" EEK_KEYSYM_CATEGORY_LETTER # Geek_delta δ GREEK SMALL LETTER DELTA -0x07e5 "ε" EEK_KEYSYM_CATEGORY_LETTER # Geek_epsilon ε GREEK SMALL LETTER EPSILON -0x07e6 "ζ" EEK_KEYSYM_CATEGORY_LETTER # Geek_zeta ζ GREEK SMALL LETTER ZETA -0x07e7 "η" EEK_KEYSYM_CATEGORY_LETTER # Geek_eta η GREEK SMALL LETTER ETA -0x07e8 "θ" EEK_KEYSYM_CATEGORY_LETTER # Geek_theta θ GREEK SMALL LETTER THETA -0x07e9 "ι" EEK_KEYSYM_CATEGORY_LETTER # Geek_iota ι GREEK SMALL LETTER IOTA -0x07ea "κ" EEK_KEYSYM_CATEGORY_LETTER # Geek_kappa κ GREEK SMALL LETTER KAPPA -0x07eb "λ" EEK_KEYSYM_CATEGORY_LETTER # Geek_lambda λ GREEK SMALL LETTER LAMDA -0x07ec "μ" EEK_KEYSYM_CATEGORY_LETTER # Geek_mu μ GREEK SMALL LETTER MU -0x07ed "ν" EEK_KEYSYM_CATEGORY_LETTER # Geek_nu ν GREEK SMALL LETTER NU -0x07ee "ξ" EEK_KEYSYM_CATEGORY_LETTER # Geek_xi ξ GREEK SMALL LETTER XI -0x07ef "ο" EEK_KEYSYM_CATEGORY_LETTER # Geek_omicron ο GREEK SMALL LETTER OMICRON -0x07f0 "π" EEK_KEYSYM_CATEGORY_LETTER # Geek_pi π GREEK SMALL LETTER PI -0x07f1 "ρ" EEK_KEYSYM_CATEGORY_LETTER # Geek_rho ρ GREEK SMALL LETTER RHO -0x07f2 "σ" EEK_KEYSYM_CATEGORY_LETTER # Geek_sigma σ GREEK SMALL LETTER SIGMA -0x07f3 "ς" EEK_KEYSYM_CATEGORY_LETTER # Geek_finalsmallsigma ς GREEK SMALL LETTER FINAL SIGMA -0x07f4 "τ" EEK_KEYSYM_CATEGORY_LETTER # Geek_tau τ GREEK SMALL LETTER TAU -0x07f5 "υ" EEK_KEYSYM_CATEGORY_LETTER # Geek_upsilon υ GREEK SMALL LETTER UPSILON -0x07f6 "φ" EEK_KEYSYM_CATEGORY_LETTER # Geek_phi φ GREEK SMALL LETTER PHI -0x07f7 "χ" EEK_KEYSYM_CATEGORY_LETTER # Geek_chi χ GREEK SMALL LETTER CHI -0x07f8 "ψ" EEK_KEYSYM_CATEGORY_LETTER # Geek_psi ψ GREEK SMALL LETTER PSI -0x07f9 "ω" EEK_KEYSYM_CATEGORY_LETTER # Geek_omega ω GREEK SMALL LETTER OMEGA +0x01a1 "Ą" EEK_SYMBOL_CATEGORY_LETTER # Aogonek Ą LATIN CAPITAL LETTER A WITH OGONEK +0x01a2 "˘" EEK_SYMBOL_CATEGORY_LETTER # breve ˘ BREVE +0x01a3 "Ł" EEK_SYMBOL_CATEGORY_LETTER # Lstroke Ł LATIN CAPITAL LETTER L WITH STROKE +0x01a5 "Ľ" EEK_SYMBOL_CATEGORY_LETTER # Lcaron Ľ LATIN CAPITAL LETTER L WITH CARON +0x01a6 "Ś" EEK_SYMBOL_CATEGORY_LETTER # Sacute Ś LATIN CAPITAL LETTER S WITH ACUTE +0x01a9 "Š" EEK_SYMBOL_CATEGORY_LETTER # Scaron Š LATIN CAPITAL LETTER S WITH CARON +0x01aa "Ş" EEK_SYMBOL_CATEGORY_LETTER # Scedilla Ş LATIN CAPITAL LETTER S WITH CEDILLA +0x01ab "Ť" EEK_SYMBOL_CATEGORY_LETTER # Tcaron Ť LATIN CAPITAL LETTER T WITH CARON +0x01ac "Ź" EEK_SYMBOL_CATEGORY_LETTER # Zacute Ź LATIN CAPITAL LETTER Z WITH ACUTE +0x01ae "Ž" EEK_SYMBOL_CATEGORY_LETTER # Zcaron Ž LATIN CAPITAL LETTER Z WITH CARON +0x01af "Ż" EEK_SYMBOL_CATEGORY_LETTER # Zabovedot Ż LATIN CAPITAL LETTER Z WITH DOT ABOVE +0x01b1 "ą" EEK_SYMBOL_CATEGORY_LETTER # aogonek ą LATIN SMALL LETTER A WITH OGONEK +0x01b2 "˛" EEK_SYMBOL_CATEGORY_LETTER # ogonek ˛ OGONEK +0x01b3 "ł" EEK_SYMBOL_CATEGORY_LETTER # lstroke ł LATIN SMALL LETTER L WITH STROKE +0x01b5 "ľ" EEK_SYMBOL_CATEGORY_LETTER # lcaron ľ LATIN SMALL LETTER L WITH CARON +0x01b6 "ś" EEK_SYMBOL_CATEGORY_LETTER # sacute ś LATIN SMALL LETTER S WITH ACUTE +0x01b7 "ˇ" EEK_SYMBOL_CATEGORY_LETTER # caron ˇ CARON +0x01b9 "š" EEK_SYMBOL_CATEGORY_LETTER # scaron š LATIN SMALL LETTER S WITH CARON +0x01ba "ş" EEK_SYMBOL_CATEGORY_LETTER # scedilla ş LATIN SMALL LETTER S WITH CEDILLA +0x01bb "ť" EEK_SYMBOL_CATEGORY_LETTER # tcaron ť LATIN SMALL LETTER T WITH CARON +0x01bc "ź" EEK_SYMBOL_CATEGORY_LETTER # zacute ź LATIN SMALL LETTER Z WITH ACUTE +0x01bd "˝" EEK_SYMBOL_CATEGORY_LETTER # doubleacute ˝ DOUBLE ACUTE ACCENT +0x01be "ž" EEK_SYMBOL_CATEGORY_LETTER # zcaron ž LATIN SMALL LETTER Z WITH CARON +0x01bf "ż" EEK_SYMBOL_CATEGORY_LETTER # zabovedot ż LATIN SMALL LETTER Z WITH DOT ABOVE +0x01c0 "Ŕ" EEK_SYMBOL_CATEGORY_LETTER # Racute Ŕ LATIN CAPITAL LETTER R WITH ACUTE +0x01c3 "Ă" EEK_SYMBOL_CATEGORY_LETTER # Abreve Ă LATIN CAPITAL LETTER A WITH BREVE +0x01c5 "Ĺ" EEK_SYMBOL_CATEGORY_LETTER # Lacute Ĺ LATIN CAPITAL LETTER L WITH ACUTE +0x01c6 "Ć" EEK_SYMBOL_CATEGORY_LETTER # Cacute Ć LATIN CAPITAL LETTER C WITH ACUTE +0x01c8 "Č" EEK_SYMBOL_CATEGORY_LETTER # Ccaron Č LATIN CAPITAL LETTER C WITH CARON +0x01ca "Ę" EEK_SYMBOL_CATEGORY_LETTER # Eogonek Ę LATIN CAPITAL LETTER E WITH OGONEK +0x01cc "Ě" EEK_SYMBOL_CATEGORY_LETTER # Ecaron Ě LATIN CAPITAL LETTER E WITH CARON +0x01cf "Ď" EEK_SYMBOL_CATEGORY_LETTER # Dcaron Ď LATIN CAPITAL LETTER D WITH CARON +0x01d0 "Đ" EEK_SYMBOL_CATEGORY_LETTER # Dstroke Đ LATIN CAPITAL LETTER D WITH STROKE +0x01d1 "Ń" EEK_SYMBOL_CATEGORY_LETTER # Nacute Ń LATIN CAPITAL LETTER N WITH ACUTE +0x01d2 "Ň" EEK_SYMBOL_CATEGORY_LETTER # Ncaron Ň LATIN CAPITAL LETTER N WITH CARON +0x01d5 "Ő" EEK_SYMBOL_CATEGORY_LETTER # Odoubleacute Ő LATIN CAPITAL LETTER O WITH DOUBLE ACUTE +0x01d8 "Ř" EEK_SYMBOL_CATEGORY_LETTER # Rcaron Ř LATIN CAPITAL LETTER R WITH CARON +0x01d9 "Ů" EEK_SYMBOL_CATEGORY_LETTER # Uring Ů LATIN CAPITAL LETTER U WITH RING ABOVE +0x01db "Ű" EEK_SYMBOL_CATEGORY_LETTER # Udoubleacute Ű LATIN CAPITAL LETTER U WITH DOUBLE ACUTE +0x01de "Ţ" EEK_SYMBOL_CATEGORY_LETTER # Tcedilla Ţ LATIN CAPITAL LETTER T WITH CEDILLA +0x01e0 "ŕ" EEK_SYMBOL_CATEGORY_LETTER # racute ŕ LATIN SMALL LETTER R WITH ACUTE +0x01e3 "ă" EEK_SYMBOL_CATEGORY_LETTER # abreve ă LATIN SMALL LETTER A WITH BREVE +0x01e5 "ĺ" EEK_SYMBOL_CATEGORY_LETTER # lacute ĺ LATIN SMALL LETTER L WITH ACUTE +0x01e6 "ć" EEK_SYMBOL_CATEGORY_LETTER # cacute ć LATIN SMALL LETTER C WITH ACUTE +0x01e8 "č" EEK_SYMBOL_CATEGORY_LETTER # ccaron č LATIN SMALL LETTER C WITH CARON +0x01ea "ę" EEK_SYMBOL_CATEGORY_LETTER # eogonek ę LATIN SMALL LETTER E WITH OGONEK +0x01ec "ě" EEK_SYMBOL_CATEGORY_LETTER # ecaron ě LATIN SMALL LETTER E WITH CARON +0x01ef "ď" EEK_SYMBOL_CATEGORY_LETTER # dcaron ď LATIN SMALL LETTER D WITH CARON +0x01f0 "đ" EEK_SYMBOL_CATEGORY_LETTER # dstroke đ LATIN SMALL LETTER D WITH STROKE +0x01f1 "ń" EEK_SYMBOL_CATEGORY_LETTER # nacute ń LATIN SMALL LETTER N WITH ACUTE +0x01f2 "ň" EEK_SYMBOL_CATEGORY_LETTER # ncaron ň LATIN SMALL LETTER N WITH CARON +0x01f5 "ő" EEK_SYMBOL_CATEGORY_LETTER # odoubleacute ő LATIN SMALL LETTER O WITH DOUBLE ACUTE +0x01f8 "ř" EEK_SYMBOL_CATEGORY_LETTER # rcaron ř LATIN SMALL LETTER R WITH CARON +0x01f9 "ů" EEK_SYMBOL_CATEGORY_LETTER # uring ů LATIN SMALL LETTER U WITH RING ABOVE +0x01fb "ű" EEK_SYMBOL_CATEGORY_LETTER # udoubleacute ű LATIN SMALL LETTER U WITH DOUBLE ACUTE +0x01fe "ţ" EEK_SYMBOL_CATEGORY_LETTER # tcedilla ţ LATIN SMALL LETTER T WITH CEDILLA +0x01ff "˙" EEK_SYMBOL_CATEGORY_LETTER # abovedot ˙ DOT ABOVE +0x02a1 "Ħ" EEK_SYMBOL_CATEGORY_LETTER # Hstroke Ħ LATIN CAPITAL LETTER H WITH STROKE +0x02a6 "Ĥ" EEK_SYMBOL_CATEGORY_LETTER # Hcircumflex Ĥ LATIN CAPITAL LETTER H WITH CIRCUMFLEX +0x02a9 "İ" EEK_SYMBOL_CATEGORY_LETTER # Iabovedot İ LATIN CAPITAL LETTER I WITH DOT ABOVE +0x02ab "Ğ" EEK_SYMBOL_CATEGORY_LETTER # Gbreve Ğ LATIN CAPITAL LETTER G WITH BREVE +0x02ac "Ĵ" EEK_SYMBOL_CATEGORY_LETTER # Jcircumflex Ĵ LATIN CAPITAL LETTER J WITH CIRCUMFLEX +0x02b1 "ħ" EEK_SYMBOL_CATEGORY_LETTER # hstroke ħ LATIN SMALL LETTER H WITH STROKE +0x02b6 "ĥ" EEK_SYMBOL_CATEGORY_LETTER # hcircumflex ĥ LATIN SMALL LETTER H WITH CIRCUMFLEX +0x02b9 "ı" EEK_SYMBOL_CATEGORY_LETTER # idotless ı LATIN SMALL LETTER DOTLESS I +0x02bb "ğ" EEK_SYMBOL_CATEGORY_LETTER # gbreve ğ LATIN SMALL LETTER G WITH BREVE +0x02bc "ĵ" EEK_SYMBOL_CATEGORY_LETTER # jcircumflex ĵ LATIN SMALL LETTER J WITH CIRCUMFLEX +0x02c5 "Ċ" EEK_SYMBOL_CATEGORY_LETTER # Cabovedot Ċ LATIN CAPITAL LETTER C WITH DOT ABOVE +0x02c6 "Ĉ" EEK_SYMBOL_CATEGORY_LETTER # Ccircumflex Ĉ LATIN CAPITAL LETTER C WITH CIRCUMFLEX +0x02d5 "Ġ" EEK_SYMBOL_CATEGORY_LETTER # Gabovedot Ġ LATIN CAPITAL LETTER G WITH DOT ABOVE +0x02d8 "Ĝ" EEK_SYMBOL_CATEGORY_LETTER # Gcircumflex Ĝ LATIN CAPITAL LETTER G WITH CIRCUMFLEX +0x02dd "Ŭ" EEK_SYMBOL_CATEGORY_LETTER # Ubreve Ŭ LATIN CAPITAL LETTER U WITH BREVE +0x02de "Ŝ" EEK_SYMBOL_CATEGORY_LETTER # Scircumflex Ŝ LATIN CAPITAL LETTER S WITH CIRCUMFLEX +0x02e5 "ċ" EEK_SYMBOL_CATEGORY_LETTER # cabovedot ċ LATIN SMALL LETTER C WITH DOT ABOVE +0x02e6 "ĉ" EEK_SYMBOL_CATEGORY_LETTER # ccircumflex ĉ LATIN SMALL LETTER C WITH CIRCUMFLEX +0x02f5 "ġ" EEK_SYMBOL_CATEGORY_LETTER # gabovedot ġ LATIN SMALL LETTER G WITH DOT ABOVE +0x02f8 "ĝ" EEK_SYMBOL_CATEGORY_LETTER # gcircumflex ĝ LATIN SMALL LETTER G WITH CIRCUMFLEX +0x02fd "ŭ" EEK_SYMBOL_CATEGORY_LETTER # ubreve ŭ LATIN SMALL LETTER U WITH BREVE +0x02fe "ŝ" EEK_SYMBOL_CATEGORY_LETTER # scircumflex ŝ LATIN SMALL LETTER S WITH CIRCUMFLEX +0x03a2 "ĸ" EEK_SYMBOL_CATEGORY_LETTER # kra ĸ LATIN SMALL LETTER KRA +0x03a3 "Ŗ" EEK_SYMBOL_CATEGORY_LETTER # Rcedilla Ŗ LATIN CAPITAL LETTER R WITH CEDILLA +0x03a5 "Ĩ" EEK_SYMBOL_CATEGORY_LETTER # Itilde Ĩ LATIN CAPITAL LETTER I WITH TILDE +0x03a6 "Ļ" EEK_SYMBOL_CATEGORY_LETTER # Lcedilla Ļ LATIN CAPITAL LETTER L WITH CEDILLA +0x03aa "Ē" EEK_SYMBOL_CATEGORY_LETTER # Emacron Ē LATIN CAPITAL LETTER E WITH MACRON +0x03ab "Ģ" EEK_SYMBOL_CATEGORY_LETTER # Gcedilla Ģ LATIN CAPITAL LETTER G WITH CEDILLA +0x03ac "Ŧ" EEK_SYMBOL_CATEGORY_LETTER # Tslash Ŧ LATIN CAPITAL LETTER T WITH STROKE +0x03b3 "ŗ" EEK_SYMBOL_CATEGORY_LETTER # rcedilla ŗ LATIN SMALL LETTER R WITH CEDILLA +0x03b5 "ĩ" EEK_SYMBOL_CATEGORY_LETTER # itilde ĩ LATIN SMALL LETTER I WITH TILDE +0x03b6 "ļ" EEK_SYMBOL_CATEGORY_LETTER # lcedilla ļ LATIN SMALL LETTER L WITH CEDILLA +0x03ba "ē" EEK_SYMBOL_CATEGORY_LETTER # emacron ē LATIN SMALL LETTER E WITH MACRON +0x03bb "ģ" EEK_SYMBOL_CATEGORY_LETTER # gcedilla ģ LATIN SMALL LETTER G WITH CEDILLA +0x03bc "ŧ" EEK_SYMBOL_CATEGORY_LETTER # tslash ŧ LATIN SMALL LETTER T WITH STROKE +0x03bd "Ŋ" EEK_SYMBOL_CATEGORY_LETTER # ENG Ŋ LATIN CAPITAL LETTER ENG +0x03bf "ŋ" EEK_SYMBOL_CATEGORY_LETTER # eng ŋ LATIN SMALL LETTER ENG +0x03c0 "Ā" EEK_SYMBOL_CATEGORY_LETTER # Amacron Ā LATIN CAPITAL LETTER A WITH MACRON +0x03c7 "Į" EEK_SYMBOL_CATEGORY_LETTER # Iogonek Į LATIN CAPITAL LETTER I WITH OGONEK +0x03cc "Ė" EEK_SYMBOL_CATEGORY_LETTER # Eabovedot Ė LATIN CAPITAL LETTER E WITH DOT ABOVE +0x03cf "Ī" EEK_SYMBOL_CATEGORY_LETTER # Imacron Ī LATIN CAPITAL LETTER I WITH MACRON +0x03d1 "Ņ" EEK_SYMBOL_CATEGORY_LETTER # Ncedilla Ņ LATIN CAPITAL LETTER N WITH CEDILLA +0x03d2 "Ō" EEK_SYMBOL_CATEGORY_LETTER # Omacron Ō LATIN CAPITAL LETTER O WITH MACRON +0x03d3 "Ķ" EEK_SYMBOL_CATEGORY_LETTER # Kcedilla Ķ LATIN CAPITAL LETTER K WITH CEDILLA +0x03d9 "Ų" EEK_SYMBOL_CATEGORY_LETTER # Uogonek Ų LATIN CAPITAL LETTER U WITH OGONEK +0x03dd "Ũ" EEK_SYMBOL_CATEGORY_LETTER # Utilde Ũ LATIN CAPITAL LETTER U WITH TILDE +0x03de "Ū" EEK_SYMBOL_CATEGORY_LETTER # Umacron Ū LATIN CAPITAL LETTER U WITH MACRON +0x03e0 "ā" EEK_SYMBOL_CATEGORY_LETTER # amacron ā LATIN SMALL LETTER A WITH MACRON +0x03e7 "į" EEK_SYMBOL_CATEGORY_LETTER # iogonek į LATIN SMALL LETTER I WITH OGONEK +0x03ec "ė" EEK_SYMBOL_CATEGORY_LETTER # eabovedot ė LATIN SMALL LETTER E WITH DOT ABOVE +0x03ef "ī" EEK_SYMBOL_CATEGORY_LETTER # imacron ī LATIN SMALL LETTER I WITH MACRON +0x03f1 "ņ" EEK_SYMBOL_CATEGORY_LETTER # ncedilla ņ LATIN SMALL LETTER N WITH CEDILLA +0x03f2 "ō" EEK_SYMBOL_CATEGORY_LETTER # omacron ō LATIN SMALL LETTER O WITH MACRON +0x03f3 "ķ" EEK_SYMBOL_CATEGORY_LETTER # kcedilla ķ LATIN SMALL LETTER K WITH CEDILLA +0x03f9 "ų" EEK_SYMBOL_CATEGORY_LETTER # uogonek ų LATIN SMALL LETTER U WITH OGONEK +0x03fd "ũ" EEK_SYMBOL_CATEGORY_LETTER # utilde ũ LATIN SMALL LETTER U WITH TILDE +0x03fe "ū" EEK_SYMBOL_CATEGORY_LETTER # umacron ū LATIN SMALL LETTER U WITH MACRON +0x047e "‾" EEK_SYMBOL_CATEGORY_LETTER # overline ‾ OVERLINE +0x04a1 "。" EEK_SYMBOL_CATEGORY_LETTER # kana_fullstop 。 IDEOGRAPHIC FULL STOP +0x04a2 "「" EEK_SYMBOL_CATEGORY_LETTER # kana_openingbracket 「 LEFT CORNER BRACKET +0x04a3 "」" EEK_SYMBOL_CATEGORY_LETTER # kana_closingbracket 」 RIGHT CORNER BRACKET +0x04a4 "、" EEK_SYMBOL_CATEGORY_LETTER # kana_comma 、 IDEOGRAPHIC COMMA +0x04a5 "・" EEK_SYMBOL_CATEGORY_LETTER # kana_conjunctive ・ KATAKANA MIDDLE DOT +0x04a6 "ヲ" EEK_SYMBOL_CATEGORY_LETTER # kana_WO ヲ KATAKANA LETTER WO +0x04a7 "ァ" EEK_SYMBOL_CATEGORY_LETTER # kana_a ァ KATAKANA LETTER SMALL A +0x04a8 "ィ" EEK_SYMBOL_CATEGORY_LETTER # kana_i ィ KATAKANA LETTER SMALL I +0x04a9 "ゥ" EEK_SYMBOL_CATEGORY_LETTER # kana_u ゥ KATAKANA LETTER SMALL U +0x04aa "ェ" EEK_SYMBOL_CATEGORY_LETTER # kana_e ェ KATAKANA LETTER SMALL E +0x04ab "ォ" EEK_SYMBOL_CATEGORY_LETTER # kana_o ォ KATAKANA LETTER SMALL O +0x04ac "ャ" EEK_SYMBOL_CATEGORY_LETTER # kana_ya ャ KATAKANA LETTER SMALL YA +0x04ad "ュ" EEK_SYMBOL_CATEGORY_LETTER # kana_yu ュ KATAKANA LETTER SMALL YU +0x04ae "ョ" EEK_SYMBOL_CATEGORY_LETTER # kana_yo ョ KATAKANA LETTER SMALL YO +0x04af "ッ" EEK_SYMBOL_CATEGORY_LETTER # kana_tsu ッ KATAKANA LETTER SMALL TU +0x04b0 "ー" EEK_SYMBOL_CATEGORY_LETTER # prolongedsound ー KATAKANA-HIRAGANA PROLONGED SOUND MARK +0x04b1 "ア" EEK_SYMBOL_CATEGORY_LETTER # kana_A ア KATAKANA LETTER A +0x04b2 "イ" EEK_SYMBOL_CATEGORY_LETTER # kana_I イ KATAKANA LETTER I +0x04b3 "ウ" EEK_SYMBOL_CATEGORY_LETTER # kana_U ウ KATAKANA LETTER U +0x04b4 "エ" EEK_SYMBOL_CATEGORY_LETTER # kana_E エ KATAKANA LETTER E +0x04b5 "オ" EEK_SYMBOL_CATEGORY_LETTER # kana_O オ KATAKANA LETTER O +0x04b6 "カ" EEK_SYMBOL_CATEGORY_LETTER # kana_KA カ KATAKANA LETTER KA +0x04b7 "キ" EEK_SYMBOL_CATEGORY_LETTER # kana_KI キ KATAKANA LETTER KI +0x04b8 "ク" EEK_SYMBOL_CATEGORY_LETTER # kana_KU ク KATAKANA LETTER KU +0x04b9 "ケ" EEK_SYMBOL_CATEGORY_LETTER # kana_KE ケ KATAKANA LETTER KE +0x04ba "コ" EEK_SYMBOL_CATEGORY_LETTER # kana_KO コ KATAKANA LETTER KO +0x04bb "サ" EEK_SYMBOL_CATEGORY_LETTER # kana_SA サ KATAKANA LETTER SA +0x04bc "シ" EEK_SYMBOL_CATEGORY_LETTER # kana_SHI シ KATAKANA LETTER SI +0x04bd "ス" EEK_SYMBOL_CATEGORY_LETTER # kana_SU ス KATAKANA LETTER SU +0x04be "セ" EEK_SYMBOL_CATEGORY_LETTER # kana_SE セ KATAKANA LETTER SE +0x04bf "ソ" EEK_SYMBOL_CATEGORY_LETTER # kana_SO ソ KATAKANA LETTER SO +0x04c0 "タ" EEK_SYMBOL_CATEGORY_LETTER # kana_TA タ KATAKANA LETTER TA +0x04c1 "チ" EEK_SYMBOL_CATEGORY_LETTER # kana_CHI チ KATAKANA LETTER TI +0x04c2 "ツ" EEK_SYMBOL_CATEGORY_LETTER # kana_TSU ツ KATAKANA LETTER TU +0x04c3 "テ" EEK_SYMBOL_CATEGORY_LETTER # kana_TE テ KATAKANA LETTER TE +0x04c4 "ト" EEK_SYMBOL_CATEGORY_LETTER # kana_TO ト KATAKANA LETTER TO +0x04c5 "ナ" EEK_SYMBOL_CATEGORY_LETTER # kana_NA ナ KATAKANA LETTER NA +0x04c6 "ニ" EEK_SYMBOL_CATEGORY_LETTER # kana_NI ニ KATAKANA LETTER NI +0x04c7 "ヌ" EEK_SYMBOL_CATEGORY_LETTER # kana_NU ヌ KATAKANA LETTER NU +0x04c8 "ネ" EEK_SYMBOL_CATEGORY_LETTER # kana_NE ネ KATAKANA LETTER NE +0x04c9 "ノ" EEK_SYMBOL_CATEGORY_LETTER # kana_NO ノ KATAKANA LETTER NO +0x04ca "ハ" EEK_SYMBOL_CATEGORY_LETTER # kana_HA ハ KATAKANA LETTER HA +0x04cb "ヒ" EEK_SYMBOL_CATEGORY_LETTER # kana_HI ヒ KATAKANA LETTER HI +0x04cc "フ" EEK_SYMBOL_CATEGORY_LETTER # kana_FU フ KATAKANA LETTER HU +0x04cd "ヘ" EEK_SYMBOL_CATEGORY_LETTER # kana_HE ヘ KATAKANA LETTER HE +0x04ce "ホ" EEK_SYMBOL_CATEGORY_LETTER # kana_HO ホ KATAKANA LETTER HO +0x04cf "マ" EEK_SYMBOL_CATEGORY_LETTER # kana_MA マ KATAKANA LETTER MA +0x04d0 "ミ" EEK_SYMBOL_CATEGORY_LETTER # kana_MI ミ KATAKANA LETTER MI +0x04d1 "ム" EEK_SYMBOL_CATEGORY_LETTER # kana_MU ム KATAKANA LETTER MU +0x04d2 "メ" EEK_SYMBOL_CATEGORY_LETTER # kana_ME メ KATAKANA LETTER ME +0x04d3 "モ" EEK_SYMBOL_CATEGORY_LETTER # kana_MO モ KATAKANA LETTER MO +0x04d4 "ヤ" EEK_SYMBOL_CATEGORY_LETTER # kana_YA ヤ KATAKANA LETTER YA +0x04d5 "ユ" EEK_SYMBOL_CATEGORY_LETTER # kana_YU ユ KATAKANA LETTER YU +0x04d6 "ヨ" EEK_SYMBOL_CATEGORY_LETTER # kana_YO ヨ KATAKANA LETTER YO +0x04d7 "ラ" EEK_SYMBOL_CATEGORY_LETTER # kana_RA ラ KATAKANA LETTER RA +0x04d8 "リ" EEK_SYMBOL_CATEGORY_LETTER # kana_RI リ KATAKANA LETTER RI +0x04d9 "ル" EEK_SYMBOL_CATEGORY_LETTER # kana_RU ル KATAKANA LETTER RU +0x04da "レ" EEK_SYMBOL_CATEGORY_LETTER # kana_RE レ KATAKANA LETTER RE +0x04db "ロ" EEK_SYMBOL_CATEGORY_LETTER # kana_RO ロ KATAKANA LETTER RO +0x04dc "ワ" EEK_SYMBOL_CATEGORY_LETTER # kana_WA ワ KATAKANA LETTER WA +0x04dd "ン" EEK_SYMBOL_CATEGORY_LETTER # kana_N ン KATAKANA LETTER N +0x04de "゛" EEK_SYMBOL_CATEGORY_LETTER # voicedsound ゛ KATAKANA-HIRAGANA VOICED SOUND MARK +0x04df "゜" EEK_SYMBOL_CATEGORY_LETTER # semivoicedsound ゜ KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK +0x05ac "،" EEK_SYMBOL_CATEGORY_LETTER # Arabic_comma ، ARABIC COMMA +0x05bb "؛" EEK_SYMBOL_CATEGORY_LETTER # Arabic_semicolon ؛ ARABIC SEMICOLON +0x05bf "؟" EEK_SYMBOL_CATEGORY_LETTER # Arabic_question_mark ؟ ARABIC QUESTION MARK +0x05c1 "ء" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hamza ء ARABIC LETTER HAMZA +0x05c2 "آ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_maddaonalef آ ARABIC LETTER ALEF WITH MADDA ABOVE +0x05c3 "أ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hamzaonalef أ ARABIC LETTER ALEF WITH HAMZA ABOVE +0x05c4 "ؤ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hamzaonwaw ؤ ARABIC LETTER WAW WITH HAMZA ABOVE +0x05c5 "إ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hamzaunderalef إ ARABIC LETTER ALEF WITH HAMZA BELOW +0x05c6 "ئ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hamzaonyeh ئ ARABIC LETTER YEH WITH HAMZA ABOVE +0x05c7 "ا" EEK_SYMBOL_CATEGORY_LETTER # Arabic_alef ا ARABIC LETTER ALEF +0x05c8 "ب" EEK_SYMBOL_CATEGORY_LETTER # Arabic_beh ب ARABIC LETTER BEH +0x05c9 "ة" EEK_SYMBOL_CATEGORY_LETTER # Arabic_tehmarbuta ة ARABIC LETTER TEH MARBUTA +0x05ca "ت" EEK_SYMBOL_CATEGORY_LETTER # Arabic_teh ت ARABIC LETTER TEH +0x05cb "ث" EEK_SYMBOL_CATEGORY_LETTER # Arabic_theh ث ARABIC LETTER THEH +0x05cc "ج" EEK_SYMBOL_CATEGORY_LETTER # Arabic_jeem ج ARABIC LETTER JEEM +0x05cd "ح" EEK_SYMBOL_CATEGORY_LETTER # Arabic_hah ح ARABIC LETTER HAH +0x05ce "خ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_khah خ ARABIC LETTER KHAH +0x05cf "د" EEK_SYMBOL_CATEGORY_LETTER # Arabic_dal د ARABIC LETTER DAL +0x05d0 "ذ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_thal ذ ARABIC LETTER THAL +0x05d1 "ر" EEK_SYMBOL_CATEGORY_LETTER # Arabic_ra ر ARABIC LETTER REH +0x05d2 "ز" EEK_SYMBOL_CATEGORY_LETTER # Arabic_zain ز ARABIC LETTER ZAIN +0x05d3 "س" EEK_SYMBOL_CATEGORY_LETTER # Arabic_seen س ARABIC LETTER SEEN +0x05d4 "ش" EEK_SYMBOL_CATEGORY_LETTER # Arabic_sheen ش ARABIC LETTER SHEEN +0x05d5 "ص" EEK_SYMBOL_CATEGORY_LETTER # Arabic_sad ص ARABIC LETTER SAD +0x05d6 "ض" EEK_SYMBOL_CATEGORY_LETTER # Arabic_dad ض ARABIC LETTER DAD +0x05d7 "ط" EEK_SYMBOL_CATEGORY_LETTER # Arabic_tah ط ARABIC LETTER TAH +0x05d8 "ظ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_zah ظ ARABIC LETTER ZAH +0x05d9 "ع" EEK_SYMBOL_CATEGORY_LETTER # Arabic_ain ع ARABIC LETTER AIN +0x05da "غ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_ghain غ ARABIC LETTER GHAIN +0x05e0 "ـ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_tatweel ـ ARABIC TATWEEL +0x05e1 "ف" EEK_SYMBOL_CATEGORY_LETTER # Arabic_feh ف ARABIC LETTER FEH +0x05e2 "ق" EEK_SYMBOL_CATEGORY_LETTER # Arabic_qaf ق ARABIC LETTER QAF +0x05e3 "ك" EEK_SYMBOL_CATEGORY_LETTER # Arabic_kaf ك ARABIC LETTER KAF +0x05e4 "ل" EEK_SYMBOL_CATEGORY_LETTER # Arabic_lam ل ARABIC LETTER LAM +0x05e5 "م" EEK_SYMBOL_CATEGORY_LETTER # Arabic_meem م ARABIC LETTER MEEM +0x05e6 "ن" EEK_SYMBOL_CATEGORY_LETTER # Arabic_noon ن ARABIC LETTER NOON +0x05e7 "ه" EEK_SYMBOL_CATEGORY_LETTER # Arabic_ha ه ARABIC LETTER HEH +0x05e8 "و" EEK_SYMBOL_CATEGORY_LETTER # Arabic_waw و ARABIC LETTER WAW +0x05e9 "ى" EEK_SYMBOL_CATEGORY_LETTER # Arabic_alefmaksura ى ARABIC LETTER ALEF MAKSURA +0x05ea "ي" EEK_SYMBOL_CATEGORY_LETTER # Arabic_yeh ي ARABIC LETTER YEH +0x05eb "ً" EEK_SYMBOL_CATEGORY_LETTER # Arabic_fathatan ً ARABIC FATHATAN +0x05ec "ٌ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_dammatan ٌ ARABIC DAMMATAN +0x05ed "ٍ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_kasratan ٍ ARABIC KASRATAN +0x05ee "َ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_fatha َ ARABIC FATHA +0x05ef "ُ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_damma ُ ARABIC DAMMA +0x05f0 "ِ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_kasra ِ ARABIC KASRA +0x05f1 "ّ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_shadda ّ ARABIC SHADDA +0x05f2 "ْ" EEK_SYMBOL_CATEGORY_LETTER # Arabic_sukun ْ ARABIC SUKUN +0x06a1 "ђ" EEK_SYMBOL_CATEGORY_LETTER # Serbian_dje ђ CYRILLIC SMALL LETTER DJE +0x06a2 "ѓ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_gje ѓ CYRILLIC SMALL LETTER GJE +0x06a3 "ё" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_io ё CYRILLIC SMALL LETTER IO +0x06a4 "є" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_ie є CYRILLIC SMALL LETTER UKRAINIAN IE +0x06a5 "ѕ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_dse ѕ CYRILLIC SMALL LETTER DZE +0x06a6 "і" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_i і CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I +0x06a7 "ї" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_yi ї CYRILLIC SMALL LETTER YI +0x06a8 "ј" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_je ј CYRILLIC SMALL LETTER JE +0x06a9 "љ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_lje љ CYRILLIC SMALL LETTER LJE +0x06aa "њ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_nje њ CYRILLIC SMALL LETTER NJE +0x06ab "ћ" EEK_SYMBOL_CATEGORY_LETTER # Serbian_tshe ћ CYRILLIC SMALL LETTER TSHE +0x06ac "ќ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_kje ќ CYRILLIC SMALL LETTER KJE +0x06ad "ґ" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_ghe_with_upturn ґ CYRILLIC SMALL LETTER GHE WITH UPTURN +0x06ae "ў" EEK_SYMBOL_CATEGORY_LETTER # Byelorussian_shortu ў CYRILLIC SMALL LETTER SHORT U +0x06af "џ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_dzhe џ CYRILLIC SMALL LETTER DZHE +0x06b0 "№" EEK_SYMBOL_CATEGORY_LETTER # numerosign № NUMERO SIGN +0x06b1 "Ђ" EEK_SYMBOL_CATEGORY_LETTER # Serbian_DJE Ђ CYRILLIC CAPITAL LETTER DJE +0x06b2 "Ѓ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_GJE Ѓ CYRILLIC CAPITAL LETTER GJE +0x06b3 "Ё" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_IO Ё CYRILLIC CAPITAL LETTER IO +0x06b4 "Є" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_IE Є CYRILLIC CAPITAL LETTER UKRAINIAN IE +0x06b5 "Ѕ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_DSE Ѕ CYRILLIC CAPITAL LETTER DZE +0x06b6 "І" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_I І CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I +0x06b7 "Ї" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_YI Ї CYRILLIC CAPITAL LETTER YI +0x06b8 "Ј" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_JE Ј CYRILLIC CAPITAL LETTER JE +0x06b9 "Љ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_LJE Љ CYRILLIC CAPITAL LETTER LJE +0x06ba "Њ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_NJE Њ CYRILLIC CAPITAL LETTER NJE +0x06bb "Ћ" EEK_SYMBOL_CATEGORY_LETTER # Serbian_TSHE Ћ CYRILLIC CAPITAL LETTER TSHE +0x06bc "Ќ" EEK_SYMBOL_CATEGORY_LETTER # Macedonia_KJE Ќ CYRILLIC CAPITAL LETTER KJE +0x06bd "Ґ" EEK_SYMBOL_CATEGORY_LETTER # Ukrainian_GHE_WITH_UPTURN Ґ CYRILLIC CAPITAL LETTER GHE WITH UPTURN +0x06be "Ў" EEK_SYMBOL_CATEGORY_LETTER # Byelorussian_SHORTU Ў CYRILLIC CAPITAL LETTER SHORT U +0x06bf "Џ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_DZHE Џ CYRILLIC CAPITAL LETTER DZHE +0x06c0 "ю" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_yu ю CYRILLIC SMALL LETTER YU +0x06c1 "а" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_a а CYRILLIC SMALL LETTER A +0x06c2 "б" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_be б CYRILLIC SMALL LETTER BE +0x06c3 "ц" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_tse ц CYRILLIC SMALL LETTER TSE +0x06c4 "д" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_de д CYRILLIC SMALL LETTER DE +0x06c5 "е" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ie е CYRILLIC SMALL LETTER IE +0x06c6 "ф" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ef ф CYRILLIC SMALL LETTER EF +0x06c7 "г" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ghe г CYRILLIC SMALL LETTER GHE +0x06c8 "х" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ha х CYRILLIC SMALL LETTER HA +0x06c9 "и" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_i и CYRILLIC SMALL LETTER I +0x06ca "й" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_shorti й CYRILLIC SMALL LETTER SHORT I +0x06cb "к" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ka к CYRILLIC SMALL LETTER KA +0x06cc "л" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_el л CYRILLIC SMALL LETTER EL +0x06cd "м" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_em м CYRILLIC SMALL LETTER EM +0x06ce "н" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_en н CYRILLIC SMALL LETTER EN +0x06cf "о" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_o о CYRILLIC SMALL LETTER O +0x06d0 "п" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_pe п CYRILLIC SMALL LETTER PE +0x06d1 "я" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ya я CYRILLIC SMALL LETTER YA +0x06d2 "р" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_er р CYRILLIC SMALL LETTER ER +0x06d3 "с" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_es с CYRILLIC SMALL LETTER ES +0x06d4 "т" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_te т CYRILLIC SMALL LETTER TE +0x06d5 "у" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_u у CYRILLIC SMALL LETTER U +0x06d6 "ж" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_zhe ж CYRILLIC SMALL LETTER ZHE +0x06d7 "в" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ve в CYRILLIC SMALL LETTER VE +0x06d8 "ь" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_softsign ь CYRILLIC SMALL LETTER SOFT SIGN +0x06d9 "ы" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_yeru ы CYRILLIC SMALL LETTER YERU +0x06da "з" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ze з CYRILLIC SMALL LETTER ZE +0x06db "ш" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_sha ш CYRILLIC SMALL LETTER SHA +0x06dc "э" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_e э CYRILLIC SMALL LETTER E +0x06dd "щ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_shcha щ CYRILLIC SMALL LETTER SHCHA +0x06de "ч" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_che ч CYRILLIC SMALL LETTER CHE +0x06df "ъ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_hardsign ъ CYRILLIC SMALL LETTER HARD SIGN +0x06e0 "Ю" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_YU Ю CYRILLIC CAPITAL LETTER YU +0x06e1 "А" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_A А CYRILLIC CAPITAL LETTER A +0x06e2 "Б" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_BE Б CYRILLIC CAPITAL LETTER BE +0x06e3 "Ц" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_TSE Ц CYRILLIC CAPITAL LETTER TSE +0x06e4 "Д" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_DE Д CYRILLIC CAPITAL LETTER DE +0x06e5 "Е" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_IE Е CYRILLIC CAPITAL LETTER IE +0x06e6 "Ф" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_EF Ф CYRILLIC CAPITAL LETTER EF +0x06e7 "Г" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_GHE Г CYRILLIC CAPITAL LETTER GHE +0x06e8 "Х" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_HA Х CYRILLIC CAPITAL LETTER HA +0x06e9 "И" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_I И CYRILLIC CAPITAL LETTER I +0x06ea "Й" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_SHORTI Й CYRILLIC CAPITAL LETTER SHORT I +0x06eb "К" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_KA К CYRILLIC CAPITAL LETTER KA +0x06ec "Л" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_EL Л CYRILLIC CAPITAL LETTER EL +0x06ed "М" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_EM М CYRILLIC CAPITAL LETTER EM +0x06ee "Н" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_EN Н CYRILLIC CAPITAL LETTER EN +0x06ef "О" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_O О CYRILLIC CAPITAL LETTER O +0x06f0 "П" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_PE П CYRILLIC CAPITAL LETTER PE +0x06f1 "Я" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_YA Я CYRILLIC CAPITAL LETTER YA +0x06f2 "Р" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ER Р CYRILLIC CAPITAL LETTER ER +0x06f3 "С" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ES С CYRILLIC CAPITAL LETTER ES +0x06f4 "Т" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_TE Т CYRILLIC CAPITAL LETTER TE +0x06f5 "У" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_U У CYRILLIC CAPITAL LETTER U +0x06f6 "Ж" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ZHE Ж CYRILLIC CAPITAL LETTER ZHE +0x06f7 "В" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_VE В CYRILLIC CAPITAL LETTER VE +0x06f8 "Ь" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_SOFTSIGN Ь CYRILLIC CAPITAL LETTER SOFT SIGN +0x06f9 "Ы" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_YERU Ы CYRILLIC CAPITAL LETTER YERU +0x06fa "З" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_ZE З CYRILLIC CAPITAL LETTER ZE +0x06fb "Ш" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_SHA Ш CYRILLIC CAPITAL LETTER SHA +0x06fc "Э" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_E Э CYRILLIC CAPITAL LETTER E +0x06fd "Щ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_SHCHA Щ CYRILLIC CAPITAL LETTER SHCHA +0x06fe "Ч" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_CHE Ч CYRILLIC CAPITAL LETTER CHE +0x06ff "Ъ" EEK_SYMBOL_CATEGORY_LETTER # Cyrillic_HARDSIGN Ъ CYRILLIC CAPITAL LETTER HARD SIGN +0x07a1 "Ά" EEK_SYMBOL_CATEGORY_LETTER # Geek_ALPHAaccent Ά GREEK CAPITAL LETTER ALPHA WITH TONOS +0x07a2 "Έ" EEK_SYMBOL_CATEGORY_LETTER # Geek_EPSILONaccent Έ GREEK CAPITAL LETTER EPSILON WITH TONOS +0x07a3 "Ή" EEK_SYMBOL_CATEGORY_LETTER # Geek_ETAaccent Ή GREEK CAPITAL LETTER ETA WITH TONOS +0x07a4 "Ί" EEK_SYMBOL_CATEGORY_LETTER # Geek_IOTAaccent Ί GREEK CAPITAL LETTER IOTA WITH TONOS +0x07a5 "Ϊ" EEK_SYMBOL_CATEGORY_LETTER # Geek_IOTAdieresis Ϊ GREEK CAPITAL LETTER IOTA WITH DIALYTIKA +0x07a7 "Ό" EEK_SYMBOL_CATEGORY_LETTER # Geek_OMICRONaccent Ό GREEK CAPITAL LETTER OMICRON WITH TONOS +0x07a8 "Ύ" EEK_SYMBOL_CATEGORY_LETTER # Geek_UPSILONaccent Ύ GREEK CAPITAL LETTER UPSILON WITH TONOS +0x07a9 "Ϋ" EEK_SYMBOL_CATEGORY_LETTER # Geek_UPSILONdieresis Ϋ GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA +0x07ab "Ώ" EEK_SYMBOL_CATEGORY_LETTER # Geek_OMEGAaccent Ώ GREEK CAPITAL LETTER OMEGA WITH TONOS +0x07ae "΅" EEK_SYMBOL_CATEGORY_LETTER # Geek_accentdieresis ΅ GREEK DIALYTIKA TONOS +0x07af "―" EEK_SYMBOL_CATEGORY_LETTER # Geek_horizbar ― HORIZONTAL BAR +0x07b1 "ά" EEK_SYMBOL_CATEGORY_LETTER # Geek_alphaaccent ά GREEK SMALL LETTER ALPHA WITH TONOS +0x07b2 "έ" EEK_SYMBOL_CATEGORY_LETTER # Geek_epsilonaccent έ GREEK SMALL LETTER EPSILON WITH TONOS +0x07b3 "ή" EEK_SYMBOL_CATEGORY_LETTER # Geek_etaaccent ή GREEK SMALL LETTER ETA WITH TONOS +0x07b4 "ί" EEK_SYMBOL_CATEGORY_LETTER # Geek_iotaaccent ί GREEK SMALL LETTER IOTA WITH TONOS +0x07b5 "ϊ" EEK_SYMBOL_CATEGORY_LETTER # Geek_iotadieresis ϊ GREEK SMALL LETTER IOTA WITH DIALYTIKA +0x07b6 "ΐ" EEK_SYMBOL_CATEGORY_LETTER # Geek_iotaaccentdieresis ΐ GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS +0x07b7 "ό" EEK_SYMBOL_CATEGORY_LETTER # Geek_omicronaccent ό GREEK SMALL LETTER OMICRON WITH TONOS +0x07b8 "ύ" EEK_SYMBOL_CATEGORY_LETTER # Geek_upsilonaccent ύ GREEK SMALL LETTER UPSILON WITH TONOS +0x07b9 "ϋ" EEK_SYMBOL_CATEGORY_LETTER # Geek_upsilondieresis ϋ GREEK SMALL LETTER UPSILON WITH DIALYTIKA +0x07ba "ΰ" EEK_SYMBOL_CATEGORY_LETTER # Geek_upsilonaccentdieresis ΰ GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS +0x07bb "ώ" EEK_SYMBOL_CATEGORY_LETTER # Geek_omegaaccent ώ GREEK SMALL LETTER OMEGA WITH TONOS +0x07c1 "Α" EEK_SYMBOL_CATEGORY_LETTER # Geek_ALPHA Α GREEK CAPITAL LETTER ALPHA +0x07c2 "Β" EEK_SYMBOL_CATEGORY_LETTER # Geek_BETA Β GREEK CAPITAL LETTER BETA +0x07c3 "Γ" EEK_SYMBOL_CATEGORY_LETTER # Geek_GAMMA Γ GREEK CAPITAL LETTER GAMMA +0x07c4 "Δ" EEK_SYMBOL_CATEGORY_LETTER # Geek_DELTA Δ GREEK CAPITAL LETTER DELTA +0x07c5 "Ε" EEK_SYMBOL_CATEGORY_LETTER # Geek_EPSILON Ε GREEK CAPITAL LETTER EPSILON +0x07c6 "Ζ" EEK_SYMBOL_CATEGORY_LETTER # Geek_ZETA Ζ GREEK CAPITAL LETTER ZETA +0x07c7 "Η" EEK_SYMBOL_CATEGORY_LETTER # Geek_ETA Η GREEK CAPITAL LETTER ETA +0x07c8 "Θ" EEK_SYMBOL_CATEGORY_LETTER # Geek_THETA Θ GREEK CAPITAL LETTER THETA +0x07c9 "Ι" EEK_SYMBOL_CATEGORY_LETTER # Geek_IOTA Ι GREEK CAPITAL LETTER IOTA +0x07ca "Κ" EEK_SYMBOL_CATEGORY_LETTER # Geek_KAPPA Κ GREEK CAPITAL LETTER KAPPA +0x07cb "Λ" EEK_SYMBOL_CATEGORY_LETTER # Geek_LAMBDA Λ GREEK CAPITAL LETTER LAMDA +0x07cc "Μ" EEK_SYMBOL_CATEGORY_LETTER # Geek_MU Μ GREEK CAPITAL LETTER MU +0x07cd "Ν" EEK_SYMBOL_CATEGORY_LETTER # Geek_NU Ν GREEK CAPITAL LETTER NU +0x07ce "Ξ" EEK_SYMBOL_CATEGORY_LETTER # Geek_XI Ξ GREEK CAPITAL LETTER XI +0x07cf "Ο" EEK_SYMBOL_CATEGORY_LETTER # Geek_OMICRON Ο GREEK CAPITAL LETTER OMICRON +0x07d0 "Π" EEK_SYMBOL_CATEGORY_LETTER # Geek_PI Π GREEK CAPITAL LETTER PI +0x07d1 "Ρ" EEK_SYMBOL_CATEGORY_LETTER # Geek_RHO Ρ GREEK CAPITAL LETTER RHO +0x07d2 "Σ" EEK_SYMBOL_CATEGORY_LETTER # Geek_SIGMA Σ GREEK CAPITAL LETTER SIGMA +0x07d4 "Τ" EEK_SYMBOL_CATEGORY_LETTER # Geek_TAU Τ GREEK CAPITAL LETTER TAU +0x07d5 "Υ" EEK_SYMBOL_CATEGORY_LETTER # Geek_UPSILON Υ GREEK CAPITAL LETTER UPSILON +0x07d6 "Φ" EEK_SYMBOL_CATEGORY_LETTER # Geek_PHI Φ GREEK CAPITAL LETTER PHI +0x07d7 "Χ" EEK_SYMBOL_CATEGORY_LETTER # Geek_CHI Χ GREEK CAPITAL LETTER CHI +0x07d8 "Ψ" EEK_SYMBOL_CATEGORY_LETTER # Geek_PSI Ψ GREEK CAPITAL LETTER PSI +0x07d9 "Ω" EEK_SYMBOL_CATEGORY_LETTER # Geek_OMEGA Ω GREEK CAPITAL LETTER OMEGA +0x07e1 "α" EEK_SYMBOL_CATEGORY_LETTER # Geek_alpha α GREEK SMALL LETTER ALPHA +0x07e2 "β" EEK_SYMBOL_CATEGORY_LETTER # Geek_beta β GREEK SMALL LETTER BETA +0x07e3 "γ" EEK_SYMBOL_CATEGORY_LETTER # Geek_gamma γ GREEK SMALL LETTER GAMMA +0x07e4 "δ" EEK_SYMBOL_CATEGORY_LETTER # Geek_delta δ GREEK SMALL LETTER DELTA +0x07e5 "ε" EEK_SYMBOL_CATEGORY_LETTER # Geek_epsilon ε GREEK SMALL LETTER EPSILON +0x07e6 "ζ" EEK_SYMBOL_CATEGORY_LETTER # Geek_zeta ζ GREEK SMALL LETTER ZETA +0x07e7 "η" EEK_SYMBOL_CATEGORY_LETTER # Geek_eta η GREEK SMALL LETTER ETA +0x07e8 "θ" EEK_SYMBOL_CATEGORY_LETTER # Geek_theta θ GREEK SMALL LETTER THETA +0x07e9 "ι" EEK_SYMBOL_CATEGORY_LETTER # Geek_iota ι GREEK SMALL LETTER IOTA +0x07ea "κ" EEK_SYMBOL_CATEGORY_LETTER # Geek_kappa κ GREEK SMALL LETTER KAPPA +0x07eb "λ" EEK_SYMBOL_CATEGORY_LETTER # Geek_lambda λ GREEK SMALL LETTER LAMDA +0x07ec "μ" EEK_SYMBOL_CATEGORY_LETTER # Geek_mu μ GREEK SMALL LETTER MU +0x07ed "ν" EEK_SYMBOL_CATEGORY_LETTER # Geek_nu ν GREEK SMALL LETTER NU +0x07ee "ξ" EEK_SYMBOL_CATEGORY_LETTER # Geek_xi ξ GREEK SMALL LETTER XI +0x07ef "ο" EEK_SYMBOL_CATEGORY_LETTER # Geek_omicron ο GREEK SMALL LETTER OMICRON +0x07f0 "π" EEK_SYMBOL_CATEGORY_LETTER # Geek_pi π GREEK SMALL LETTER PI +0x07f1 "ρ" EEK_SYMBOL_CATEGORY_LETTER # Geek_rho ρ GREEK SMALL LETTER RHO +0x07f2 "σ" EEK_SYMBOL_CATEGORY_LETTER # Geek_sigma σ GREEK SMALL LETTER SIGMA +0x07f3 "ς" EEK_SYMBOL_CATEGORY_LETTER # Geek_finalsmallsigma ς GREEK SMALL LETTER FINAL SIGMA +0x07f4 "τ" EEK_SYMBOL_CATEGORY_LETTER # Geek_tau τ GREEK SMALL LETTER TAU +0x07f5 "υ" EEK_SYMBOL_CATEGORY_LETTER # Geek_upsilon υ GREEK SMALL LETTER UPSILON +0x07f6 "φ" EEK_SYMBOL_CATEGORY_LETTER # Geek_phi φ GREEK SMALL LETTER PHI +0x07f7 "χ" EEK_SYMBOL_CATEGORY_LETTER # Geek_chi χ GREEK SMALL LETTER CHI +0x07f8 "ψ" EEK_SYMBOL_CATEGORY_LETTER # Geek_psi ψ GREEK SMALL LETTER PSI +0x07f9 "ω" EEK_SYMBOL_CATEGORY_LETTER # Geek_omega ω GREEK SMALL LETTER OMEGA # 0x08a1 leftradical ? ??? # 0x08a2 topleftradical ? ??? # 0x08a3 horizconnector ? ??? -0x08a4 "⌠" EEK_KEYSYM_CATEGORY_LETTER # topintegral ⌠ TOP HALF INTEGRAL -0x08a5 "⌡" EEK_KEYSYM_CATEGORY_LETTER # botintegral ⌡ BOTTOM HALF INTEGRAL -0x08a6 "│" EEK_KEYSYM_CATEGORY_LETTER # vertconnector │ BOX DRAWINGS LIGHT VERTICAL +0x08a4 "⌠" EEK_SYMBOL_CATEGORY_LETTER # topintegral ⌠ TOP HALF INTEGRAL +0x08a5 "⌡" EEK_SYMBOL_CATEGORY_LETTER # botintegral ⌡ BOTTOM HALF INTEGRAL +0x08a6 "│" EEK_SYMBOL_CATEGORY_LETTER # vertconnector │ BOX DRAWINGS LIGHT VERTICAL # 0x08a7 topleftsqbracket ? ??? # 0x08a8 botleftsqbracket ? ??? # 0x08a9 toprightsqbracket ? ??? @@ -428,399 +428,399 @@ # 0x08b5 toprightsummation ? ??? # 0x08b6 botrightsummation ? ??? # 0x08b7 rightmiddlesummation ? ??? -0x08bc "≤" EEK_KEYSYM_CATEGORY_LETTER # lessthanequal ≤ LESS-THAN OR EQUAL TO -0x08bd "≠" EEK_KEYSYM_CATEGORY_LETTER # notequal ≠ NOT EQUAL TO -0x08be "≥" EEK_KEYSYM_CATEGORY_LETTER # greaterthanequal ≥ GREATER-THAN OR EQUAL TO -0x08bf "∫" EEK_KEYSYM_CATEGORY_LETTER # integral ∫ INTEGRAL -0x08c0 "∴" EEK_KEYSYM_CATEGORY_LETTER # therefore ∴ THEREFORE -0x08c1 "∝" EEK_KEYSYM_CATEGORY_LETTER # variation ∝ PROPORTIONAL TO -0x08c2 "∞" EEK_KEYSYM_CATEGORY_LETTER # infinity ∞ INFINITY -0x08c5 "∇" EEK_KEYSYM_CATEGORY_LETTER # nabla ∇ NABLA -0x08c8 "≅" EEK_KEYSYM_CATEGORY_LETTER # approximate ≅ APPROXIMATELY EQUAL TO +0x08bc "≤" EEK_SYMBOL_CATEGORY_LETTER # lessthanequal ≤ LESS-THAN OR EQUAL TO +0x08bd "≠" EEK_SYMBOL_CATEGORY_LETTER # notequal ≠ NOT EQUAL TO +0x08be "≥" EEK_SYMBOL_CATEGORY_LETTER # greaterthanequal ≥ GREATER-THAN OR EQUAL TO +0x08bf "∫" EEK_SYMBOL_CATEGORY_LETTER # integral ∫ INTEGRAL +0x08c0 "∴" EEK_SYMBOL_CATEGORY_LETTER # therefore ∴ THEREFORE +0x08c1 "∝" EEK_SYMBOL_CATEGORY_LETTER # variation ∝ PROPORTIONAL TO +0x08c2 "∞" EEK_SYMBOL_CATEGORY_LETTER # infinity ∞ INFINITY +0x08c5 "∇" EEK_SYMBOL_CATEGORY_LETTER # nabla ∇ NABLA +0x08c8 "≅" EEK_SYMBOL_CATEGORY_LETTER # approximate ≅ APPROXIMATELY EQUAL TO # 0x08c9 similarequal ? ??? -0x08cd "⇔" EEK_KEYSYM_CATEGORY_LETTER # ifonlyif ⇔ LEFT RIGHT DOUBLE ARROW -0x08ce "⇒" EEK_KEYSYM_CATEGORY_LETTER # implies ⇒ RIGHTWARDS DOUBLE ARROW -0x08cf "≡" EEK_KEYSYM_CATEGORY_LETTER # identical ≡ IDENTICAL TO -0x08d6 "√" EEK_KEYSYM_CATEGORY_LETTER # radical √ SQUARE ROOT -0x08da "⊂" EEK_KEYSYM_CATEGORY_LETTER # includedin ⊂ SUBSET OF -0x08db "⊃" EEK_KEYSYM_CATEGORY_LETTER # includes ⊃ SUPERSET OF -0x08dc "∩" EEK_KEYSYM_CATEGORY_LETTER # intersection ∩ INTERSECTION -0x08dd "∪" EEK_KEYSYM_CATEGORY_LETTER # union ∪ UNION -0x08de "∧" EEK_KEYSYM_CATEGORY_LETTER # logicaland ∧ LOGICAL AND -0x08df "∨" EEK_KEYSYM_CATEGORY_LETTER # logicalor ∨ LOGICAL OR -0x08ef "∂" EEK_KEYSYM_CATEGORY_LETTER # partialderivative ∂ PARTIAL DIFFERENTIAL -0x08f6 "ƒ" EEK_KEYSYM_CATEGORY_LETTER # function ƒ LATIN SMALL LETTER F WITH HOOK -0x08fb "←" EEK_KEYSYM_CATEGORY_LETTER # leftarrow ← LEFTWARDS ARROW -0x08fc "↑" EEK_KEYSYM_CATEGORY_LETTER # uparrow ↑ UPWARDS ARROW -0x08fd "→" EEK_KEYSYM_CATEGORY_LETTER # rightarrow → RIGHTWARDS ARROW -0x08fe "↓" EEK_KEYSYM_CATEGORY_LETTER # downarrow ↓ DOWNWARDS ARROW -0x09df "␢" EEK_KEYSYM_CATEGORY_LETTER # blank ␢ BLANK SYMBOL -0x09e0 "◆" EEK_KEYSYM_CATEGORY_LETTER # soliddiamond ◆ BLACK DIAMOND -0x09e1 "▒" EEK_KEYSYM_CATEGORY_LETTER # checkerboard ▒ MEDIUM SHADE -0x09e2 "␉" EEK_KEYSYM_CATEGORY_LETTER # ht ␉ SYMBOL FOR HORIZONTAL TABULATION -0x09e3 "␌" EEK_KEYSYM_CATEGORY_LETTER # ff ␌ SYMBOL FOR FORM FEED -0x09e4 "␍" EEK_KEYSYM_CATEGORY_LETTER # cr ␍ SYMBOL FOR CARRIAGE RETURN -0x09e5 "␊" EEK_KEYSYM_CATEGORY_LETTER # lf ␊ SYMBOL FOR LINE FEED -0x09e8 "␤" EEK_KEYSYM_CATEGORY_LETTER # nl ␤ SYMBOL FOR NEWLINE -0x09e9 "␋" EEK_KEYSYM_CATEGORY_LETTER # vt ␋ SYMBOL FOR VERTICAL TABULATION -0x09ea "┘" EEK_KEYSYM_CATEGORY_LETTER # lowrightcorner ┘ BOX DRAWINGS LIGHT UP AND LEFT -0x09eb "┐" EEK_KEYSYM_CATEGORY_LETTER # uprightcorner ┐ BOX DRAWINGS LIGHT DOWN AND LEFT -0x09ec "┌" EEK_KEYSYM_CATEGORY_LETTER # upleftcorner ┌ BOX DRAWINGS LIGHT DOWN AND RIGHT -0x09ed "└" EEK_KEYSYM_CATEGORY_LETTER # lowleftcorner └ BOX DRAWINGS LIGHT UP AND RIGHT -0x09ee "┼" EEK_KEYSYM_CATEGORY_LETTER # crossinglines ┼ BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL +0x08cd "⇔" EEK_SYMBOL_CATEGORY_LETTER # ifonlyif ⇔ LEFT RIGHT DOUBLE ARROW +0x08ce "⇒" EEK_SYMBOL_CATEGORY_LETTER # implies ⇒ RIGHTWARDS DOUBLE ARROW +0x08cf "≡" EEK_SYMBOL_CATEGORY_LETTER # identical ≡ IDENTICAL TO +0x08d6 "√" EEK_SYMBOL_CATEGORY_LETTER # radical √ SQUARE ROOT +0x08da "⊂" EEK_SYMBOL_CATEGORY_LETTER # includedin ⊂ SUBSET OF +0x08db "⊃" EEK_SYMBOL_CATEGORY_LETTER # includes ⊃ SUPERSET OF +0x08dc "∩" EEK_SYMBOL_CATEGORY_LETTER # intersection ∩ INTERSECTION +0x08dd "∪" EEK_SYMBOL_CATEGORY_LETTER # union ∪ UNION +0x08de "∧" EEK_SYMBOL_CATEGORY_LETTER # logicaland ∧ LOGICAL AND +0x08df "∨" EEK_SYMBOL_CATEGORY_LETTER # logicalor ∨ LOGICAL OR +0x08ef "∂" EEK_SYMBOL_CATEGORY_LETTER # partialderivative ∂ PARTIAL DIFFERENTIAL +0x08f6 "ƒ" EEK_SYMBOL_CATEGORY_LETTER # function ƒ LATIN SMALL LETTER F WITH HOOK +0x08fb "←" EEK_SYMBOL_CATEGORY_LETTER # leftarrow ← LEFTWARDS ARROW +0x08fc "↑" EEK_SYMBOL_CATEGORY_LETTER # uparrow ↑ UPWARDS ARROW +0x08fd "→" EEK_SYMBOL_CATEGORY_LETTER # rightarrow → RIGHTWARDS ARROW +0x08fe "↓" EEK_SYMBOL_CATEGORY_LETTER # downarrow ↓ DOWNWARDS ARROW +0x09df "␢" EEK_SYMBOL_CATEGORY_LETTER # blank ␢ BLANK SYMBOL +0x09e0 "◆" EEK_SYMBOL_CATEGORY_LETTER # soliddiamond ◆ BLACK DIAMOND +0x09e1 "▒" EEK_SYMBOL_CATEGORY_LETTER # checkerboard ▒ MEDIUM SHADE +0x09e2 "␉" EEK_SYMBOL_CATEGORY_LETTER # ht ␉ SYMBOL FOR HORIZONTAL TABULATION +0x09e3 "␌" EEK_SYMBOL_CATEGORY_LETTER # ff ␌ SYMBOL FOR FORM FEED +0x09e4 "␍" EEK_SYMBOL_CATEGORY_LETTER # cr ␍ SYMBOL FOR CARRIAGE RETURN +0x09e5 "␊" EEK_SYMBOL_CATEGORY_LETTER # lf ␊ SYMBOL FOR LINE FEED +0x09e8 "␤" EEK_SYMBOL_CATEGORY_LETTER # nl ␤ SYMBOL FOR NEWLINE +0x09e9 "␋" EEK_SYMBOL_CATEGORY_LETTER # vt ␋ SYMBOL FOR VERTICAL TABULATION +0x09ea "┘" EEK_SYMBOL_CATEGORY_LETTER # lowrightcorner ┘ BOX DRAWINGS LIGHT UP AND LEFT +0x09eb "┐" EEK_SYMBOL_CATEGORY_LETTER # uprightcorner ┐ BOX DRAWINGS LIGHT DOWN AND LEFT +0x09ec "┌" EEK_SYMBOL_CATEGORY_LETTER # upleftcorner ┌ BOX DRAWINGS LIGHT DOWN AND RIGHT +0x09ed "└" EEK_SYMBOL_CATEGORY_LETTER # lowleftcorner └ BOX DRAWINGS LIGHT UP AND RIGHT +0x09ee "┼" EEK_SYMBOL_CATEGORY_LETTER # crossinglines ┼ BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL # 0x09ef horizlinescan1 ? ??? # 0x09f0 horizlinescan3 ? ??? -0x09f1 "─" EEK_KEYSYM_CATEGORY_LETTER # horizlinescan5 ─ BOX DRAWINGS LIGHT HORIZONTAL +0x09f1 "─" EEK_SYMBOL_CATEGORY_LETTER # horizlinescan5 ─ BOX DRAWINGS LIGHT HORIZONTAL # 0x09f2 horizlinescan7 ? ??? # 0x09f3 horizlinescan9 ? ??? -0x09f4 "├" EEK_KEYSYM_CATEGORY_LETTER # leftt ├ BOX DRAWINGS LIGHT VERTICAL AND RIGHT -0x09f5 "┤" EEK_KEYSYM_CATEGORY_LETTER # rightt ┤ BOX DRAWINGS LIGHT VERTICAL AND LEFT -0x09f6 "┴" EEK_KEYSYM_CATEGORY_LETTER # bott ┴ BOX DRAWINGS LIGHT UP AND HORIZONTAL -0x09f7 "┬" EEK_KEYSYM_CATEGORY_LETTER # topt ┬ BOX DRAWINGS LIGHT DOWN AND HORIZONTAL -0x09f8 "│" EEK_KEYSYM_CATEGORY_LETTER # vertbar │ BOX DRAWINGS LIGHT VERTICAL -0x0aa1 " " EEK_KEYSYM_CATEGORY_LETTER # emspace   EM SPACE -0x0aa2 " " EEK_KEYSYM_CATEGORY_LETTER # enspace   EN SPACE -0x0aa3 " " EEK_KEYSYM_CATEGORY_LETTER # em3space   THREE-PER-EM SPACE -0x0aa4 " " EEK_KEYSYM_CATEGORY_LETTER # em4space   FOUR-PER-EM SPACE -0x0aa5 " " EEK_KEYSYM_CATEGORY_LETTER # digitspace   FIGURE SPACE -0x0aa6 " " EEK_KEYSYM_CATEGORY_LETTER # punctspace   PUNCTUATION SPACE -0x0aa7 " " EEK_KEYSYM_CATEGORY_LETTER # thinspace   THIN SPACE -0x0aa8 " " EEK_KEYSYM_CATEGORY_LETTER # hairspace   HAIR SPACE -0x0aa9 "—" EEK_KEYSYM_CATEGORY_LETTER # emdash — EM DASH -0x0aaa "–" EEK_KEYSYM_CATEGORY_LETTER # endash – EN DASH +0x09f4 "├" EEK_SYMBOL_CATEGORY_LETTER # leftt ├ BOX DRAWINGS LIGHT VERTICAL AND RIGHT +0x09f5 "┤" EEK_SYMBOL_CATEGORY_LETTER # rightt ┤ BOX DRAWINGS LIGHT VERTICAL AND LEFT +0x09f6 "┴" EEK_SYMBOL_CATEGORY_LETTER # bott ┴ BOX DRAWINGS LIGHT UP AND HORIZONTAL +0x09f7 "┬" EEK_SYMBOL_CATEGORY_LETTER # topt ┬ BOX DRAWINGS LIGHT DOWN AND HORIZONTAL +0x09f8 "│" EEK_SYMBOL_CATEGORY_LETTER # vertbar │ BOX DRAWINGS LIGHT VERTICAL +0x0aa1 " " EEK_SYMBOL_CATEGORY_LETTER # emspace   EM SPACE +0x0aa2 " " EEK_SYMBOL_CATEGORY_LETTER # enspace   EN SPACE +0x0aa3 " " EEK_SYMBOL_CATEGORY_LETTER # em3space   THREE-PER-EM SPACE +0x0aa4 " " EEK_SYMBOL_CATEGORY_LETTER # em4space   FOUR-PER-EM SPACE +0x0aa5 " " EEK_SYMBOL_CATEGORY_LETTER # digitspace   FIGURE SPACE +0x0aa6 " " EEK_SYMBOL_CATEGORY_LETTER # punctspace   PUNCTUATION SPACE +0x0aa7 " " EEK_SYMBOL_CATEGORY_LETTER # thinspace   THIN SPACE +0x0aa8 " " EEK_SYMBOL_CATEGORY_LETTER # hairspace   HAIR SPACE +0x0aa9 "—" EEK_SYMBOL_CATEGORY_LETTER # emdash — EM DASH +0x0aaa "–" EEK_SYMBOL_CATEGORY_LETTER # endash – EN DASH # 0x0aac signifblank ? ??? -0x0aae "…" EEK_KEYSYM_CATEGORY_LETTER # ellipsis … HORIZONTAL ELLIPSIS +0x0aae "…" EEK_SYMBOL_CATEGORY_LETTER # ellipsis … HORIZONTAL ELLIPSIS # 0x0aaf doubbaselinedot ? ??? -0x0ab0 "⅓" EEK_KEYSYM_CATEGORY_LETTER # onethird ⅓ VULGAR FRACTION ONE THIRD -0x0ab1 "⅔" EEK_KEYSYM_CATEGORY_LETTER # twothirds ⅔ VULGAR FRACTION TWO THIRDS -0x0ab2 "⅕" EEK_KEYSYM_CATEGORY_LETTER # onefifth ⅕ VULGAR FRACTION ONE FIFTH -0x0ab3 "⅖" EEK_KEYSYM_CATEGORY_LETTER # twofifths ⅖ VULGAR FRACTION TWO FIFTHS -0x0ab4 "⅗" EEK_KEYSYM_CATEGORY_LETTER # threefifths ⅗ VULGAR FRACTION THREE FIFTHS -0x0ab5 "⅘" EEK_KEYSYM_CATEGORY_LETTER # fourfifths ⅘ VULGAR FRACTION FOUR FIFTHS -0x0ab6 "⅙" EEK_KEYSYM_CATEGORY_LETTER # onesixth ⅙ VULGAR FRACTION ONE SIXTH -0x0ab7 "⅚" EEK_KEYSYM_CATEGORY_LETTER # fivesixths ⅚ VULGAR FRACTION FIVE SIXTHS -0x0ab8 "℅" EEK_KEYSYM_CATEGORY_LETTER # careof ℅ CARE OF -0x0abb "‒" EEK_KEYSYM_CATEGORY_LETTER # figdash ‒ FIGURE DASH -0x0abc "〈" EEK_KEYSYM_CATEGORY_LETTER # leftanglebracket 〈 LEFT-POINTING ANGLE BRACKET -0x0abd "." EEK_KEYSYM_CATEGORY_LETTER # decimalpoint . FULL STOP -0x0abe "〉" EEK_KEYSYM_CATEGORY_LETTER # rightanglebracket 〉 RIGHT-POINTING ANGLE BRACKET +0x0ab0 "⅓" EEK_SYMBOL_CATEGORY_LETTER # onethird ⅓ VULGAR FRACTION ONE THIRD +0x0ab1 "⅔" EEK_SYMBOL_CATEGORY_LETTER # twothirds ⅔ VULGAR FRACTION TWO THIRDS +0x0ab2 "⅕" EEK_SYMBOL_CATEGORY_LETTER # onefifth ⅕ VULGAR FRACTION ONE FIFTH +0x0ab3 "⅖" EEK_SYMBOL_CATEGORY_LETTER # twofifths ⅖ VULGAR FRACTION TWO FIFTHS +0x0ab4 "⅗" EEK_SYMBOL_CATEGORY_LETTER # threefifths ⅗ VULGAR FRACTION THREE FIFTHS +0x0ab5 "⅘" EEK_SYMBOL_CATEGORY_LETTER # fourfifths ⅘ VULGAR FRACTION FOUR FIFTHS +0x0ab6 "⅙" EEK_SYMBOL_CATEGORY_LETTER # onesixth ⅙ VULGAR FRACTION ONE SIXTH +0x0ab7 "⅚" EEK_SYMBOL_CATEGORY_LETTER # fivesixths ⅚ VULGAR FRACTION FIVE SIXTHS +0x0ab8 "℅" EEK_SYMBOL_CATEGORY_LETTER # careof ℅ CARE OF +0x0abb "‒" EEK_SYMBOL_CATEGORY_LETTER # figdash ‒ FIGURE DASH +0x0abc "〈" EEK_SYMBOL_CATEGORY_LETTER # leftanglebracket 〈 LEFT-POINTING ANGLE BRACKET +0x0abd "." EEK_SYMBOL_CATEGORY_LETTER # decimalpoint . FULL STOP +0x0abe "〉" EEK_SYMBOL_CATEGORY_LETTER # rightanglebracket 〉 RIGHT-POINTING ANGLE BRACKET # 0x0abf marker ? ??? -0x0ac3 "⅛" EEK_KEYSYM_CATEGORY_LETTER # oneeighth ⅛ VULGAR FRACTION ONE EIGHTH -0x0ac4 "⅜" EEK_KEYSYM_CATEGORY_LETTER # threeeighths ⅜ VULGAR FRACTION THREE EIGHTHS -0x0ac5 "⅝" EEK_KEYSYM_CATEGORY_LETTER # fiveeighths ⅝ VULGAR FRACTION FIVE EIGHTHS -0x0ac6 "⅞" EEK_KEYSYM_CATEGORY_LETTER # seveneighths ⅞ VULGAR FRACTION SEVEN EIGHTHS -0x0ac9 "™" EEK_KEYSYM_CATEGORY_LETTER # trademark ™ TRADE MARK SIGN -0x0aca "☓" EEK_KEYSYM_CATEGORY_LETTER # signaturemark ☓ SALTIRE +0x0ac3 "⅛" EEK_SYMBOL_CATEGORY_LETTER # oneeighth ⅛ VULGAR FRACTION ONE EIGHTH +0x0ac4 "⅜" EEK_SYMBOL_CATEGORY_LETTER # threeeighths ⅜ VULGAR FRACTION THREE EIGHTHS +0x0ac5 "⅝" EEK_SYMBOL_CATEGORY_LETTER # fiveeighths ⅝ VULGAR FRACTION FIVE EIGHTHS +0x0ac6 "⅞" EEK_SYMBOL_CATEGORY_LETTER # seveneighths ⅞ VULGAR FRACTION SEVEN EIGHTHS +0x0ac9 "™" EEK_SYMBOL_CATEGORY_LETTER # trademark ™ TRADE MARK SIGN +0x0aca "☓" EEK_SYMBOL_CATEGORY_LETTER # signaturemark ☓ SALTIRE # 0x0acb trademarkincircle ? ??? -0x0acc "◁" EEK_KEYSYM_CATEGORY_LETTER # leftopentriangle ◁ WHITE LEFT-POINTING TRIANGLE -0x0acd "▷" EEK_KEYSYM_CATEGORY_LETTER # rightopentriangle ▷ WHITE RIGHT-POINTING TRIANGLE -0x0ace "○" EEK_KEYSYM_CATEGORY_LETTER # emopencircle ○ WHITE CIRCLE -0x0acf "□" EEK_KEYSYM_CATEGORY_LETTER # emopenrectangle □ WHITE SQUARE -0x0ad0 "‘" EEK_KEYSYM_CATEGORY_LETTER # leftsinglequotemark ‘ LEFT SINGLE QUOTATION MARK -0x0ad1 "’" EEK_KEYSYM_CATEGORY_LETTER # rightsinglequotemark ’ RIGHT SINGLE QUOTATION MARK -0x0ad2 "“" EEK_KEYSYM_CATEGORY_LETTER # leftdoublequotemark “ LEFT DOUBLE QUOTATION MARK -0x0ad3 "”" EEK_KEYSYM_CATEGORY_LETTER # rightdoublequotemark ” RIGHT DOUBLE QUOTATION MARK -0x0ad4 "℞" EEK_KEYSYM_CATEGORY_LETTER # prescription ℞ PRESCRIPTION TAKE -0x0ad6 "′" EEK_KEYSYM_CATEGORY_LETTER # minutes ′ PRIME -0x0ad7 "″" EEK_KEYSYM_CATEGORY_LETTER # seconds ″ DOUBLE PRIME -0x0ad9 "✝" EEK_KEYSYM_CATEGORY_LETTER # latincross ✝ LATIN CROSS +0x0acc "◁" EEK_SYMBOL_CATEGORY_LETTER # leftopentriangle ◁ WHITE LEFT-POINTING TRIANGLE +0x0acd "▷" EEK_SYMBOL_CATEGORY_LETTER # rightopentriangle ▷ WHITE RIGHT-POINTING TRIANGLE +0x0ace "○" EEK_SYMBOL_CATEGORY_LETTER # emopencircle ○ WHITE CIRCLE +0x0acf "□" EEK_SYMBOL_CATEGORY_LETTER # emopenrectangle □ WHITE SQUARE +0x0ad0 "‘" EEK_SYMBOL_CATEGORY_LETTER # leftsinglequotemark ‘ LEFT SINGLE QUOTATION MARK +0x0ad1 "’" EEK_SYMBOL_CATEGORY_LETTER # rightsinglequotemark ’ RIGHT SINGLE QUOTATION MARK +0x0ad2 "“" EEK_SYMBOL_CATEGORY_LETTER # leftdoublequotemark “ LEFT DOUBLE QUOTATION MARK +0x0ad3 "”" EEK_SYMBOL_CATEGORY_LETTER # rightdoublequotemark ” RIGHT DOUBLE QUOTATION MARK +0x0ad4 "℞" EEK_SYMBOL_CATEGORY_LETTER # prescription ℞ PRESCRIPTION TAKE +0x0ad6 "′" EEK_SYMBOL_CATEGORY_LETTER # minutes ′ PRIME +0x0ad7 "″" EEK_SYMBOL_CATEGORY_LETTER # seconds ″ DOUBLE PRIME +0x0ad9 "✝" EEK_SYMBOL_CATEGORY_LETTER # latincross ✝ LATIN CROSS # 0x0ada hexagram ? ??? -0x0adb "▬" EEK_KEYSYM_CATEGORY_LETTER # filledrectbullet ▬ BLACK RECTANGLE -0x0adc "◀" EEK_KEYSYM_CATEGORY_LETTER # filledlefttribullet ◀ BLACK LEFT-POINTING TRIANGLE -0x0add "▶" EEK_KEYSYM_CATEGORY_LETTER # filledrighttribullet ▶ BLACK RIGHT-POINTING TRIANGLE -0x0ade "●" EEK_KEYSYM_CATEGORY_LETTER # emfilledcircle ● BLACK CIRCLE -0x0adf "■" EEK_KEYSYM_CATEGORY_LETTER # emfilledrect ■ BLACK SQUARE -0x0ae0 "◦" EEK_KEYSYM_CATEGORY_LETTER # enopencircbullet ◦ WHITE BULLET -0x0ae1 "▫" EEK_KEYSYM_CATEGORY_LETTER # enopensquarebullet ▫ WHITE SMALL SQUARE -0x0ae2 "▭" EEK_KEYSYM_CATEGORY_LETTER # openrectbullet ▭ WHITE RECTANGLE -0x0ae3 "△" EEK_KEYSYM_CATEGORY_LETTER # opentribulletup △ WHITE UP-POINTING TRIANGLE -0x0ae4 "▽" EEK_KEYSYM_CATEGORY_LETTER # opentribulletdown ▽ WHITE DOWN-POINTING TRIANGLE -0x0ae5 "☆" EEK_KEYSYM_CATEGORY_LETTER # openstar ☆ WHITE STAR -0x0ae6 "•" EEK_KEYSYM_CATEGORY_LETTER # enfilledcircbullet • BULLET -0x0ae7 "▪" EEK_KEYSYM_CATEGORY_LETTER # enfilledsqbullet ▪ BLACK SMALL SQUARE -0x0ae8 "▲" EEK_KEYSYM_CATEGORY_LETTER # filledtribulletup ▲ BLACK UP-POINTING TRIANGLE -0x0ae9 "▼" EEK_KEYSYM_CATEGORY_LETTER # filledtribulletdown ▼ BLACK DOWN-POINTING TRIANGLE -0x0aea "☜" EEK_KEYSYM_CATEGORY_LETTER # leftpointer ☜ WHITE LEFT POINTING INDEX -0x0aeb "☞" EEK_KEYSYM_CATEGORY_LETTER # rightpointer ☞ WHITE RIGHT POINTING INDEX -0x0aec "♣" EEK_KEYSYM_CATEGORY_LETTER # club ♣ BLACK CLUB SUIT -0x0aed "♦" EEK_KEYSYM_CATEGORY_LETTER # diamond ♦ BLACK DIAMOND SUIT -0x0aee "♥" EEK_KEYSYM_CATEGORY_LETTER # heart ♥ BLACK HEART SUIT -0x0af0 "✠" EEK_KEYSYM_CATEGORY_LETTER # maltesecross ✠ MALTESE CROSS -0x0af1 "†" EEK_KEYSYM_CATEGORY_LETTER # dagger † DAGGER -0x0af2 "‡" EEK_KEYSYM_CATEGORY_LETTER # doubledagger ‡ DOUBLE DAGGER -0x0af3 "✓" EEK_KEYSYM_CATEGORY_LETTER # checkmark ✓ CHECK MARK -0x0af4 "✗" EEK_KEYSYM_CATEGORY_LETTER # ballotcross ✗ BALLOT X -0x0af5 "♯" EEK_KEYSYM_CATEGORY_LETTER # musicalsharp ♯ MUSIC SHARP SIGN -0x0af6 "♭" EEK_KEYSYM_CATEGORY_LETTER # musicalflat ♭ MUSIC FLAT SIGN -0x0af7 "♂" EEK_KEYSYM_CATEGORY_LETTER # malesymbol ♂ MALE SIGN -0x0af8 "♀" EEK_KEYSYM_CATEGORY_LETTER # femalesymbol ♀ FEMALE SIGN -0x0af9 "☎" EEK_KEYSYM_CATEGORY_LETTER # telephone ☎ BLACK TELEPHONE -0x0afa "⌕" EEK_KEYSYM_CATEGORY_LETTER # telephonerecorder ⌕ TELEPHONE RECORDER -0x0afb "℗" EEK_KEYSYM_CATEGORY_LETTER # phonographcopyright ℗ SOUND RECORDING COPYRIGHT -0x0afc "‸" EEK_KEYSYM_CATEGORY_LETTER # caret ‸ CARET -0x0afd "‚" EEK_KEYSYM_CATEGORY_LETTER # singlelowquotemark ‚ SINGLE LOW-9 QUOTATION MARK -0x0afe "„" EEK_KEYSYM_CATEGORY_LETTER # doublelowquotemark „ DOUBLE LOW-9 QUOTATION MARK +0x0adb "▬" EEK_SYMBOL_CATEGORY_LETTER # filledrectbullet ▬ BLACK RECTANGLE +0x0adc "◀" EEK_SYMBOL_CATEGORY_LETTER # filledlefttribullet ◀ BLACK LEFT-POINTING TRIANGLE +0x0add "▶" EEK_SYMBOL_CATEGORY_LETTER # filledrighttribullet ▶ BLACK RIGHT-POINTING TRIANGLE +0x0ade "●" EEK_SYMBOL_CATEGORY_LETTER # emfilledcircle ● BLACK CIRCLE +0x0adf "■" EEK_SYMBOL_CATEGORY_LETTER # emfilledrect ■ BLACK SQUARE +0x0ae0 "◦" EEK_SYMBOL_CATEGORY_LETTER # enopencircbullet ◦ WHITE BULLET +0x0ae1 "▫" EEK_SYMBOL_CATEGORY_LETTER # enopensquarebullet ▫ WHITE SMALL SQUARE +0x0ae2 "▭" EEK_SYMBOL_CATEGORY_LETTER # openrectbullet ▭ WHITE RECTANGLE +0x0ae3 "△" EEK_SYMBOL_CATEGORY_LETTER # opentribulletup △ WHITE UP-POINTING TRIANGLE +0x0ae4 "▽" EEK_SYMBOL_CATEGORY_LETTER # opentribulletdown ▽ WHITE DOWN-POINTING TRIANGLE +0x0ae5 "☆" EEK_SYMBOL_CATEGORY_LETTER # openstar ☆ WHITE STAR +0x0ae6 "•" EEK_SYMBOL_CATEGORY_LETTER # enfilledcircbullet • BULLET +0x0ae7 "▪" EEK_SYMBOL_CATEGORY_LETTER # enfilledsqbullet ▪ BLACK SMALL SQUARE +0x0ae8 "▲" EEK_SYMBOL_CATEGORY_LETTER # filledtribulletup ▲ BLACK UP-POINTING TRIANGLE +0x0ae9 "▼" EEK_SYMBOL_CATEGORY_LETTER # filledtribulletdown ▼ BLACK DOWN-POINTING TRIANGLE +0x0aea "☜" EEK_SYMBOL_CATEGORY_LETTER # leftpointer ☜ WHITE LEFT POINTING INDEX +0x0aeb "☞" EEK_SYMBOL_CATEGORY_LETTER # rightpointer ☞ WHITE RIGHT POINTING INDEX +0x0aec "♣" EEK_SYMBOL_CATEGORY_LETTER # club ♣ BLACK CLUB SUIT +0x0aed "♦" EEK_SYMBOL_CATEGORY_LETTER # diamond ♦ BLACK DIAMOND SUIT +0x0aee "♥" EEK_SYMBOL_CATEGORY_LETTER # heart ♥ BLACK HEART SUIT +0x0af0 "✠" EEK_SYMBOL_CATEGORY_LETTER # maltesecross ✠ MALTESE CROSS +0x0af1 "†" EEK_SYMBOL_CATEGORY_LETTER # dagger † DAGGER +0x0af2 "‡" EEK_SYMBOL_CATEGORY_LETTER # doubledagger ‡ DOUBLE DAGGER +0x0af3 "✓" EEK_SYMBOL_CATEGORY_LETTER # checkmark ✓ CHECK MARK +0x0af4 "✗" EEK_SYMBOL_CATEGORY_LETTER # ballotcross ✗ BALLOT X +0x0af5 "♯" EEK_SYMBOL_CATEGORY_LETTER # musicalsharp ♯ MUSIC SHARP SIGN +0x0af6 "♭" EEK_SYMBOL_CATEGORY_LETTER # musicalflat ♭ MUSIC FLAT SIGN +0x0af7 "♂" EEK_SYMBOL_CATEGORY_LETTER # malesymbol ♂ MALE SIGN +0x0af8 "♀" EEK_SYMBOL_CATEGORY_LETTER # femalesymbol ♀ FEMALE SIGN +0x0af9 "☎" EEK_SYMBOL_CATEGORY_LETTER # telephone ☎ BLACK TELEPHONE +0x0afa "⌕" EEK_SYMBOL_CATEGORY_LETTER # telephonerecorder ⌕ TELEPHONE RECORDER +0x0afb "℗" EEK_SYMBOL_CATEGORY_LETTER # phonographcopyright ℗ SOUND RECORDING COPYRIGHT +0x0afc "‸" EEK_SYMBOL_CATEGORY_LETTER # caret ‸ CARET +0x0afd "‚" EEK_SYMBOL_CATEGORY_LETTER # singlelowquotemark ‚ SINGLE LOW-9 QUOTATION MARK +0x0afe "„" EEK_SYMBOL_CATEGORY_LETTER # doublelowquotemark „ DOUBLE LOW-9 QUOTATION MARK # 0x0aff cursor ? ??? -0x0ba3 "<" EEK_KEYSYM_CATEGORY_LETTER # leftcaret < LESS-THAN SIGN -0x0ba6 ">" EEK_KEYSYM_CATEGORY_LETTER # rightcaret > GREATER-THAN SIGN -0x0ba8 "∨" EEK_KEYSYM_CATEGORY_LETTER # downcaret ∨ LOGICAL OR -0x0ba9 "∧" EEK_KEYSYM_CATEGORY_LETTER # upcaret ∧ LOGICAL AND -0x0bc0 "¯" EEK_KEYSYM_CATEGORY_LETTER # overbar ¯ MACRON -0x0bc2 "⊤" EEK_KEYSYM_CATEGORY_LETTER # downtack ⊤ DOWN TACK -0x0bc3 "∩" EEK_KEYSYM_CATEGORY_LETTER # upshoe ∩ INTERSECTION -0x0bc4 "⌊" EEK_KEYSYM_CATEGORY_LETTER # downstile ⌊ LEFT FLOOR -0x0bc6 "_" EEK_KEYSYM_CATEGORY_LETTER # underbar _ LOW LINE -0x0bca "∘" EEK_KEYSYM_CATEGORY_LETTER # jot ∘ RING OPERATOR -0x0bcc "⎕" EEK_KEYSYM_CATEGORY_LETTER # quad ⎕ APL FUNCTIONAL SYMBOL QUAD (Unicode 3.0) -0x0bce "⊥" EEK_KEYSYM_CATEGORY_LETTER # uptack ⊥ UP TACK -0x0bcf "○" EEK_KEYSYM_CATEGORY_LETTER # circle ○ WHITE CIRCLE -0x0bd3 "⌈" EEK_KEYSYM_CATEGORY_LETTER # upstile ⌈ LEFT CEILING -0x0bd6 "∪" EEK_KEYSYM_CATEGORY_LETTER # downshoe ∪ UNION -0x0bd8 "⊃" EEK_KEYSYM_CATEGORY_LETTER # rightshoe ⊃ SUPERSET OF -0x0bda "⊂" EEK_KEYSYM_CATEGORY_LETTER # leftshoe ⊂ SUBSET OF -0x0bdc "⊣" EEK_KEYSYM_CATEGORY_LETTER # lefttack ⊣ LEFT TACK -0x0bfc "⊢" EEK_KEYSYM_CATEGORY_LETTER # righttack ⊢ RIGHT TACK -0x0cdf "‗" EEK_KEYSYM_CATEGORY_LETTER # hebrew_doublelowline ‗ DOUBLE LOW LINE -0x0ce0 "א" EEK_KEYSYM_CATEGORY_LETTER # hebrew_aleph א HEBREW LETTER ALEF -0x0ce1 "ב" EEK_KEYSYM_CATEGORY_LETTER # hebrew_bet ב HEBREW LETTER BET -0x0ce2 "ג" EEK_KEYSYM_CATEGORY_LETTER # hebrew_gimel ג HEBREW LETTER GIMEL -0x0ce3 "ד" EEK_KEYSYM_CATEGORY_LETTER # hebrew_dalet ד HEBREW LETTER DALET -0x0ce4 "ה" EEK_KEYSYM_CATEGORY_LETTER # hebrew_he ה HEBREW LETTER HE -0x0ce5 "ו" EEK_KEYSYM_CATEGORY_LETTER # hebrew_waw ו HEBREW LETTER VAV -0x0ce6 "ז" EEK_KEYSYM_CATEGORY_LETTER # hebrew_zain ז HEBREW LETTER ZAYIN -0x0ce7 "ח" EEK_KEYSYM_CATEGORY_LETTER # hebrew_chet ח HEBREW LETTER HET -0x0ce8 "ט" EEK_KEYSYM_CATEGORY_LETTER # hebrew_tet ט HEBREW LETTER TET -0x0ce9 "י" EEK_KEYSYM_CATEGORY_LETTER # hebrew_yod י HEBREW LETTER YOD -0x0cea "ך" EEK_KEYSYM_CATEGORY_LETTER # hebrew_finalkaph ך HEBREW LETTER FINAL KAF -0x0ceb "כ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_kaph כ HEBREW LETTER KAF -0x0cec "ל" EEK_KEYSYM_CATEGORY_LETTER # hebrew_lamed ל HEBREW LETTER LAMED -0x0ced "ם" EEK_KEYSYM_CATEGORY_LETTER # hebrew_finalmem ם HEBREW LETTER FINAL MEM -0x0cee "מ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_mem מ HEBREW LETTER MEM -0x0cef "ן" EEK_KEYSYM_CATEGORY_LETTER # hebrew_finalnun ן HEBREW LETTER FINAL NUN -0x0cf0 "נ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_nun נ HEBREW LETTER NUN -0x0cf1 "ס" EEK_KEYSYM_CATEGORY_LETTER # hebrew_samech ס HEBREW LETTER SAMEKH -0x0cf2 "ע" EEK_KEYSYM_CATEGORY_LETTER # hebrew_ayin ע HEBREW LETTER AYIN -0x0cf3 "ף" EEK_KEYSYM_CATEGORY_LETTER # hebrew_finalpe ף HEBREW LETTER FINAL PE -0x0cf4 "פ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_pe פ HEBREW LETTER PE -0x0cf5 "ץ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_finalzade ץ HEBREW LETTER FINAL TSADI -0x0cf6 "צ" EEK_KEYSYM_CATEGORY_LETTER # hebrew_zade צ HEBREW LETTER TSADI -0x0cf7 "ק" EEK_KEYSYM_CATEGORY_LETTER # hebrew_qoph ק HEBREW LETTER QOF -0x0cf8 "ר" EEK_KEYSYM_CATEGORY_LETTER # hebrew_resh ר HEBREW LETTER RESH -0x0cf9 "ש" EEK_KEYSYM_CATEGORY_LETTER # hebrew_shin ש HEBREW LETTER SHIN -0x0cfa "ת" EEK_KEYSYM_CATEGORY_LETTER # hebrew_taw ת HEBREW LETTER TAV -0x0da1 "ก" EEK_KEYSYM_CATEGORY_LETTER # Thai_kokai ก THAI CHARACTER KO KAI -0x0da2 "ข" EEK_KEYSYM_CATEGORY_LETTER # Thai_khokhai ข THAI CHARACTER KHO KHAI -0x0da3 "ฃ" EEK_KEYSYM_CATEGORY_LETTER # Thai_khokhuat ฃ THAI CHARACTER KHO KHUAT -0x0da4 "ค" EEK_KEYSYM_CATEGORY_LETTER # Thai_khokhwai ค THAI CHARACTER KHO KHWAI -0x0da5 "ฅ" EEK_KEYSYM_CATEGORY_LETTER # Thai_khokhon ฅ THAI CHARACTER KHO KHON -0x0da6 "ฆ" EEK_KEYSYM_CATEGORY_LETTER # Thai_khorakhang ฆ THAI CHARACTER KHO RAKHANG -0x0da7 "ง" EEK_KEYSYM_CATEGORY_LETTER # Thai_ngongu ง THAI CHARACTER NGO NGU -0x0da8 "จ" EEK_KEYSYM_CATEGORY_LETTER # Thai_chochan จ THAI CHARACTER CHO CHAN -0x0da9 "ฉ" EEK_KEYSYM_CATEGORY_LETTER # Thai_choching ฉ THAI CHARACTER CHO CHING -0x0daa "ช" EEK_KEYSYM_CATEGORY_LETTER # Thai_chochang ช THAI CHARACTER CHO CHANG -0x0dab "ซ" EEK_KEYSYM_CATEGORY_LETTER # Thai_soso ซ THAI CHARACTER SO SO -0x0dac "ฌ" EEK_KEYSYM_CATEGORY_LETTER # Thai_chochoe ฌ THAI CHARACTER CHO CHOE -0x0dad "ญ" EEK_KEYSYM_CATEGORY_LETTER # Thai_yoying ญ THAI CHARACTER YO YING -0x0dae "ฎ" EEK_KEYSYM_CATEGORY_LETTER # Thai_dochada ฎ THAI CHARACTER DO CHADA -0x0daf "ฏ" EEK_KEYSYM_CATEGORY_LETTER # Thai_topatak ฏ THAI CHARACTER TO PATAK -0x0db0 "ฐ" EEK_KEYSYM_CATEGORY_LETTER # Thai_thothan ฐ THAI CHARACTER THO THAN -0x0db1 "ฑ" EEK_KEYSYM_CATEGORY_LETTER # Thai_thonangmontho ฑ THAI CHARACTER THO NANGMONTHO -0x0db2 "ฒ" EEK_KEYSYM_CATEGORY_LETTER # Thai_thophuthao ฒ THAI CHARACTER THO PHUTHAO -0x0db3 "ณ" EEK_KEYSYM_CATEGORY_LETTER # Thai_nonen ณ THAI CHARACTER NO NEN -0x0db4 "ด" EEK_KEYSYM_CATEGORY_LETTER # Thai_dodek ด THAI CHARACTER DO DEK -0x0db5 "ต" EEK_KEYSYM_CATEGORY_LETTER # Thai_totao ต THAI CHARACTER TO TAO -0x0db6 "ถ" EEK_KEYSYM_CATEGORY_LETTER # Thai_thothung ถ THAI CHARACTER THO THUNG -0x0db7 "ท" EEK_KEYSYM_CATEGORY_LETTER # Thai_thothahan ท THAI CHARACTER THO THAHAN -0x0db8 "ธ" EEK_KEYSYM_CATEGORY_LETTER # Thai_thothong ธ THAI CHARACTER THO THONG -0x0db9 "น" EEK_KEYSYM_CATEGORY_LETTER # Thai_nonu น THAI CHARACTER NO NU -0x0dba "บ" EEK_KEYSYM_CATEGORY_LETTER # Thai_bobaimai บ THAI CHARACTER BO BAIMAI -0x0dbb "ป" EEK_KEYSYM_CATEGORY_LETTER # Thai_popla ป THAI CHARACTER PO PLA -0x0dbc "ผ" EEK_KEYSYM_CATEGORY_LETTER # Thai_phophung ผ THAI CHARACTER PHO PHUNG -0x0dbd "ฝ" EEK_KEYSYM_CATEGORY_LETTER # Thai_fofa ฝ THAI CHARACTER FO FA -0x0dbe "พ" EEK_KEYSYM_CATEGORY_LETTER # Thai_phophan พ THAI CHARACTER PHO PHAN -0x0dbf "ฟ" EEK_KEYSYM_CATEGORY_LETTER # Thai_fofan ฟ THAI CHARACTER FO FAN -0x0dc0 "ภ" EEK_KEYSYM_CATEGORY_LETTER # Thai_phosamphao ภ THAI CHARACTER PHO SAMPHAO -0x0dc1 "ม" EEK_KEYSYM_CATEGORY_LETTER # Thai_moma ม THAI CHARACTER MO MA -0x0dc2 "ย" EEK_KEYSYM_CATEGORY_LETTER # Thai_yoyak ย THAI CHARACTER YO YAK -0x0dc3 "ร" EEK_KEYSYM_CATEGORY_LETTER # Thai_rorua ร THAI CHARACTER RO RUA -0x0dc4 "ฤ" EEK_KEYSYM_CATEGORY_LETTER # Thai_ru ฤ THAI CHARACTER RU -0x0dc5 "ล" EEK_KEYSYM_CATEGORY_LETTER # Thai_loling ล THAI CHARACTER LO LING -0x0dc6 "ฦ" EEK_KEYSYM_CATEGORY_LETTER # Thai_lu ฦ THAI CHARACTER LU -0x0dc7 "ว" EEK_KEYSYM_CATEGORY_LETTER # Thai_wowaen ว THAI CHARACTER WO WAEN -0x0dc8 "ศ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sosala ศ THAI CHARACTER SO SALA -0x0dc9 "ษ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sorusi ษ THAI CHARACTER SO RUSI -0x0dca "ส" EEK_KEYSYM_CATEGORY_LETTER # Thai_sosua ส THAI CHARACTER SO SUA -0x0dcb "ห" EEK_KEYSYM_CATEGORY_LETTER # Thai_hohip ห THAI CHARACTER HO HIP -0x0dcc "ฬ" EEK_KEYSYM_CATEGORY_LETTER # Thai_lochula ฬ THAI CHARACTER LO CHULA -0x0dcd "อ" EEK_KEYSYM_CATEGORY_LETTER # Thai_oang อ THAI CHARACTER O ANG -0x0dce "ฮ" EEK_KEYSYM_CATEGORY_LETTER # Thai_honokhuk ฮ THAI CHARACTER HO NOKHUK -0x0dcf "ฯ" EEK_KEYSYM_CATEGORY_LETTER # Thai_paiyannoi ฯ THAI CHARACTER PAIYANNOI -0x0dd0 "ะ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraa ะ THAI CHARACTER SARA A -0x0dd1 "ั" EEK_KEYSYM_CATEGORY_LETTER # Thai_maihanakat ั THAI CHARACTER MAI HAN-AKAT -0x0dd2 "า" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraaa า THAI CHARACTER SARA AA -0x0dd3 "ำ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraam ำ THAI CHARACTER SARA AM -0x0dd4 "ิ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarai ิ THAI CHARACTER SARA I -0x0dd5 "ี" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraii ี THAI CHARACTER SARA II -0x0dd6 "ึ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraue ึ THAI CHARACTER SARA UE -0x0dd7 "ื" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarauee ื THAI CHARACTER SARA UEE -0x0dd8 "ุ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarau ุ THAI CHARACTER SARA U -0x0dd9 "ู" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarauu ู THAI CHARACTER SARA UU -0x0dda "ฺ" EEK_KEYSYM_CATEGORY_LETTER # Thai_phinthu ฺ THAI CHARACTER PHINTHU -0x0dde "฾" EEK_KEYSYM_CATEGORY_LETTER # Thai_maihanakat_maitho ฾ ??? -0x0ddf "฿" EEK_KEYSYM_CATEGORY_LETTER # Thai_baht ฿ THAI CURRENCY SYMBOL BAHT -0x0de0 "เ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarae เ THAI CHARACTER SARA E -0x0de1 "แ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraae แ THAI CHARACTER SARA AE -0x0de2 "โ" EEK_KEYSYM_CATEGORY_LETTER # Thai_sarao โ THAI CHARACTER SARA O -0x0de3 "ใ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraaimaimuan ใ THAI CHARACTER SARA AI MAIMUAN -0x0de4 "ไ" EEK_KEYSYM_CATEGORY_LETTER # Thai_saraaimaimalai ไ THAI CHARACTER SARA AI MAIMALAI -0x0de5 "ๅ" EEK_KEYSYM_CATEGORY_LETTER # Thai_lakkhangyao ๅ THAI CHARACTER LAKKHANGYAO -0x0de6 "ๆ" EEK_KEYSYM_CATEGORY_LETTER # Thai_maiyamok ๆ THAI CHARACTER MAIYAMOK -0x0de7 "็" EEK_KEYSYM_CATEGORY_LETTER # Thai_maitaikhu ็ THAI CHARACTER MAITAIKHU -0x0de8 "่" EEK_KEYSYM_CATEGORY_LETTER # Thai_maiek ่ THAI CHARACTER MAI EK -0x0de9 "้" EEK_KEYSYM_CATEGORY_LETTER # Thai_maitho ้ THAI CHARACTER MAI THO -0x0dea "๊" EEK_KEYSYM_CATEGORY_LETTER # Thai_maitri ๊ THAI CHARACTER MAI TRI -0x0deb "๋" EEK_KEYSYM_CATEGORY_LETTER # Thai_maichattawa ๋ THAI CHARACTER MAI CHATTAWA -0x0dec "์" EEK_KEYSYM_CATEGORY_LETTER # Thai_thanthakhat ์ THAI CHARACTER THANTHAKHAT -0x0ded "ํ" EEK_KEYSYM_CATEGORY_LETTER # Thai_nikhahit ํ THAI CHARACTER NIKHAHIT -0x0df0 "๐" EEK_KEYSYM_CATEGORY_LETTER # Thai_leksun ๐ THAI DIGIT ZERO -0x0df1 "๑" EEK_KEYSYM_CATEGORY_LETTER # Thai_leknung ๑ THAI DIGIT ONE -0x0df2 "๒" EEK_KEYSYM_CATEGORY_LETTER # Thai_leksong ๒ THAI DIGIT TWO -0x0df3 "๓" EEK_KEYSYM_CATEGORY_LETTER # Thai_leksam ๓ THAI DIGIT THREE -0x0df4 "๔" EEK_KEYSYM_CATEGORY_LETTER # Thai_leksi ๔ THAI DIGIT FOUR -0x0df5 "๕" EEK_KEYSYM_CATEGORY_LETTER # Thai_lekha ๕ THAI DIGIT FIVE -0x0df6 "๖" EEK_KEYSYM_CATEGORY_LETTER # Thai_lekhok ๖ THAI DIGIT SIX -0x0df7 "๗" EEK_KEYSYM_CATEGORY_LETTER # Thai_lekchet ๗ THAI DIGIT SEVEN -0x0df8 "๘" EEK_KEYSYM_CATEGORY_LETTER # Thai_lekpaet ๘ THAI DIGIT EIGHT -0x0df9 "๙" EEK_KEYSYM_CATEGORY_LETTER # Thai_lekkao ๙ THAI DIGIT NINE -0x0ea1 "ㄱ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Kiyeog ㄱ HANGUL LETTER KIYEOK -0x0ea2 "ㄲ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SsangKiyeog ㄲ HANGUL LETTER SSANGKIYEOK -0x0ea3 "ㄳ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_KiyeogSios ㄳ HANGUL LETTER KIYEOK-SIOS -0x0ea4 "ㄴ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Nieun ㄴ HANGUL LETTER NIEUN -0x0ea5 "ㄵ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_NieunJieuj ㄵ HANGUL LETTER NIEUN-CIEUC -0x0ea6 "ㄶ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_NieunHieuh ㄶ HANGUL LETTER NIEUN-HIEUH -0x0ea7 "ㄷ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Dikeud ㄷ HANGUL LETTER TIKEUT -0x0ea8 "ㄸ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SsangDikeud ㄸ HANGUL LETTER SSANGTIKEUT -0x0ea9 "ㄹ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Rieul ㄹ HANGUL LETTER RIEUL -0x0eaa "ㄺ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulKiyeog ㄺ HANGUL LETTER RIEUL-KIYEOK -0x0eab "ㄻ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulMieum ㄻ HANGUL LETTER RIEUL-MIEUM -0x0eac "ㄼ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulPieub ㄼ HANGUL LETTER RIEUL-PIEUP -0x0ead "ㄽ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulSios ㄽ HANGUL LETTER RIEUL-SIOS -0x0eae "ㄾ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulTieut ㄾ HANGUL LETTER RIEUL-THIEUTH -0x0eaf "ㄿ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulPhieuf ㄿ HANGUL LETTER RIEUL-PHIEUPH -0x0eb0 "ㅀ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulHieuh ㅀ HANGUL LETTER RIEUL-HIEUH -0x0eb1 "ㅁ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Mieum ㅁ HANGUL LETTER MIEUM -0x0eb2 "ㅂ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Pieub ㅂ HANGUL LETTER PIEUP -0x0eb3 "ㅃ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SsangPieub ㅃ HANGUL LETTER SSANGPIEUP -0x0eb4 "ㅄ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_PieubSios ㅄ HANGUL LETTER PIEUP-SIOS -0x0eb5 "ㅅ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Sios ㅅ HANGUL LETTER SIOS -0x0eb6 "ㅆ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SsangSios ㅆ HANGUL LETTER SSANGSIOS -0x0eb7 "ㅇ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Ieung ㅇ HANGUL LETTER IEUNG -0x0eb8 "ㅈ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Jieuj ㅈ HANGUL LETTER CIEUC -0x0eb9 "ㅉ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SsangJieuj ㅉ HANGUL LETTER SSANGCIEUC -0x0eba "ㅊ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Cieuc ㅊ HANGUL LETTER CHIEUCH -0x0ebb "ㅋ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Khieuq ㅋ HANGUL LETTER KHIEUKH -0x0ebc "ㅌ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Tieut ㅌ HANGUL LETTER THIEUTH -0x0ebd "ㅍ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Phieuf ㅍ HANGUL LETTER PHIEUPH -0x0ebe "ㅎ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_Hieuh ㅎ HANGUL LETTER HIEUH -0x0ebf "ㅏ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_A ㅏ HANGUL LETTER A -0x0ec0 "ㅐ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_AE ㅐ HANGUL LETTER AE -0x0ec1 "ㅑ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YA ㅑ HANGUL LETTER YA -0x0ec2 "ㅒ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YAE ㅒ HANGUL LETTER YAE -0x0ec3 "ㅓ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_EO ㅓ HANGUL LETTER EO -0x0ec4 "ㅔ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_E ㅔ HANGUL LETTER E -0x0ec5 "ㅕ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YEO ㅕ HANGUL LETTER YEO -0x0ec6 "ㅖ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YE ㅖ HANGUL LETTER YE -0x0ec7 "ㅗ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_O ㅗ HANGUL LETTER O -0x0ec8 "ㅘ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_WA ㅘ HANGUL LETTER WA -0x0ec9 "ㅙ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_WAE ㅙ HANGUL LETTER WAE -0x0eca "ㅚ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_OE ㅚ HANGUL LETTER OE -0x0ecb "ㅛ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YO ㅛ HANGUL LETTER YO -0x0ecc "ㅜ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_U ㅜ HANGUL LETTER U -0x0ecd "ㅝ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_WEO ㅝ HANGUL LETTER WEO -0x0ece "ㅞ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_WE ㅞ HANGUL LETTER WE -0x0ecf "ㅟ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_WI ㅟ HANGUL LETTER WI -0x0ed0 "ㅠ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YU ㅠ HANGUL LETTER YU -0x0ed1 "ㅡ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_EU ㅡ HANGUL LETTER EU -0x0ed2 "ㅢ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YI ㅢ HANGUL LETTER YI -0x0ed3 "ㅣ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_I ㅣ HANGUL LETTER I -0x0ed4 "ᆨ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Kiyeog ᆨ HANGUL JONGSEONG KIYEOK -0x0ed5 "ᆩ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_SsangKiyeog ᆩ HANGUL JONGSEONG SSANGKIYEOK -0x0ed6 "ᆪ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_KiyeogSios ᆪ HANGUL JONGSEONG KIYEOK-SIOS -0x0ed7 "ᆫ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Nieun ᆫ HANGUL JONGSEONG NIEUN -0x0ed8 "ᆬ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_NieunJieuj ᆬ HANGUL JONGSEONG NIEUN-CIEUC -0x0ed9 "ᆭ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_NieunHieuh ᆭ HANGUL JONGSEONG NIEUN-HIEUH -0x0eda "ᆮ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Dikeud ᆮ HANGUL JONGSEONG TIKEUT -0x0edb "ᆯ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Rieul ᆯ HANGUL JONGSEONG RIEUL -0x0edc "ᆰ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulKiyeog ᆰ HANGUL JONGSEONG RIEUL-KIYEOK -0x0edd "ᆱ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulMieum ᆱ HANGUL JONGSEONG RIEUL-MIEUM -0x0ede "ᆲ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulPieub ᆲ HANGUL JONGSEONG RIEUL-PIEUP -0x0edf "ᆳ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulSios ᆳ HANGUL JONGSEONG RIEUL-SIOS -0x0ee0 "ᆴ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulTieut ᆴ HANGUL JONGSEONG RIEUL-THIEUTH -0x0ee1 "ᆵ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulPhieuf ᆵ HANGUL JONGSEONG RIEUL-PHIEUPH -0x0ee2 "ᆶ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_RieulHieuh ᆶ HANGUL JONGSEONG RIEUL-HIEUH -0x0ee3 "ᆷ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Mieum ᆷ HANGUL JONGSEONG MIEUM -0x0ee4 "ᆸ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Pieub ᆸ HANGUL JONGSEONG PIEUP -0x0ee5 "ᆹ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_PieubSios ᆹ HANGUL JONGSEONG PIEUP-SIOS -0x0ee6 "ᆺ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Sios ᆺ HANGUL JONGSEONG SIOS -0x0ee7 "ᆻ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_SsangSios ᆻ HANGUL JONGSEONG SSANGSIOS -0x0ee8 "ᆼ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Ieung ᆼ HANGUL JONGSEONG IEUNG -0x0ee9 "ᆽ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Jieuj ᆽ HANGUL JONGSEONG CIEUC -0x0eea "ᆾ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Cieuc ᆾ HANGUL JONGSEONG CHIEUCH -0x0eeb "ᆿ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Khieuq ᆿ HANGUL JONGSEONG KHIEUKH -0x0eec "ᇀ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Tieut ᇀ HANGUL JONGSEONG THIEUTH -0x0eed "ᇁ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Phieuf ᇁ HANGUL JONGSEONG PHIEUPH -0x0eee "ᇂ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_Hieuh ᇂ HANGUL JONGSEONG HIEUH -0x0eef "ㅭ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_RieulYeorinHieuh ㅭ HANGUL LETTER RIEUL-YEORINHIEUH -0x0ef0 "ㅱ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SunkyeongeumMieum ㅱ HANGUL LETTER KAPYEOUNMIEUM -0x0ef1 "ㅸ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SunkyeongeumPieub ㅸ HANGUL LETTER KAPYEOUNPIEUP -0x0ef2 "ㅿ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_PanSios ㅿ HANGUL LETTER PANSIOS +0x0ba3 "<" EEK_SYMBOL_CATEGORY_LETTER # leftcaret < LESS-THAN SIGN +0x0ba6 ">" EEK_SYMBOL_CATEGORY_LETTER # rightcaret > GREATER-THAN SIGN +0x0ba8 "∨" EEK_SYMBOL_CATEGORY_LETTER # downcaret ∨ LOGICAL OR +0x0ba9 "∧" EEK_SYMBOL_CATEGORY_LETTER # upcaret ∧ LOGICAL AND +0x0bc0 "¯" EEK_SYMBOL_CATEGORY_LETTER # overbar ¯ MACRON +0x0bc2 "⊤" EEK_SYMBOL_CATEGORY_LETTER # downtack ⊤ DOWN TACK +0x0bc3 "∩" EEK_SYMBOL_CATEGORY_LETTER # upshoe ∩ INTERSECTION +0x0bc4 "⌊" EEK_SYMBOL_CATEGORY_LETTER # downstile ⌊ LEFT FLOOR +0x0bc6 "_" EEK_SYMBOL_CATEGORY_LETTER # underbar _ LOW LINE +0x0bca "∘" EEK_SYMBOL_CATEGORY_LETTER # jot ∘ RING OPERATOR +0x0bcc "⎕" EEK_SYMBOL_CATEGORY_LETTER # quad ⎕ APL FUNCTIONAL SYMBOL QUAD (Unicode 3.0) +0x0bce "⊥" EEK_SYMBOL_CATEGORY_LETTER # uptack ⊥ UP TACK +0x0bcf "○" EEK_SYMBOL_CATEGORY_LETTER # circle ○ WHITE CIRCLE +0x0bd3 "⌈" EEK_SYMBOL_CATEGORY_LETTER # upstile ⌈ LEFT CEILING +0x0bd6 "∪" EEK_SYMBOL_CATEGORY_LETTER # downshoe ∪ UNION +0x0bd8 "⊃" EEK_SYMBOL_CATEGORY_LETTER # rightshoe ⊃ SUPERSET OF +0x0bda "⊂" EEK_SYMBOL_CATEGORY_LETTER # leftshoe ⊂ SUBSET OF +0x0bdc "⊣" EEK_SYMBOL_CATEGORY_LETTER # lefttack ⊣ LEFT TACK +0x0bfc "⊢" EEK_SYMBOL_CATEGORY_LETTER # righttack ⊢ RIGHT TACK +0x0cdf "‗" EEK_SYMBOL_CATEGORY_LETTER # hebrew_doublelowline ‗ DOUBLE LOW LINE +0x0ce0 "א" EEK_SYMBOL_CATEGORY_LETTER # hebrew_aleph א HEBREW LETTER ALEF +0x0ce1 "ב" EEK_SYMBOL_CATEGORY_LETTER # hebrew_bet ב HEBREW LETTER BET +0x0ce2 "ג" EEK_SYMBOL_CATEGORY_LETTER # hebrew_gimel ג HEBREW LETTER GIMEL +0x0ce3 "ד" EEK_SYMBOL_CATEGORY_LETTER # hebrew_dalet ד HEBREW LETTER DALET +0x0ce4 "ה" EEK_SYMBOL_CATEGORY_LETTER # hebrew_he ה HEBREW LETTER HE +0x0ce5 "ו" EEK_SYMBOL_CATEGORY_LETTER # hebrew_waw ו HEBREW LETTER VAV +0x0ce6 "ז" EEK_SYMBOL_CATEGORY_LETTER # hebrew_zain ז HEBREW LETTER ZAYIN +0x0ce7 "ח" EEK_SYMBOL_CATEGORY_LETTER # hebrew_chet ח HEBREW LETTER HET +0x0ce8 "ט" EEK_SYMBOL_CATEGORY_LETTER # hebrew_tet ט HEBREW LETTER TET +0x0ce9 "י" EEK_SYMBOL_CATEGORY_LETTER # hebrew_yod י HEBREW LETTER YOD +0x0cea "ך" EEK_SYMBOL_CATEGORY_LETTER # hebrew_finalkaph ך HEBREW LETTER FINAL KAF +0x0ceb "כ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_kaph כ HEBREW LETTER KAF +0x0cec "ל" EEK_SYMBOL_CATEGORY_LETTER # hebrew_lamed ל HEBREW LETTER LAMED +0x0ced "ם" EEK_SYMBOL_CATEGORY_LETTER # hebrew_finalmem ם HEBREW LETTER FINAL MEM +0x0cee "מ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_mem מ HEBREW LETTER MEM +0x0cef "ן" EEK_SYMBOL_CATEGORY_LETTER # hebrew_finalnun ן HEBREW LETTER FINAL NUN +0x0cf0 "נ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_nun נ HEBREW LETTER NUN +0x0cf1 "ס" EEK_SYMBOL_CATEGORY_LETTER # hebrew_samech ס HEBREW LETTER SAMEKH +0x0cf2 "ע" EEK_SYMBOL_CATEGORY_LETTER # hebrew_ayin ע HEBREW LETTER AYIN +0x0cf3 "ף" EEK_SYMBOL_CATEGORY_LETTER # hebrew_finalpe ף HEBREW LETTER FINAL PE +0x0cf4 "פ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_pe פ HEBREW LETTER PE +0x0cf5 "ץ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_finalzade ץ HEBREW LETTER FINAL TSADI +0x0cf6 "צ" EEK_SYMBOL_CATEGORY_LETTER # hebrew_zade צ HEBREW LETTER TSADI +0x0cf7 "ק" EEK_SYMBOL_CATEGORY_LETTER # hebrew_qoph ק HEBREW LETTER QOF +0x0cf8 "ר" EEK_SYMBOL_CATEGORY_LETTER # hebrew_resh ר HEBREW LETTER RESH +0x0cf9 "ש" EEK_SYMBOL_CATEGORY_LETTER # hebrew_shin ש HEBREW LETTER SHIN +0x0cfa "ת" EEK_SYMBOL_CATEGORY_LETTER # hebrew_taw ת HEBREW LETTER TAV +0x0da1 "ก" EEK_SYMBOL_CATEGORY_LETTER # Thai_kokai ก THAI CHARACTER KO KAI +0x0da2 "ข" EEK_SYMBOL_CATEGORY_LETTER # Thai_khokhai ข THAI CHARACTER KHO KHAI +0x0da3 "ฃ" EEK_SYMBOL_CATEGORY_LETTER # Thai_khokhuat ฃ THAI CHARACTER KHO KHUAT +0x0da4 "ค" EEK_SYMBOL_CATEGORY_LETTER # Thai_khokhwai ค THAI CHARACTER KHO KHWAI +0x0da5 "ฅ" EEK_SYMBOL_CATEGORY_LETTER # Thai_khokhon ฅ THAI CHARACTER KHO KHON +0x0da6 "ฆ" EEK_SYMBOL_CATEGORY_LETTER # Thai_khorakhang ฆ THAI CHARACTER KHO RAKHANG +0x0da7 "ง" EEK_SYMBOL_CATEGORY_LETTER # Thai_ngongu ง THAI CHARACTER NGO NGU +0x0da8 "จ" EEK_SYMBOL_CATEGORY_LETTER # Thai_chochan จ THAI CHARACTER CHO CHAN +0x0da9 "ฉ" EEK_SYMBOL_CATEGORY_LETTER # Thai_choching ฉ THAI CHARACTER CHO CHING +0x0daa "ช" EEK_SYMBOL_CATEGORY_LETTER # Thai_chochang ช THAI CHARACTER CHO CHANG +0x0dab "ซ" EEK_SYMBOL_CATEGORY_LETTER # Thai_soso ซ THAI CHARACTER SO SO +0x0dac "ฌ" EEK_SYMBOL_CATEGORY_LETTER # Thai_chochoe ฌ THAI CHARACTER CHO CHOE +0x0dad "ญ" EEK_SYMBOL_CATEGORY_LETTER # Thai_yoying ญ THAI CHARACTER YO YING +0x0dae "ฎ" EEK_SYMBOL_CATEGORY_LETTER # Thai_dochada ฎ THAI CHARACTER DO CHADA +0x0daf "ฏ" EEK_SYMBOL_CATEGORY_LETTER # Thai_topatak ฏ THAI CHARACTER TO PATAK +0x0db0 "ฐ" EEK_SYMBOL_CATEGORY_LETTER # Thai_thothan ฐ THAI CHARACTER THO THAN +0x0db1 "ฑ" EEK_SYMBOL_CATEGORY_LETTER # Thai_thonangmontho ฑ THAI CHARACTER THO NANGMONTHO +0x0db2 "ฒ" EEK_SYMBOL_CATEGORY_LETTER # Thai_thophuthao ฒ THAI CHARACTER THO PHUTHAO +0x0db3 "ณ" EEK_SYMBOL_CATEGORY_LETTER # Thai_nonen ณ THAI CHARACTER NO NEN +0x0db4 "ด" EEK_SYMBOL_CATEGORY_LETTER # Thai_dodek ด THAI CHARACTER DO DEK +0x0db5 "ต" EEK_SYMBOL_CATEGORY_LETTER # Thai_totao ต THAI CHARACTER TO TAO +0x0db6 "ถ" EEK_SYMBOL_CATEGORY_LETTER # Thai_thothung ถ THAI CHARACTER THO THUNG +0x0db7 "ท" EEK_SYMBOL_CATEGORY_LETTER # Thai_thothahan ท THAI CHARACTER THO THAHAN +0x0db8 "ธ" EEK_SYMBOL_CATEGORY_LETTER # Thai_thothong ธ THAI CHARACTER THO THONG +0x0db9 "น" EEK_SYMBOL_CATEGORY_LETTER # Thai_nonu น THAI CHARACTER NO NU +0x0dba "บ" EEK_SYMBOL_CATEGORY_LETTER # Thai_bobaimai บ THAI CHARACTER BO BAIMAI +0x0dbb "ป" EEK_SYMBOL_CATEGORY_LETTER # Thai_popla ป THAI CHARACTER PO PLA +0x0dbc "ผ" EEK_SYMBOL_CATEGORY_LETTER # Thai_phophung ผ THAI CHARACTER PHO PHUNG +0x0dbd "ฝ" EEK_SYMBOL_CATEGORY_LETTER # Thai_fofa ฝ THAI CHARACTER FO FA +0x0dbe "พ" EEK_SYMBOL_CATEGORY_LETTER # Thai_phophan พ THAI CHARACTER PHO PHAN +0x0dbf "ฟ" EEK_SYMBOL_CATEGORY_LETTER # Thai_fofan ฟ THAI CHARACTER FO FAN +0x0dc0 "ภ" EEK_SYMBOL_CATEGORY_LETTER # Thai_phosamphao ภ THAI CHARACTER PHO SAMPHAO +0x0dc1 "ม" EEK_SYMBOL_CATEGORY_LETTER # Thai_moma ม THAI CHARACTER MO MA +0x0dc2 "ย" EEK_SYMBOL_CATEGORY_LETTER # Thai_yoyak ย THAI CHARACTER YO YAK +0x0dc3 "ร" EEK_SYMBOL_CATEGORY_LETTER # Thai_rorua ร THAI CHARACTER RO RUA +0x0dc4 "ฤ" EEK_SYMBOL_CATEGORY_LETTER # Thai_ru ฤ THAI CHARACTER RU +0x0dc5 "ล" EEK_SYMBOL_CATEGORY_LETTER # Thai_loling ล THAI CHARACTER LO LING +0x0dc6 "ฦ" EEK_SYMBOL_CATEGORY_LETTER # Thai_lu ฦ THAI CHARACTER LU +0x0dc7 "ว" EEK_SYMBOL_CATEGORY_LETTER # Thai_wowaen ว THAI CHARACTER WO WAEN +0x0dc8 "ศ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sosala ศ THAI CHARACTER SO SALA +0x0dc9 "ษ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sorusi ษ THAI CHARACTER SO RUSI +0x0dca "ส" EEK_SYMBOL_CATEGORY_LETTER # Thai_sosua ส THAI CHARACTER SO SUA +0x0dcb "ห" EEK_SYMBOL_CATEGORY_LETTER # Thai_hohip ห THAI CHARACTER HO HIP +0x0dcc "ฬ" EEK_SYMBOL_CATEGORY_LETTER # Thai_lochula ฬ THAI CHARACTER LO CHULA +0x0dcd "อ" EEK_SYMBOL_CATEGORY_LETTER # Thai_oang อ THAI CHARACTER O ANG +0x0dce "ฮ" EEK_SYMBOL_CATEGORY_LETTER # Thai_honokhuk ฮ THAI CHARACTER HO NOKHUK +0x0dcf "ฯ" EEK_SYMBOL_CATEGORY_LETTER # Thai_paiyannoi ฯ THAI CHARACTER PAIYANNOI +0x0dd0 "ะ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraa ะ THAI CHARACTER SARA A +0x0dd1 "ั" EEK_SYMBOL_CATEGORY_LETTER # Thai_maihanakat ั THAI CHARACTER MAI HAN-AKAT +0x0dd2 "า" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraaa า THAI CHARACTER SARA AA +0x0dd3 "ำ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraam ำ THAI CHARACTER SARA AM +0x0dd4 "ิ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarai ิ THAI CHARACTER SARA I +0x0dd5 "ี" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraii ี THAI CHARACTER SARA II +0x0dd6 "ึ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraue ึ THAI CHARACTER SARA UE +0x0dd7 "ื" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarauee ื THAI CHARACTER SARA UEE +0x0dd8 "ุ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarau ุ THAI CHARACTER SARA U +0x0dd9 "ู" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarauu ู THAI CHARACTER SARA UU +0x0dda "ฺ" EEK_SYMBOL_CATEGORY_LETTER # Thai_phinthu ฺ THAI CHARACTER PHINTHU +0x0dde "฾" EEK_SYMBOL_CATEGORY_LETTER # Thai_maihanakat_maitho ฾ ??? +0x0ddf "฿" EEK_SYMBOL_CATEGORY_LETTER # Thai_baht ฿ THAI CURRENCY SYMBOL BAHT +0x0de0 "เ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarae เ THAI CHARACTER SARA E +0x0de1 "แ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraae แ THAI CHARACTER SARA AE +0x0de2 "โ" EEK_SYMBOL_CATEGORY_LETTER # Thai_sarao โ THAI CHARACTER SARA O +0x0de3 "ใ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraaimaimuan ใ THAI CHARACTER SARA AI MAIMUAN +0x0de4 "ไ" EEK_SYMBOL_CATEGORY_LETTER # Thai_saraaimaimalai ไ THAI CHARACTER SARA AI MAIMALAI +0x0de5 "ๅ" EEK_SYMBOL_CATEGORY_LETTER # Thai_lakkhangyao ๅ THAI CHARACTER LAKKHANGYAO +0x0de6 "ๆ" EEK_SYMBOL_CATEGORY_LETTER # Thai_maiyamok ๆ THAI CHARACTER MAIYAMOK +0x0de7 "็" EEK_SYMBOL_CATEGORY_LETTER # Thai_maitaikhu ็ THAI CHARACTER MAITAIKHU +0x0de8 "่" EEK_SYMBOL_CATEGORY_LETTER # Thai_maiek ่ THAI CHARACTER MAI EK +0x0de9 "้" EEK_SYMBOL_CATEGORY_LETTER # Thai_maitho ้ THAI CHARACTER MAI THO +0x0dea "๊" EEK_SYMBOL_CATEGORY_LETTER # Thai_maitri ๊ THAI CHARACTER MAI TRI +0x0deb "๋" EEK_SYMBOL_CATEGORY_LETTER # Thai_maichattawa ๋ THAI CHARACTER MAI CHATTAWA +0x0dec "์" EEK_SYMBOL_CATEGORY_LETTER # Thai_thanthakhat ์ THAI CHARACTER THANTHAKHAT +0x0ded "ํ" EEK_SYMBOL_CATEGORY_LETTER # Thai_nikhahit ํ THAI CHARACTER NIKHAHIT +0x0df0 "๐" EEK_SYMBOL_CATEGORY_LETTER # Thai_leksun ๐ THAI DIGIT ZERO +0x0df1 "๑" EEK_SYMBOL_CATEGORY_LETTER # Thai_leknung ๑ THAI DIGIT ONE +0x0df2 "๒" EEK_SYMBOL_CATEGORY_LETTER # Thai_leksong ๒ THAI DIGIT TWO +0x0df3 "๓" EEK_SYMBOL_CATEGORY_LETTER # Thai_leksam ๓ THAI DIGIT THREE +0x0df4 "๔" EEK_SYMBOL_CATEGORY_LETTER # Thai_leksi ๔ THAI DIGIT FOUR +0x0df5 "๕" EEK_SYMBOL_CATEGORY_LETTER # Thai_lekha ๕ THAI DIGIT FIVE +0x0df6 "๖" EEK_SYMBOL_CATEGORY_LETTER # Thai_lekhok ๖ THAI DIGIT SIX +0x0df7 "๗" EEK_SYMBOL_CATEGORY_LETTER # Thai_lekchet ๗ THAI DIGIT SEVEN +0x0df8 "๘" EEK_SYMBOL_CATEGORY_LETTER # Thai_lekpaet ๘ THAI DIGIT EIGHT +0x0df9 "๙" EEK_SYMBOL_CATEGORY_LETTER # Thai_lekkao ๙ THAI DIGIT NINE +0x0ea1 "ㄱ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Kiyeog ㄱ HANGUL LETTER KIYEOK +0x0ea2 "ㄲ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SsangKiyeog ㄲ HANGUL LETTER SSANGKIYEOK +0x0ea3 "ㄳ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_KiyeogSios ㄳ HANGUL LETTER KIYEOK-SIOS +0x0ea4 "ㄴ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Nieun ㄴ HANGUL LETTER NIEUN +0x0ea5 "ㄵ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_NieunJieuj ㄵ HANGUL LETTER NIEUN-CIEUC +0x0ea6 "ㄶ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_NieunHieuh ㄶ HANGUL LETTER NIEUN-HIEUH +0x0ea7 "ㄷ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Dikeud ㄷ HANGUL LETTER TIKEUT +0x0ea8 "ㄸ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SsangDikeud ㄸ HANGUL LETTER SSANGTIKEUT +0x0ea9 "ㄹ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Rieul ㄹ HANGUL LETTER RIEUL +0x0eaa "ㄺ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulKiyeog ㄺ HANGUL LETTER RIEUL-KIYEOK +0x0eab "ㄻ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulMieum ㄻ HANGUL LETTER RIEUL-MIEUM +0x0eac "ㄼ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulPieub ㄼ HANGUL LETTER RIEUL-PIEUP +0x0ead "ㄽ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulSios ㄽ HANGUL LETTER RIEUL-SIOS +0x0eae "ㄾ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulTieut ㄾ HANGUL LETTER RIEUL-THIEUTH +0x0eaf "ㄿ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulPhieuf ㄿ HANGUL LETTER RIEUL-PHIEUPH +0x0eb0 "ㅀ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulHieuh ㅀ HANGUL LETTER RIEUL-HIEUH +0x0eb1 "ㅁ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Mieum ㅁ HANGUL LETTER MIEUM +0x0eb2 "ㅂ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Pieub ㅂ HANGUL LETTER PIEUP +0x0eb3 "ㅃ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SsangPieub ㅃ HANGUL LETTER SSANGPIEUP +0x0eb4 "ㅄ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_PieubSios ㅄ HANGUL LETTER PIEUP-SIOS +0x0eb5 "ㅅ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Sios ㅅ HANGUL LETTER SIOS +0x0eb6 "ㅆ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SsangSios ㅆ HANGUL LETTER SSANGSIOS +0x0eb7 "ㅇ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Ieung ㅇ HANGUL LETTER IEUNG +0x0eb8 "ㅈ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Jieuj ㅈ HANGUL LETTER CIEUC +0x0eb9 "ㅉ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SsangJieuj ㅉ HANGUL LETTER SSANGCIEUC +0x0eba "ㅊ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Cieuc ㅊ HANGUL LETTER CHIEUCH +0x0ebb "ㅋ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Khieuq ㅋ HANGUL LETTER KHIEUKH +0x0ebc "ㅌ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Tieut ㅌ HANGUL LETTER THIEUTH +0x0ebd "ㅍ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Phieuf ㅍ HANGUL LETTER PHIEUPH +0x0ebe "ㅎ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_Hieuh ㅎ HANGUL LETTER HIEUH +0x0ebf "ㅏ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_A ㅏ HANGUL LETTER A +0x0ec0 "ㅐ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_AE ㅐ HANGUL LETTER AE +0x0ec1 "ㅑ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YA ㅑ HANGUL LETTER YA +0x0ec2 "ㅒ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YAE ㅒ HANGUL LETTER YAE +0x0ec3 "ㅓ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_EO ㅓ HANGUL LETTER EO +0x0ec4 "ㅔ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_E ㅔ HANGUL LETTER E +0x0ec5 "ㅕ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YEO ㅕ HANGUL LETTER YEO +0x0ec6 "ㅖ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YE ㅖ HANGUL LETTER YE +0x0ec7 "ㅗ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_O ㅗ HANGUL LETTER O +0x0ec8 "ㅘ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_WA ㅘ HANGUL LETTER WA +0x0ec9 "ㅙ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_WAE ㅙ HANGUL LETTER WAE +0x0eca "ㅚ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_OE ㅚ HANGUL LETTER OE +0x0ecb "ㅛ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YO ㅛ HANGUL LETTER YO +0x0ecc "ㅜ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_U ㅜ HANGUL LETTER U +0x0ecd "ㅝ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_WEO ㅝ HANGUL LETTER WEO +0x0ece "ㅞ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_WE ㅞ HANGUL LETTER WE +0x0ecf "ㅟ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_WI ㅟ HANGUL LETTER WI +0x0ed0 "ㅠ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YU ㅠ HANGUL LETTER YU +0x0ed1 "ㅡ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_EU ㅡ HANGUL LETTER EU +0x0ed2 "ㅢ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YI ㅢ HANGUL LETTER YI +0x0ed3 "ㅣ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_I ㅣ HANGUL LETTER I +0x0ed4 "ᆨ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Kiyeog ᆨ HANGUL JONGSEONG KIYEOK +0x0ed5 "ᆩ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_SsangKiyeog ᆩ HANGUL JONGSEONG SSANGKIYEOK +0x0ed6 "ᆪ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_KiyeogSios ᆪ HANGUL JONGSEONG KIYEOK-SIOS +0x0ed7 "ᆫ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Nieun ᆫ HANGUL JONGSEONG NIEUN +0x0ed8 "ᆬ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_NieunJieuj ᆬ HANGUL JONGSEONG NIEUN-CIEUC +0x0ed9 "ᆭ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_NieunHieuh ᆭ HANGUL JONGSEONG NIEUN-HIEUH +0x0eda "ᆮ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Dikeud ᆮ HANGUL JONGSEONG TIKEUT +0x0edb "ᆯ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Rieul ᆯ HANGUL JONGSEONG RIEUL +0x0edc "ᆰ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulKiyeog ᆰ HANGUL JONGSEONG RIEUL-KIYEOK +0x0edd "ᆱ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulMieum ᆱ HANGUL JONGSEONG RIEUL-MIEUM +0x0ede "ᆲ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulPieub ᆲ HANGUL JONGSEONG RIEUL-PIEUP +0x0edf "ᆳ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulSios ᆳ HANGUL JONGSEONG RIEUL-SIOS +0x0ee0 "ᆴ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulTieut ᆴ HANGUL JONGSEONG RIEUL-THIEUTH +0x0ee1 "ᆵ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulPhieuf ᆵ HANGUL JONGSEONG RIEUL-PHIEUPH +0x0ee2 "ᆶ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_RieulHieuh ᆶ HANGUL JONGSEONG RIEUL-HIEUH +0x0ee3 "ᆷ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Mieum ᆷ HANGUL JONGSEONG MIEUM +0x0ee4 "ᆸ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Pieub ᆸ HANGUL JONGSEONG PIEUP +0x0ee5 "ᆹ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_PieubSios ᆹ HANGUL JONGSEONG PIEUP-SIOS +0x0ee6 "ᆺ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Sios ᆺ HANGUL JONGSEONG SIOS +0x0ee7 "ᆻ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_SsangSios ᆻ HANGUL JONGSEONG SSANGSIOS +0x0ee8 "ᆼ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Ieung ᆼ HANGUL JONGSEONG IEUNG +0x0ee9 "ᆽ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Jieuj ᆽ HANGUL JONGSEONG CIEUC +0x0eea "ᆾ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Cieuc ᆾ HANGUL JONGSEONG CHIEUCH +0x0eeb "ᆿ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Khieuq ᆿ HANGUL JONGSEONG KHIEUKH +0x0eec "ᇀ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Tieut ᇀ HANGUL JONGSEONG THIEUTH +0x0eed "ᇁ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Phieuf ᇁ HANGUL JONGSEONG PHIEUPH +0x0eee "ᇂ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_Hieuh ᇂ HANGUL JONGSEONG HIEUH +0x0eef "ㅭ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_RieulYeorinHieuh ㅭ HANGUL LETTER RIEUL-YEORINHIEUH +0x0ef0 "ㅱ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SunkyeongeumMieum ㅱ HANGUL LETTER KAPYEOUNMIEUM +0x0ef1 "ㅸ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SunkyeongeumPieub ㅸ HANGUL LETTER KAPYEOUNPIEUP +0x0ef2 "ㅿ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_PanSios ㅿ HANGUL LETTER PANSIOS # 0x0ef3 Hangul_KkogjiDalrinIeung ? ??? -0x0ef4 "ㆄ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_SunkyeongeumPhieuf ㆄ HANGUL LETTER KAPYEOUNPHIEUPH -0x0ef5 "ㆆ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_YeorinHieuh ㆆ HANGUL LETTER YEORINHIEUH -0x0ef6 "ㆍ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_AraeA ㆍ HANGUL LETTER ARAEA -0x0ef7 "ㆎ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_AraeAE ㆎ HANGUL LETTER ARAEAE -0x0ef8 "ᇫ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_PanSios ᇫ HANGUL JONGSEONG PANSIOS +0x0ef4 "ㆄ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_SunkyeongeumPhieuf ㆄ HANGUL LETTER KAPYEOUNPHIEUPH +0x0ef5 "ㆆ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_YeorinHieuh ㆆ HANGUL LETTER YEORINHIEUH +0x0ef6 "ㆍ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_AraeA ㆍ HANGUL LETTER ARAEA +0x0ef7 "ㆎ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_AraeAE ㆎ HANGUL LETTER ARAEAE +0x0ef8 "ᇫ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_PanSios ᇫ HANGUL JONGSEONG PANSIOS # 0x0ef9 Hangul_J_KkogjiDalrinIeung ? ??? -0x0efa "ᇹ" EEK_KEYSYM_CATEGORY_LETTER # Hangul_J_YeorinHieuh ᇹ HANGUL JONGSEONG YEORINHIEUH -0x0eff "₩" EEK_KEYSYM_CATEGORY_LETTER # Korean_Won ₩ WON SIGN -0x13bc "Œ" EEK_KEYSYM_CATEGORY_LETTER # OE Œ LATIN CAPITAL LIGATURE OE -0x13bd "œ" EEK_KEYSYM_CATEGORY_LETTER # oe œ LATIN SMALL LIGATURE OE -0x13be "Ÿ" EEK_KEYSYM_CATEGORY_LETTER # Ydiaeresis Ÿ LATIN CAPITAL LETTER Y WITH DIAERESIS -0x20a0 "₠" EEK_KEYSYM_CATEGORY_LETTER # EcuSign ₠ EURO-CURRENCY SIGN -0x20a1 "₡" EEK_KEYSYM_CATEGORY_LETTER # ColonSign ₡ COLON SIGN -0x20a2 "₢" EEK_KEYSYM_CATEGORY_LETTER # CruzeiroSign ₢ CRUZEIRO SIGN -0x20a3 "₣" EEK_KEYSYM_CATEGORY_LETTER # FFrancSign ₣ FRENCH FRANC SIGN -0x20a4 "₤" EEK_KEYSYM_CATEGORY_LETTER # LiraSign ₤ LIRA SIGN -0x20a5 "₥" EEK_KEYSYM_CATEGORY_LETTER # MillSign ₥ MILL SIGN -0x20a6 "₦" EEK_KEYSYM_CATEGORY_LETTER # NairaSign ₦ NAIRA SIGN -0x20a7 "₧" EEK_KEYSYM_CATEGORY_LETTER # PesetaSign ₧ PESETA SIGN -0x20a8 "₨" EEK_KEYSYM_CATEGORY_LETTER # RupeeSign ₨ RUPEE SIGN -0x20a9 "₩" EEK_KEYSYM_CATEGORY_LETTER # WonSign ₩ WON SIGN -0x20aa "₪" EEK_KEYSYM_CATEGORY_LETTER # NewSheqelSign ₪ NEW SHEQEL SIGN -0x20ab "₫" EEK_KEYSYM_CATEGORY_LETTER # DongSign ₫ DONG SIGN -0x20ac "€" EEK_KEYSYM_CATEGORY_LETTER # EuroSign € EURO SIGN +0x0efa "ᇹ" EEK_SYMBOL_CATEGORY_LETTER # Hangul_J_YeorinHieuh ᇹ HANGUL JONGSEONG YEORINHIEUH +0x0eff "₩" EEK_SYMBOL_CATEGORY_LETTER # Korean_Won ₩ WON SIGN +0x13bc "Œ" EEK_SYMBOL_CATEGORY_LETTER # OE Œ LATIN CAPITAL LIGATURE OE +0x13bd "œ" EEK_SYMBOL_CATEGORY_LETTER # oe œ LATIN SMALL LIGATURE OE +0x13be "Ÿ" EEK_SYMBOL_CATEGORY_LETTER # Ydiaeresis Ÿ LATIN CAPITAL LETTER Y WITH DIAERESIS +0x20a0 "₠" EEK_SYMBOL_CATEGORY_LETTER # EcuSign ₠ EURO-CURRENCY SIGN +0x20a1 "₡" EEK_SYMBOL_CATEGORY_LETTER # ColonSign ₡ COLON SIGN +0x20a2 "₢" EEK_SYMBOL_CATEGORY_LETTER # CruzeiroSign ₢ CRUZEIRO SIGN +0x20a3 "₣" EEK_SYMBOL_CATEGORY_LETTER # FFrancSign ₣ FRENCH FRANC SIGN +0x20a4 "₤" EEK_SYMBOL_CATEGORY_LETTER # LiraSign ₤ LIRA SIGN +0x20a5 "₥" EEK_SYMBOL_CATEGORY_LETTER # MillSign ₥ MILL SIGN +0x20a6 "₦" EEK_SYMBOL_CATEGORY_LETTER # NairaSign ₦ NAIRA SIGN +0x20a7 "₧" EEK_SYMBOL_CATEGORY_LETTER # PesetaSign ₧ PESETA SIGN +0x20a8 "₨" EEK_SYMBOL_CATEGORY_LETTER # RupeeSign ₨ RUPEE SIGN +0x20a9 "₩" EEK_SYMBOL_CATEGORY_LETTER # WonSign ₩ WON SIGN +0x20aa "₪" EEK_SYMBOL_CATEGORY_LETTER # NewSheqelSign ₪ NEW SHEQEL SIGN +0x20ab "₫" EEK_SYMBOL_CATEGORY_LETTER # DongSign ₫ DONG SIGN +0x20ac "€" EEK_SYMBOL_CATEGORY_LETTER # EuroSign € EURO SIGN # Following items added to GTK, not in the xterm table # Numeric keypad # 0xFF80 # Space * -0xFFAA "*" EEK_KEYSYM_CATEGORY_LETTER # Multiply * -0xFFAB "+" EEK_KEYSYM_CATEGORY_LETTER # Add * -0xFFAC "," EEK_KEYSYM_CATEGORY_LETTER # Separator * -0xFFAD "-" EEK_KEYSYM_CATEGORY_LETTER # Subtract * -0xFFAE "." EEK_KEYSYM_CATEGORY_LETTER # Decimal * -0xFFAF "/" EEK_KEYSYM_CATEGORY_LETTER # Divide * -0xFFB0 "0" EEK_KEYSYM_CATEGORY_LETTER # 0 * -0xFFB1 "1" EEK_KEYSYM_CATEGORY_LETTER # 1 * -0xFFB2 "2" EEK_KEYSYM_CATEGORY_LETTER # 2 * -0xFFB3 "3" EEK_KEYSYM_CATEGORY_LETTER # 3 * -0xFFB4 "4" EEK_KEYSYM_CATEGORY_LETTER # 4 * -0xFFB5 "5" EEK_KEYSYM_CATEGORY_LETTER # 5 * -0xFFB6 "6" EEK_KEYSYM_CATEGORY_LETTER # 6 * -0xFFB7 "7" EEK_KEYSYM_CATEGORY_LETTER # 7 * -0xFFB8 "8" EEK_KEYSYM_CATEGORY_LETTER # 8 * -0xFFB9 "9" EEK_KEYSYM_CATEGORY_LETTER # 9 * -0xFFBD "=" EEK_KEYSYM_CATEGORY_LETTER # Equal * +0xFFAA "*" EEK_SYMBOL_CATEGORY_LETTER # Multiply * +0xFFAB "+" EEK_SYMBOL_CATEGORY_LETTER # Add * +0xFFAC "," EEK_SYMBOL_CATEGORY_LETTER # Separator * +0xFFAD "-" EEK_SYMBOL_CATEGORY_LETTER # Subtract * +0xFFAE "." EEK_SYMBOL_CATEGORY_LETTER # Decimal * +0xFFAF "/" EEK_SYMBOL_CATEGORY_LETTER # Divide * +0xFFB0 "0" EEK_SYMBOL_CATEGORY_LETTER # 0 * +0xFFB1 "1" EEK_SYMBOL_CATEGORY_LETTER # 1 * +0xFFB2 "2" EEK_SYMBOL_CATEGORY_LETTER # 2 * +0xFFB3 "3" EEK_SYMBOL_CATEGORY_LETTER # 3 * +0xFFB4 "4" EEK_SYMBOL_CATEGORY_LETTER # 4 * +0xFFB5 "5" EEK_SYMBOL_CATEGORY_LETTER # 5 * +0xFFB6 "6" EEK_SYMBOL_CATEGORY_LETTER # 6 * +0xFFB7 "7" EEK_SYMBOL_CATEGORY_LETTER # 7 * +0xFFB8 "8" EEK_SYMBOL_CATEGORY_LETTER # 8 * +0xFFB9 "9" EEK_SYMBOL_CATEGORY_LETTER # 9 * +0xFFBD "=" EEK_SYMBOL_CATEGORY_LETTER # Equal * # End numeric keypad diff --git a/eek/xkeysym-keysym-entries.txt b/eek/xkeysym-keysym-entries.txt new file mode 100644 index 00000000..e9bc86e4 --- /dev/null +++ b/eek/xkeysym-keysym-entries.txt @@ -0,0 +1,1306 @@ +0x000020 "space" EEK_SYMBOL_CATEGORY_KEYNAME +0x000021 "exclam" EEK_SYMBOL_CATEGORY_KEYNAME +0x000022 "quotedbl" EEK_SYMBOL_CATEGORY_KEYNAME +0x000023 "numbersign" EEK_SYMBOL_CATEGORY_KEYNAME +0x000024 "dollar" EEK_SYMBOL_CATEGORY_KEYNAME +0x000025 "percent" EEK_SYMBOL_CATEGORY_KEYNAME +0x000026 "ampersand" EEK_SYMBOL_CATEGORY_KEYNAME +0x000027 "apostrophe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000027 "quoteright" EEK_SYMBOL_CATEGORY_KEYNAME +0x000028 "parenleft" EEK_SYMBOL_CATEGORY_KEYNAME +0x000029 "parenright" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002a "asterisk" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002b "plus" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002c "comma" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002d "minus" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002e "period" EEK_SYMBOL_CATEGORY_KEYNAME +0x00002f "slash" EEK_SYMBOL_CATEGORY_KEYNAME +0x000030 "0" EEK_SYMBOL_CATEGORY_LETTER +0x000031 "1" EEK_SYMBOL_CATEGORY_LETTER +0x000032 "2" EEK_SYMBOL_CATEGORY_LETTER +0x000033 "3" EEK_SYMBOL_CATEGORY_LETTER +0x000034 "4" EEK_SYMBOL_CATEGORY_LETTER +0x000035 "5" EEK_SYMBOL_CATEGORY_LETTER +0x000036 "6" EEK_SYMBOL_CATEGORY_LETTER +0x000037 "7" EEK_SYMBOL_CATEGORY_LETTER +0x000038 "8" EEK_SYMBOL_CATEGORY_LETTER +0x000039 "9" EEK_SYMBOL_CATEGORY_LETTER +0x00003a "colon" EEK_SYMBOL_CATEGORY_KEYNAME +0x00003b "semicolon" EEK_SYMBOL_CATEGORY_KEYNAME +0x00003c "less" EEK_SYMBOL_CATEGORY_KEYNAME +0x00003d "equal" EEK_SYMBOL_CATEGORY_KEYNAME +0x00003e "greater" EEK_SYMBOL_CATEGORY_KEYNAME +0x00003f "question" EEK_SYMBOL_CATEGORY_KEYNAME +0x000040 "at" EEK_SYMBOL_CATEGORY_KEYNAME +0x000041 "A" EEK_SYMBOL_CATEGORY_LETTER +0x000042 "B" EEK_SYMBOL_CATEGORY_LETTER +0x000043 "C" EEK_SYMBOL_CATEGORY_LETTER +0x000044 "D" EEK_SYMBOL_CATEGORY_LETTER +0x000045 "E" EEK_SYMBOL_CATEGORY_LETTER +0x000046 "F" EEK_SYMBOL_CATEGORY_LETTER +0x000047 "G" EEK_SYMBOL_CATEGORY_LETTER +0x000048 "H" EEK_SYMBOL_CATEGORY_LETTER +0x000049 "I" EEK_SYMBOL_CATEGORY_LETTER +0x00004a "J" EEK_SYMBOL_CATEGORY_LETTER +0x00004b "K" EEK_SYMBOL_CATEGORY_LETTER +0x00004c "L" EEK_SYMBOL_CATEGORY_LETTER +0x00004d "M" EEK_SYMBOL_CATEGORY_LETTER +0x00004e "N" EEK_SYMBOL_CATEGORY_LETTER +0x00004f "O" EEK_SYMBOL_CATEGORY_LETTER +0x000050 "P" EEK_SYMBOL_CATEGORY_LETTER +0x000051 "Q" EEK_SYMBOL_CATEGORY_LETTER +0x000052 "R" EEK_SYMBOL_CATEGORY_LETTER +0x000053 "S" EEK_SYMBOL_CATEGORY_LETTER +0x000054 "T" EEK_SYMBOL_CATEGORY_LETTER +0x000055 "U" EEK_SYMBOL_CATEGORY_LETTER +0x000056 "V" EEK_SYMBOL_CATEGORY_LETTER +0x000057 "W" EEK_SYMBOL_CATEGORY_LETTER +0x000058 "X" EEK_SYMBOL_CATEGORY_LETTER +0x000059 "Y" EEK_SYMBOL_CATEGORY_LETTER +0x00005a "Z" EEK_SYMBOL_CATEGORY_LETTER +0x00005b "bracketleft" EEK_SYMBOL_CATEGORY_KEYNAME +0x00005c "backslash" EEK_SYMBOL_CATEGORY_KEYNAME +0x00005d "bracketright" EEK_SYMBOL_CATEGORY_KEYNAME +0x00005e "asciicircum" EEK_SYMBOL_CATEGORY_KEYNAME +0x00005f "underscore" EEK_SYMBOL_CATEGORY_KEYNAME +0x000060 "grave" EEK_SYMBOL_CATEGORY_KEYNAME +0x000060 "quoteleft" EEK_SYMBOL_CATEGORY_KEYNAME +0x000061 "a" EEK_SYMBOL_CATEGORY_LETTER +0x000062 "b" EEK_SYMBOL_CATEGORY_LETTER +0x000063 "c" EEK_SYMBOL_CATEGORY_LETTER +0x000064 "d" EEK_SYMBOL_CATEGORY_LETTER +0x000065 "e" EEK_SYMBOL_CATEGORY_LETTER +0x000066 "f" EEK_SYMBOL_CATEGORY_LETTER +0x000067 "g" EEK_SYMBOL_CATEGORY_LETTER +0x000068 "h" EEK_SYMBOL_CATEGORY_LETTER +0x000069 "i" EEK_SYMBOL_CATEGORY_LETTER +0x00006a "j" EEK_SYMBOL_CATEGORY_LETTER +0x00006b "k" EEK_SYMBOL_CATEGORY_LETTER +0x00006c "l" EEK_SYMBOL_CATEGORY_LETTER +0x00006d "m" EEK_SYMBOL_CATEGORY_LETTER +0x00006e "n" EEK_SYMBOL_CATEGORY_LETTER +0x00006f "o" EEK_SYMBOL_CATEGORY_LETTER +0x000070 "p" EEK_SYMBOL_CATEGORY_LETTER +0x000071 "q" EEK_SYMBOL_CATEGORY_LETTER +0x000072 "r" EEK_SYMBOL_CATEGORY_LETTER +0x000073 "s" EEK_SYMBOL_CATEGORY_LETTER +0x000074 "t" EEK_SYMBOL_CATEGORY_LETTER +0x000075 "u" EEK_SYMBOL_CATEGORY_LETTER +0x000076 "v" EEK_SYMBOL_CATEGORY_LETTER +0x000077 "w" EEK_SYMBOL_CATEGORY_LETTER +0x000078 "x" EEK_SYMBOL_CATEGORY_LETTER +0x000079 "y" EEK_SYMBOL_CATEGORY_LETTER +0x00007a "z" EEK_SYMBOL_CATEGORY_LETTER +0x00007b "braceleft" EEK_SYMBOL_CATEGORY_KEYNAME +0x00007c "bar" EEK_SYMBOL_CATEGORY_KEYNAME +0x00007d "braceright" EEK_SYMBOL_CATEGORY_KEYNAME +0x00007e "asciitilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a0 "nobreakspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a1 "exclamdown" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a2 "cent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a3 "sterling" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a4 "currency" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a5 "yen" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a6 "brokenbar" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a7 "section" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a8 "diaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000a9 "copyright" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000aa "ordfeminine" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ab "guillemotleft" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ac "notsign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ad "hyphen" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ae "registered" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000af "macron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b0 "degree" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b1 "plusminus" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b2 "twosuperior" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b3 "threesuperior" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b4 "acute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b5 "mu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b6 "paragraph" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b7 "periodcentered" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b8 "cedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000b9 "onesuperior" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ba "masculine" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000bb "guillemotright" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000bc "onequarter" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000bd "onehalf" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000be "threequarters" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000bf "questiondown" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c0 "Agrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c1 "Aacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c2 "Acircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c3 "Atilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c4 "Adiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c5 "Aring" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c6 "AE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c7 "Ccedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c8 "Egrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000c9 "Eacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ca "Ecircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000cb "Ediaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000cc "Igrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000cd "Iacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ce "Icircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000cf "Idiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d0 "ETH" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d0 "Eth" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d1 "Ntilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d2 "Ograve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d3 "Oacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d4 "Ocircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d5 "Otilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d6 "Odiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d7 "multiply" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d8 "Ooblique" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000d9 "Ugrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000da "Uacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000db "Ucircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000dc "Udiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000dd "Yacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000de "THORN" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000de "Thorn" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000df "ssharp" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e0 "agrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e1 "aacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e2 "acircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e3 "atilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e4 "adiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e5 "aring" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e6 "ae" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e7 "ccedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e8 "egrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000e9 "eacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ea "ecircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000eb "ediaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ec "igrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ed "iacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ee "icircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ef "idiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f0 "eth" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f1 "ntilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f2 "ograve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f3 "oacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f4 "ocircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f5 "otilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f6 "odiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f7 "division" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f8 "oslash" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000f9 "ugrave" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000fa "uacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000fb "ucircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000fc "udiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000fd "yacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000fe "thorn" EEK_SYMBOL_CATEGORY_KEYNAME +0x0000ff "ydiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a1 "Aogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a2 "breve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a3 "Lstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a5 "Lcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a6 "Sacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001a9 "Scaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001aa "Scedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ab "Tcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ac "Zacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ae "Zcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001af "Zabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b1 "aogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b2 "ogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b3 "lstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b5 "lcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b6 "sacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b7 "caron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001b9 "scaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ba "scedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001bb "tcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001bc "zacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001bd "doubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001be "zcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001bf "zabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001c0 "Racute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001c3 "Abreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001c5 "Lacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001c6 "Cacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001c8 "Ccaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ca "Eogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001cc "Ecaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001cf "Dcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d0 "Dstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d1 "Nacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d2 "Ncaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d5 "Odoubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d8 "Rcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001d9 "Uring" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001db "Udoubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001de "Tcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001e0 "racute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001e3 "abreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001e5 "lacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001e6 "cacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001e8 "ccaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ea "eogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ec "ecaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ef "dcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f0 "dstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f1 "nacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f2 "ncaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f5 "odoubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f8 "rcaron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001f9 "uring" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001fb "udoubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001fe "tcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0001ff "abovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002a1 "Hstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002a6 "Hcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002a9 "Iabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002ab "Gbreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002ac "Jcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002b1 "hstroke" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002b6 "hcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002b9 "idotless" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002bb "gbreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002bc "jcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002c5 "Cabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002c6 "Ccircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002d5 "Gabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002d8 "Gcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002dd "Ubreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002de "Scircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002e5 "cabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002e6 "ccircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002f5 "gabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002f8 "gcircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002fd "ubreve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0002fe "scircumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003a2 "kappa" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003a2 "kra" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003a3 "Rcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003a5 "Itilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003a6 "Lcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003aa "Emacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003ab "Gcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003ac "Tslash" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003b3 "rcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003b5 "itilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003b6 "lcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003ba "emacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003bb "gcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003bc "tslash" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003bd "ENG" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003bf "eng" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003c0 "Amacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003c7 "Iogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003cc "Eabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003cf "Imacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003d1 "Ncedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003d2 "Omacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003d3 "Kcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003d9 "Uogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003dd "Utilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003de "Umacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003e0 "amacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003e7 "iogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003ec "eabovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003ef "imacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003f1 "ncedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003f2 "omacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003f3 "kcedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003f9 "uogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003fd "utilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x0003fe "umacron" EEK_SYMBOL_CATEGORY_KEYNAME +0x00047e "overline" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a1 "kana_fullstop" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a2 "kana_openingbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a3 "kana_closingbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a4 "kana_comma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a5 "kana_conjunctive" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a5 "kana_middledot" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a6 "kana_WO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a7 "kana_a" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a8 "kana_i" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004a9 "kana_u" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004aa "kana_e" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ab "kana_o" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ac "kana_ya" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ad "kana_yu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ae "kana_yo" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004af "kana_tsu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004af "kana_tu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b0 "prolongedsound" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b1 "kana_A" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b2 "kana_I" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b3 "kana_U" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b4 "kana_E" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b5 "kana_O" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b6 "kana_KA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b7 "kana_KI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b8 "kana_KU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004b9 "kana_KE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ba "kana_KO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004bb "kana_SA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004bc "kana_SHI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004bd "kana_SU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004be "kana_SE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004bf "kana_SO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c0 "kana_TA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c1 "kana_CHI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c1 "kana_TI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c2 "kana_TSU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c2 "kana_TU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c3 "kana_TE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c4 "kana_TO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c5 "kana_NA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c6 "kana_NI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c7 "kana_NU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c8 "kana_NE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004c9 "kana_NO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ca "kana_HA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004cb "kana_HI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004cc "kana_FU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004cc "kana_HU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004cd "kana_HE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004ce "kana_HO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004cf "kana_MA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d0 "kana_MI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d1 "kana_MU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d2 "kana_ME" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d3 "kana_MO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d4 "kana_YA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d5 "kana_YU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d6 "kana_YO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d7 "kana_RA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d8 "kana_RI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004d9 "kana_RU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004da "kana_RE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004db "kana_RO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004dc "kana_WA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004dd "kana_N" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004de "voicedsound" EEK_SYMBOL_CATEGORY_KEYNAME +0x0004df "semivoicedsound" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ac "Arabic_comma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005bb "Arabic_semicolon" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005bf "Arabic_question_mark" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c1 "Arabic_hamza" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c2 "Arabic_maddaonalef" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c3 "Arabic_hamzaonalef" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c4 "Arabic_hamzaonwaw" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c5 "Arabic_hamzaunderalef" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c6 "Arabic_hamzaonyeh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c7 "Arabic_alef" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c8 "Arabic_beh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005c9 "Arabic_tehmarbuta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ca "Arabic_teh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005cb "Arabic_theh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005cc "Arabic_jeem" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005cd "Arabic_hah" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ce "Arabic_khah" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005cf "Arabic_dal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d0 "Arabic_thal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d1 "Arabic_ra" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d2 "Arabic_zain" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d3 "Arabic_seen" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d4 "Arabic_sheen" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d5 "Arabic_sad" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d6 "Arabic_dad" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d7 "Arabic_tah" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d8 "Arabic_zah" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005d9 "Arabic_ain" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005da "Arabic_ghain" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e0 "Arabic_tatweel" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e1 "Arabic_feh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e2 "Arabic_qaf" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e3 "Arabic_kaf" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e4 "Arabic_lam" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e5 "Arabic_meem" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e6 "Arabic_noon" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e7 "Arabic_ha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e7 "Arabic_heh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e8 "Arabic_waw" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005e9 "Arabic_alefmaksura" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ea "Arabic_yeh" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005eb "Arabic_fathatan" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ec "Arabic_dammatan" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ed "Arabic_kasratan" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ee "Arabic_fatha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005ef "Arabic_damma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005f0 "Arabic_kasra" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005f1 "Arabic_shadda" EEK_SYMBOL_CATEGORY_KEYNAME +0x0005f2 "Arabic_sukun" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a1 "Serbian_dje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a2 "Macedonia_gje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a3 "Cyrillic_io" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a4 "Ukrainian_ie" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a4 "Ukranian_je" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a5 "Macedonia_dse" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a6 "Ukrainian_i" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a6 "Ukranian_i" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a7 "Ukrainian_yi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a7 "Ukranian_yi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a8 "Cyrillic_je" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a8 "Serbian_je" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a9 "Cyrillic_lje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006a9 "Serbian_lje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006aa "Cyrillic_nje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006aa "Serbian_nje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ab "Serbian_tshe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ac "Macedonia_kje" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ae "Byelorussian_shortu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006af "Cyrillic_dzhe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006af "Serbian_dze" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b0 "numerosign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b1 "Serbian_DJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b2 "Macedonia_GJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b3 "Cyrillic_IO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b4 "Ukrainian_IE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b4 "Ukranian_JE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b5 "Macedonia_DSE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b6 "Ukrainian_I" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b6 "Ukranian_I" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b7 "Ukrainian_YI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b7 "Ukranian_YI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b8 "Cyrillic_JE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b8 "Serbian_JE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b9 "Cyrillic_LJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006b9 "Serbian_LJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ba "Cyrillic_NJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ba "Serbian_NJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006bb "Serbian_TSHE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006bc "Macedonia_KJE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006be "Byelorussian_SHORTU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006bf "Cyrillic_DZHE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006bf "Serbian_DZE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c0 "Cyrillic_yu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c1 "Cyrillic_a" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c2 "Cyrillic_be" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c3 "Cyrillic_tse" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c4 "Cyrillic_de" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c5 "Cyrillic_ie" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c6 "Cyrillic_ef" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c7 "Cyrillic_ghe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c8 "Cyrillic_ha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006c9 "Cyrillic_i" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ca "Cyrillic_shorti" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006cb "Cyrillic_ka" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006cc "Cyrillic_el" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006cd "Cyrillic_em" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ce "Cyrillic_en" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006cf "Cyrillic_o" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d0 "Cyrillic_pe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d1 "Cyrillic_ya" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d2 "Cyrillic_er" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d3 "Cyrillic_es" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d4 "Cyrillic_te" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d5 "Cyrillic_u" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d6 "Cyrillic_zhe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d7 "Cyrillic_ve" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d8 "Cyrillic_softsign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006d9 "Cyrillic_yeru" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006da "Cyrillic_ze" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006db "Cyrillic_sha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006dc "Cyrillic_e" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006dd "Cyrillic_shcha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006de "Cyrillic_che" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006df "Cyrillic_hardsign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e0 "Cyrillic_YU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e1 "Cyrillic_A" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e2 "Cyrillic_BE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e3 "Cyrillic_TSE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e4 "Cyrillic_DE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e5 "Cyrillic_IE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e6 "Cyrillic_EF" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e7 "Cyrillic_GHE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e8 "Cyrillic_HA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006e9 "Cyrillic_I" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ea "Cyrillic_SHORTI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006eb "Cyrillic_KA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ec "Cyrillic_EL" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ed "Cyrillic_EM" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ee "Cyrillic_EN" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ef "Cyrillic_O" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f0 "Cyrillic_PE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f1 "Cyrillic_YA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f2 "Cyrillic_ER" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f3 "Cyrillic_ES" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f4 "Cyrillic_TE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f5 "Cyrillic_U" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f6 "Cyrillic_ZHE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f7 "Cyrillic_VE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f8 "Cyrillic_SOFTSIGN" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006f9 "Cyrillic_YERU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006fa "Cyrillic_ZE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006fb "Cyrillic_SHA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006fc "Cyrillic_E" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006fd "Cyrillic_SHCHA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006fe "Cyrillic_CHE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0006ff "Cyrillic_HARDSIGN" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a1 "Greek_ALPHAaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a2 "Greek_EPSILONaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a3 "Greek_ETAaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a4 "Greek_IOTAaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a5 "Greek_IOTAdieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a5 "Greek_IOTAdiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a7 "Greek_OMICRONaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a8 "Greek_UPSILONaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007a9 "Greek_UPSILONdieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ab "Greek_OMEGAaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ae "Greek_accentdieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007af "Greek_horizbar" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b1 "Greek_alphaaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b2 "Greek_epsilonaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b3 "Greek_etaaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b4 "Greek_iotaaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b5 "Greek_iotadieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b6 "Greek_iotaaccentdieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b7 "Greek_omicronaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b8 "Greek_upsilonaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007b9 "Greek_upsilondieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ba "Greek_upsilonaccentdieresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007bb "Greek_omegaaccent" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c1 "Greek_ALPHA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c2 "Greek_BETA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c3 "Greek_GAMMA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c4 "Greek_DELTA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c5 "Greek_EPSILON" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c6 "Greek_ZETA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c7 "Greek_ETA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c8 "Greek_THETA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007c9 "Greek_IOTA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ca "Greek_KAPPA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007cb "Greek_LAMBDA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007cb "Greek_LAMDA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007cc "Greek_MU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007cd "Greek_NU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ce "Greek_XI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007cf "Greek_OMICRON" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d0 "Greek_PI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d1 "Greek_RHO" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d2 "Greek_SIGMA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d4 "Greek_TAU" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d5 "Greek_UPSILON" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d6 "Greek_PHI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d7 "Greek_CHI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d8 "Greek_PSI" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007d9 "Greek_OMEGA" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e1 "Greek_alpha" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e2 "Greek_beta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e3 "Greek_gamma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e4 "Greek_delta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e5 "Greek_epsilon" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e6 "Greek_zeta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e7 "Greek_eta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e8 "Greek_theta" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007e9 "Greek_iota" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ea "Greek_kappa" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007eb "Greek_lambda" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007eb "Greek_lamda" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ec "Greek_mu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ed "Greek_nu" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ee "Greek_xi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007ef "Greek_omicron" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f0 "Greek_pi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f1 "Greek_rho" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f2 "Greek_sigma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f3 "Greek_finalsmallsigma" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f4 "Greek_tau" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f5 "Greek_upsilon" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f6 "Greek_phi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f7 "Greek_chi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f8 "Greek_psi" EEK_SYMBOL_CATEGORY_KEYNAME +0x0007f9 "Greek_omega" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a1 "leftradical" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a2 "topleftradical" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a3 "horizconnector" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a4 "topintegral" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a5 "botintegral" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a6 "vertconnector" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a7 "topleftsqbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a8 "botleftsqbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008a9 "toprightsqbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008aa "botrightsqbracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ab "topleftparens" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ac "botleftparens" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ad "toprightparens" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ae "botrightparens" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008af "leftmiddlecurlybrace" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b0 "rightmiddlecurlybrace" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b1 "topleftsummation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b2 "botleftsummation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b3 "topvertsummationconnector" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b4 "botvertsummationconnector" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b5 "toprightsummation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b6 "botrightsummation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008b7 "rightmiddlesummation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008bc "lessthanequal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008bd "notequal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008be "greaterthanequal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008bf "integral" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c0 "therefore" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c1 "variation" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c2 "infinity" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c5 "nabla" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c8 "approximate" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008c9 "similarequal" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008cd "ifonlyif" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ce "implies" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008cf "identical" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008d6 "radical" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008da "includedin" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008db "includes" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008dc "intersection" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008dd "union" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008de "logicaland" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008df "logicalor" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008ef "partialderivative" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008f6 "function" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008fb "leftarrow" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008fc "uparrow" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008fd "rightarrow" EEK_SYMBOL_CATEGORY_KEYNAME +0x0008fe "downarrow" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009df "blank" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e0 "soliddiamond" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e1 "checkerboard" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e2 "ht" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e3 "ff" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e4 "cr" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e5 "lf" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e8 "nl" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009e9 "vt" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009ea "lowrightcorner" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009eb "uprightcorner" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009ec "upleftcorner" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009ed "lowleftcorner" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009ee "crossinglines" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009ef "horizlinescan1" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f0 "horizlinescan3" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f1 "horizlinescan5" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f2 "horizlinescan7" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f3 "horizlinescan9" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f4 "leftt" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f5 "rightt" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f6 "bott" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f7 "topt" EEK_SYMBOL_CATEGORY_KEYNAME +0x0009f8 "vertbar" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa1 "emspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa2 "enspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa3 "em3space" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa4 "em4space" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa5 "digitspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa6 "punctspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa7 "thinspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa8 "hairspace" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aa9 "emdash" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aaa "endash" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aac "signifblank" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aae "ellipsis" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aaf "doubbaselinedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab0 "onethird" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab1 "twothirds" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab2 "onefifth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab3 "twofifths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab4 "threefifths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab5 "fourfifths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab6 "onesixth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab7 "fivesixths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ab8 "careof" EEK_SYMBOL_CATEGORY_KEYNAME +0x000abb "figdash" EEK_SYMBOL_CATEGORY_KEYNAME +0x000abc "leftanglebracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x000abd "decimalpoint" EEK_SYMBOL_CATEGORY_KEYNAME +0x000abe "rightanglebracket" EEK_SYMBOL_CATEGORY_KEYNAME +0x000abf "marker" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ac3 "oneeighth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ac4 "threeeighths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ac5 "fiveeighths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ac6 "seveneighths" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ac9 "trademark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aca "signaturemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000acb "trademarkincircle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000acc "leftopentriangle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000acd "rightopentriangle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ace "emopencircle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000acf "emopenrectangle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad0 "leftsinglequotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad1 "rightsinglequotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad2 "leftdoublequotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad3 "rightdoublequotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad4 "prescription" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad6 "minutes" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad7 "seconds" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ad9 "latincross" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ada "hexagram" EEK_SYMBOL_CATEGORY_KEYNAME +0x000adb "filledrectbullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000adc "filledlefttribullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000add "filledrighttribullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ade "emfilledcircle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000adf "emfilledrect" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae0 "enopencircbullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae1 "enopensquarebullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae2 "openrectbullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae3 "opentribulletup" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae4 "opentribulletdown" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae5 "openstar" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae6 "enfilledcircbullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae7 "enfilledsqbullet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae8 "filledtribulletup" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ae9 "filledtribulletdown" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aea "leftpointer" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aeb "rightpointer" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aec "club" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aed "diamond" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aee "heart" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af0 "maltesecross" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af1 "dagger" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af2 "doubledagger" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af3 "checkmark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af4 "ballotcross" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af5 "musicalsharp" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af6 "musicalflat" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af7 "malesymbol" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af8 "femalesymbol" EEK_SYMBOL_CATEGORY_KEYNAME +0x000af9 "telephone" EEK_SYMBOL_CATEGORY_KEYNAME +0x000afa "telephonerecorder" EEK_SYMBOL_CATEGORY_KEYNAME +0x000afb "phonographcopyright" EEK_SYMBOL_CATEGORY_KEYNAME +0x000afc "caret" EEK_SYMBOL_CATEGORY_KEYNAME +0x000afd "singlelowquotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000afe "doublelowquotemark" EEK_SYMBOL_CATEGORY_KEYNAME +0x000aff "cursor" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ba3 "leftcaret" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ba6 "rightcaret" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ba8 "downcaret" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ba9 "upcaret" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bc0 "overbar" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bc2 "downtack" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bc3 "upshoe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bc4 "downstile" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bc6 "underbar" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bca "jot" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bcc "quad" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bce "uptack" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bcf "circle" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bd3 "upstile" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bd6 "downshoe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bd8 "rightshoe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bda "leftshoe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bdc "lefttack" EEK_SYMBOL_CATEGORY_KEYNAME +0x000bfc "righttack" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cdf "hebrew_doublelowline" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce0 "hebrew_aleph" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce1 "hebrew_bet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce1 "hebrew_beth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce2 "hebrew_gimel" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce2 "hebrew_gimmel" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce3 "hebrew_dalet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce3 "hebrew_daleth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce4 "hebrew_he" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce5 "hebrew_waw" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce6 "hebrew_zain" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce6 "hebrew_zayin" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce7 "hebrew_chet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce7 "hebrew_het" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce8 "hebrew_tet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce8 "hebrew_teth" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ce9 "hebrew_yod" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cea "hebrew_finalkaph" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ceb "hebrew_kaph" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cec "hebrew_lamed" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ced "hebrew_finalmem" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cee "hebrew_mem" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cef "hebrew_finalnun" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf0 "hebrew_nun" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf1 "hebrew_samech" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf1 "hebrew_samekh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf2 "hebrew_ayin" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf3 "hebrew_finalpe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf4 "hebrew_pe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf5 "hebrew_finalzade" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf5 "hebrew_finalzadi" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf6 "hebrew_zade" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf6 "hebrew_zadi" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf7 "hebrew_kuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf7 "hebrew_qoph" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf8 "hebrew_resh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cf9 "hebrew_shin" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cfa "hebrew_taf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000cfa "hebrew_taw" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da1 "Thai_kokai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da2 "Thai_khokhai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da3 "Thai_khokhuat" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da4 "Thai_khokhwai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da5 "Thai_khokhon" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da6 "Thai_khorakhang" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da7 "Thai_ngongu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da8 "Thai_chochan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000da9 "Thai_choching" EEK_SYMBOL_CATEGORY_KEYNAME +0x000daa "Thai_chochang" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dab "Thai_soso" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dac "Thai_chochoe" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dad "Thai_yoying" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dae "Thai_dochada" EEK_SYMBOL_CATEGORY_KEYNAME +0x000daf "Thai_topatak" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db0 "Thai_thothan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db1 "Thai_thonangmontho" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db2 "Thai_thophuthao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db3 "Thai_nonen" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db4 "Thai_dodek" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db5 "Thai_totao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db6 "Thai_thothung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db7 "Thai_thothahan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db8 "Thai_thothong" EEK_SYMBOL_CATEGORY_KEYNAME +0x000db9 "Thai_nonu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dba "Thai_bobaimai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dbb "Thai_popla" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dbc "Thai_phophung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dbd "Thai_fofa" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dbe "Thai_phophan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dbf "Thai_fofan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc0 "Thai_phosamphao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc1 "Thai_moma" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc2 "Thai_yoyak" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc3 "Thai_rorua" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc4 "Thai_ru" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc5 "Thai_loling" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc6 "Thai_lu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc7 "Thai_wowaen" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc8 "Thai_sosala" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dc9 "Thai_sorusi" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dca "Thai_sosua" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dcb "Thai_hohip" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dcc "Thai_lochula" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dcd "Thai_oang" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dce "Thai_honokhuk" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dcf "Thai_paiyannoi" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd0 "Thai_saraa" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd1 "Thai_maihanakat" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd2 "Thai_saraaa" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd3 "Thai_saraam" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd4 "Thai_sarai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd5 "Thai_saraii" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd6 "Thai_saraue" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd7 "Thai_sarauee" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd8 "Thai_sarau" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dd9 "Thai_sarauu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dda "Thai_phinthu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dde "Thai_maihanakat_maitho" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ddf "Thai_baht" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de0 "Thai_sarae" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de1 "Thai_saraae" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de2 "Thai_sarao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de3 "Thai_saraaimaimuan" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de4 "Thai_saraaimaimalai" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de5 "Thai_lakkhangyao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de6 "Thai_maiyamok" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de7 "Thai_maitaikhu" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de8 "Thai_maiek" EEK_SYMBOL_CATEGORY_KEYNAME +0x000de9 "Thai_maitho" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dea "Thai_maitri" EEK_SYMBOL_CATEGORY_KEYNAME +0x000deb "Thai_maichattawa" EEK_SYMBOL_CATEGORY_KEYNAME +0x000dec "Thai_thanthakhat" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ded "Thai_nikhahit" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df0 "Thai_leksun" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df1 "Thai_leknung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df2 "Thai_leksong" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df3 "Thai_leksam" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df4 "Thai_leksi" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df5 "Thai_lekha" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df6 "Thai_lekhok" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df7 "Thai_lekchet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df8 "Thai_lekpaet" EEK_SYMBOL_CATEGORY_KEYNAME +0x000df9 "Thai_lekkao" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea1 "Hangul_Kiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea2 "Hangul_SsangKiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea3 "Hangul_KiyeogSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea4 "Hangul_Nieun" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea5 "Hangul_NieunJieuj" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea6 "Hangul_NieunHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea7 "Hangul_Dikeud" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea8 "Hangul_SsangDikeud" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ea9 "Hangul_Rieul" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eaa "Hangul_RieulKiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eab "Hangul_RieulMieum" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eac "Hangul_RieulPieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ead "Hangul_RieulSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eae "Hangul_RieulTieut" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eaf "Hangul_RieulPhieuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb0 "Hangul_RieulHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb1 "Hangul_Mieum" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb2 "Hangul_Pieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb3 "Hangul_SsangPieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb4 "Hangul_PieubSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb5 "Hangul_Sios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb6 "Hangul_SsangSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb7 "Hangul_Ieung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb8 "Hangul_Jieuj" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eb9 "Hangul_SsangJieuj" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eba "Hangul_Cieuc" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ebb "Hangul_Khieuq" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ebc "Hangul_Tieut" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ebd "Hangul_Phieuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ebe "Hangul_Hieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ebf "Hangul_A" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec0 "Hangul_AE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec1 "Hangul_YA" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec2 "Hangul_YAE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec3 "Hangul_EO" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec4 "Hangul_E" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec5 "Hangul_YEO" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec6 "Hangul_YE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec7 "Hangul_O" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec8 "Hangul_WA" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ec9 "Hangul_WAE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eca "Hangul_OE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ecb "Hangul_YO" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ecc "Hangul_U" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ecd "Hangul_WEO" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ece "Hangul_WE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ecf "Hangul_WI" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed0 "Hangul_YU" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed1 "Hangul_EU" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed2 "Hangul_YI" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed3 "Hangul_I" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed4 "Hangul_J_Kiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed5 "Hangul_J_SsangKiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed6 "Hangul_J_KiyeogSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed7 "Hangul_J_Nieun" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed8 "Hangul_J_NieunJieuj" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ed9 "Hangul_J_NieunHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eda "Hangul_J_Dikeud" EEK_SYMBOL_CATEGORY_KEYNAME +0x000edb "Hangul_J_Rieul" EEK_SYMBOL_CATEGORY_KEYNAME +0x000edc "Hangul_J_RieulKiyeog" EEK_SYMBOL_CATEGORY_KEYNAME +0x000edd "Hangul_J_RieulMieum" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ede "Hangul_J_RieulPieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000edf "Hangul_J_RieulSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee0 "Hangul_J_RieulTieut" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee1 "Hangul_J_RieulPhieuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee2 "Hangul_J_RieulHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee3 "Hangul_J_Mieum" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee4 "Hangul_J_Pieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee5 "Hangul_J_PieubSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee6 "Hangul_J_Sios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee7 "Hangul_J_SsangSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee8 "Hangul_J_Ieung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ee9 "Hangul_J_Jieuj" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eea "Hangul_J_Cieuc" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eeb "Hangul_J_Khieuq" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eec "Hangul_J_Tieut" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eed "Hangul_J_Phieuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eee "Hangul_J_Hieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eef "Hangul_RieulYeorinHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef0 "Hangul_SunkyeongeumMieum" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef1 "Hangul_SunkyeongeumPieub" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef2 "Hangul_PanSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef3 "Hangul_KkogjiDalrinIeung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef4 "Hangul_SunkyeongeumPhieuf" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef5 "Hangul_YeorinHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef6 "Hangul_AraeA" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef7 "Hangul_AraeAE" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef8 "Hangul_J_PanSios" EEK_SYMBOL_CATEGORY_KEYNAME +0x000ef9 "Hangul_J_KkogjiDalrinIeung" EEK_SYMBOL_CATEGORY_KEYNAME +0x000efa "Hangul_J_YeorinHieuh" EEK_SYMBOL_CATEGORY_KEYNAME +0x000eff "Korean_Won" EEK_SYMBOL_CATEGORY_KEYNAME +0x0013bc "OE" EEK_SYMBOL_CATEGORY_KEYNAME +0x0013bd "oe" EEK_SYMBOL_CATEGORY_KEYNAME +0x0013be "Ydiaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a0 "EcuSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a1 "ColonSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a2 "CruzeiroSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a3 "FFrancSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a4 "LiraSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a5 "MillSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a6 "NairaSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a7 "PesetaSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a8 "RupeeSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020a9 "WonSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020aa "NewSheqelSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020ab "DongSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x0020ac "EuroSign" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd01 "3270_Duplicate" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd02 "3270_FieldMark" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd03 "3270_Right2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd04 "3270_Left2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd05 "3270_BackTab" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd06 "3270_EraseEOF" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd07 "3270_EraseInput" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd08 "3270_Reset" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd09 "3270_Quit" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0a "3270_PA1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0b "3270_PA2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0c "3270_PA3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0d "3270_Test" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0e "3270_Attn" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd0f "3270_CursorBlink" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd10 "3270_AltCursor" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd11 "3270_KeyClick" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd12 "3270_Jump" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd13 "3270_Ident" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd14 "3270_Rule" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd15 "3270_Copy" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd16 "3270_Play" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd17 "3270_Setup" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd18 "3270_Record" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd19 "3270_ChangeScreen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd1a "3270_DeleteWord" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd1b "3270_ExSelect" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd1c "3270_CursorSelect" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd1d "3270_PrintScreen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fd1e "3270_Enter" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe01 "ISO_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe02 "ISO_Level2_Latch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe03 "ISO_Level3_Shift" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe04 "ISO_Level3_Latch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe05 "ISO_Level3_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe06 "ISO_Group_Latch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe07 "ISO_Group_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe08 "ISO_Next_Group" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe09 "ISO_Next_Group_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0a "ISO_Prev_Group" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0b "ISO_Prev_Group_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0c "ISO_First_Group" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0d "ISO_First_Group_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0e "ISO_Last_Group" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe0f "ISO_Last_Group_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe20 "ISO_Left_Tab" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe21 "ISO_Move_Line_Up" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe22 "ISO_Move_Line_Down" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe23 "ISO_Partial_Line_Up" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe24 "ISO_Partial_Line_Down" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe25 "ISO_Partial_Space_Left" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe26 "ISO_Partial_Space_Right" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe27 "ISO_Set_Margin_Left" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe28 "ISO_Set_Margin_Right" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe29 "ISO_Release_Margin_Left" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2a "ISO_Release_Margin_Right" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2b "ISO_Release_Both_Margins" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2c "ISO_Fast_Cursor_Left" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2d "ISO_Fast_Cursor_Right" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2e "ISO_Fast_Cursor_Up" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe2f "ISO_Fast_Cursor_Down" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe30 "ISO_Continuous_Underline" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe31 "ISO_Discontinuous_Underline" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe32 "ISO_Emphasize" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe33 "ISO_Center_Object" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe34 "ISO_Enter" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe50 "dead_grave" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe51 "dead_acute" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe52 "dead_circumflex" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe53 "dead_tilde" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe54 "dead_macron" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe55 "dead_breve" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe56 "dead_abovedot" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe57 "dead_diaeresis" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe58 "dead_abovering" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe59 "dead_doubleacute" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5a "dead_caron" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5b "dead_cedilla" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5c "dead_ogonek" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5d "dead_iota" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5e "dead_voiced_sound" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe5f "dead_semivoiced_sound" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe60 "dead_belowdot" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe61 "dead_hook" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe62 "dead_horn" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe70 "AccessX_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe71 "AccessX_Feedback_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe72 "RepeatKeys_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe73 "SlowKeys_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe74 "BounceKeys_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe75 "StickyKeys_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe76 "MouseKeys_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe77 "MouseKeys_Accel_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe78 "Overlay1_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe79 "Overlay2_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fe7a "AudibleBell_Enable" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fed0 "First_Virtual_Screen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fed1 "Prev_Virtual_Screen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fed2 "Next_Virtual_Screen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fed4 "Last_Virtual_Screen" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fed5 "Terminate_Server" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee0 "Pointer_Left" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee1 "Pointer_Right" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee2 "Pointer_Up" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee3 "Pointer_Down" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee4 "Pointer_UpLeft" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee5 "Pointer_UpRight" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee6 "Pointer_DownLeft" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee7 "Pointer_DownRight" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee8 "Pointer_Button_Dflt" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fee9 "Pointer_Button1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feea "Pointer_Button2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feeb "Pointer_Button3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feec "Pointer_Button4" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feed "Pointer_Button5" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feee "Pointer_DblClick_Dflt" EEK_SYMBOL_CATEGORY_KEYNAME +0x00feef "Pointer_DblClick1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef0 "Pointer_DblClick2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef1 "Pointer_DblClick3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef2 "Pointer_DblClick4" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef3 "Pointer_DblClick5" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef4 "Pointer_Drag_Dflt" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef5 "Pointer_Drag1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef6 "Pointer_Drag2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef7 "Pointer_Drag3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef8 "Pointer_Drag4" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fef9 "Pointer_EnableKeys" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fefa "Pointer_Accelerate" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fefb "Pointer_DfltBtnNext" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fefc "Pointer_DfltBtnPrev" EEK_SYMBOL_CATEGORY_KEYNAME +0x00fefd "Pointer_Drag5" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff08 "BackSpace" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff09 "Tab" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff0a "Linefeed" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff0b "Clear" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff0d "Return" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff13 "Pause" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff14 "Scroll_Lock" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff15 "Sys_Req" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff1b "Escape" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff20 "Multi_key" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff21 "Kanji" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff22 "Muhenkan" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff23 "Henkan" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff23 "Henkan_Mode" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff24 "Romaji" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff25 "Hiragana" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff26 "Katakana" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff27 "Hiragana_Katakana" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff28 "Zenkaku" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff29 "Hankaku" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2a "Zenkaku_Hankaku" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2b "Touroku" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2c "Massyo" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2d "Kana_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2e "Kana_Shift" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff2f "Eisu_Shift" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff30 "Eisu_toggle" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff31 "Hangul" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff32 "Hangul_Start" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff33 "Hangul_End" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff34 "Hangul_Hanja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff35 "Hangul_Jamo" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff36 "Hangul_Romaja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff37 "Codeinput" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff38 "Hangul_Jeonja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff39 "Hangul_Banja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3a "Hangul_PreHanja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3b "Hangul_PostHanja" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3c "SingleCandidate" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3d "MultipleCandidate" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3e "PreviousCandidate" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff3f "Hangul_Special" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff50 "Home" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff51 "Left" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff52 "Up" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff53 "Right" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff54 "Down" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff55 "Page_Up" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff55 "Prior" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff56 "Page_Down" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff56 "Next" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff57 "End" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff58 "Begin" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff60 "Select" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff61 "Print" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff62 "Execute" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff63 "Insert" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff65 "Undo" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff66 "Redo" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff67 "Menu" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff68 "Find" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff69 "Cancel" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff6a "Help" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff6b "Break" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "Arabic_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "Greek_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "Hangul_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "Hebrew_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "ISO_Group_Shift" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "Mode_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "kana_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7e "script_switch" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff7f "Num_Lock" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff80 "KP_Space" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff89 "KP_Tab" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff8d "KP_Enter" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff91 "KP_F1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff92 "KP_F2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff93 "KP_F3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff94 "KP_F4" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ff95 "KP_Home" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff96 "KP_Left" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff97 "KP_Up" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff98 "KP_Right" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff99 "KP_Down" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9a "KP_Page_Up" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9a "KP_Prior" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9b "KP_Page_Down" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9b "KP_Next" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9c "KP_End" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9d "KP_Begin" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9e "KP_Insert" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ff9f "KP_Delete" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0x00ffaa "KP_Multiply" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffab "KP_Add" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffac "KP_Separator" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffad "KP_Subtract" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffae "KP_Decimal" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffaf "KP_Divide" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb0 "KP_0" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb1 "KP_1" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb2 "KP_2" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb3 "KP_3" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb4 "KP_4" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb5 "KP_5" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb6 "KP_6" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb7 "KP_7" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb8 "KP_8" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffb9 "KP_9" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffbd "KP_Equal" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffbe "F1" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffbf "F2" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc0 "F3" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc1 "F4" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc2 "F5" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc3 "F6" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc4 "F7" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc5 "F8" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc6 "F9" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc7 "F10" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc8 "F11" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffc9 "F12" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffca "F13" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffcb "F14" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffcc "F15" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffcd "F16" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffce "F17" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffcf "F18" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd0 "F19" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd1 "F20" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd2 "F21" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd3 "F22" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd4 "F23" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd5 "F24" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd6 "F25" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd7 "F26" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd8 "F27" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffd9 "F28" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffda "F29" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffdb "F30" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffdc "F31" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffdd "F32" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffde "F33" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffdf "F34" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffe0 "F35" EEK_SYMBOL_CATEGORY_FUNCTION +0x00ffe1 "Shift_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe2 "Shift_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe3 "Control_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe4 "Control_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe5 "Caps_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe6 "Shift_Lock" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe7 "Meta_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe8 "Meta_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffe9 "Alt_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffea "Alt_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffeb "Super_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffec "Super_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffed "Hyper_L" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffee "Hyper_R" EEK_SYMBOL_CATEGORY_KEYNAME +0x00ffff "Delete" EEK_SYMBOL_CATEGORY_KEYNAME # 1 +0xffffff "VoidSymbol" EEK_SYMBOL_CATEGORY_KEYNAME diff --git a/src/eekboard.c b/src/eekboard.c index 02f6ad5d..2781de1d 100644 --- a/src/eekboard.c +++ b/src/eekboard.c @@ -382,7 +382,7 @@ a11y_keystroke_listener (const AccessibleKeystroke *stroke, { Eekboard *eekboard = user_data; EekKey *key; - guint keysym; + EekSymbol *symbol; guint ignored_keysyms[] = {XK_Shift_L, XK_Shift_R, XK_ISO_Level3_Shift, @@ -399,10 +399,11 @@ a11y_keystroke_listener (const AccessibleKeystroke *stroke, /* XXX: Ignore modifier keys since there is no way to receive SPI_KEY_RELEASED event for them. */ - keysym = eek_key_get_keysym (key); - for (i = 0; i < G_N_ELEMENTS(ignored_keysyms) && - keysym != ignored_keysyms[i]; i++) - ; + symbol = eek_key_get_symbol (key); + for (i = 0; i < G_N_ELEMENTS(ignored_keysyms); i++) + if (EEK_IS_KEYSYM(symbol) && + eek_keysym_get_xkeysym (EEK_KEYSYM(symbol)) == ignored_keysyms[i]) + break; if (i != G_N_ELEMENTS(ignored_keysyms)) return FALSE; @@ -431,16 +432,17 @@ on_key_pressed (EekKeyboard *keyboard, gpointer user_data) { Eekboard *eekboard = user_data; - guint keysym; + EekSymbol *symbol; - keysym = eek_key_get_keysym (key); + symbol = eek_key_get_symbol (key); EEKBOARD_NOTE("%s %X", - eek_keysym_to_string (keysym), + eek_symbol_get_name (symbol), eek_keyboard_get_modifiers (keyboard)); - if (!eek_keysym_is_modifier (keysym)) + if (!eek_symbol_is_modifier (symbol) && + EEK_IS_KEYSYM(symbol)) fakekey_press_keysym (eekboard->fakekey, - keysym, + eek_keysym_get_xkeysym (EEK_KEYSYM(symbol)), eek_keyboard_get_modifiers (keyboard)); } diff --git a/tests/eek-xml-test.c b/tests/eek-xml-test.c index 5ddef8ca..52694d44 100644 --- a/tests/eek-xml-test.c +++ b/tests/eek-xml-test.c @@ -41,7 +41,7 @@ test_output_parse (void) eek_keyboard_output (keyboard, output, 0); g_object_unref (keyboard); -#if 1 +#if 0 fwrite (output->str, sizeof(gchar), output->len, stdout); #endif diff --git a/tests/test-keyboard.xml b/tests/test-keyboard.xml index a30553f9..0649c90a 100644 --- a/tests/test-keyboard.xml +++ b/tests/test-keyboard.xml @@ -28,78 +28,78 @@ 54.000000,104.000000,24.000000,24.000000 outline0 - KP_Delete - KP_Decimal + KP_Delete + KP_Decimal 2.000000,104.000000,50.000000,24.000000 outline1 - KP_Insert - KP_0 + KP_Insert + KP_0 80.000000,78.000000,24.000000,50.000000 outline2 - KP_Enter + KP_Enter 54.000000,78.000000,24.000000,24.000000 outline0 - KP_Next - KP_3 + KP_Next + KP_3 28.000000,78.000000,24.000000,24.000000 outline0 - KP_Down - KP_2 + KP_Down + KP_2 2.000000,78.000000,24.000000,24.000000 outline0 - KP_End - KP_1 + KP_End + KP_1 54.000000,53.000000,24.000000,24.000000 outline0 - KP_Right - KP_6 + KP_Right + KP_6 28.000000,53.000000,24.000000,24.000000 outline0 - KP_Begin - KP_5 + KP_Begin + KP_5 2.000000,53.000000,24.000000,24.000000 outline0 - KP_Left - KP_4 + KP_Left + KP_4 80.000000,27.000000,24.000000,50.000000 outline2 - KP_Add + KP_Add @@ -107,31 +107,31 @@ 54.000000,27.000000,24.000000,24.000000 outline0 - KP_Prior - KP_9 + KP_Prior + KP_9 28.000000,27.000000,24.000000,24.000000 outline0 - KP_Up - KP_8 + KP_Up + KP_8 2.000000,27.000000,24.000000,24.000000 outline0 - KP_Home - KP_7 + KP_Home + KP_7 80.000000,1.000000,24.000000,24.000000 outline0 - KP_Subtract + KP_Subtract @@ -139,7 +139,7 @@ 54.000000,1.000000,24.000000,24.000000 outline0 - KP_Multiply + KP_Multiply @@ -147,7 +147,7 @@ 28.000000,1.000000,24.000000,24.000000 outline0 - KP_Divide + KP_Divide @@ -155,8 +155,8 @@ 2.000000,1.000000,24.000000,24.000000 outline0 - Num_Lock - Pointer_EnableKeys + Num_Lock + Pointer_EnableKeys @@ -183,70 +183,70 @@ 54.000000,104.000000,24.000000,24.000000 outline0 - Right + Right 28.000000,104.000000,24.000000,24.000000 outline0 - Down + Down 2.000000,104.000000,24.000000,24.000000 outline0 - Left + Left 28.000000,78.000000,24.000000,24.000000 outline0 - Up + Up 54.000000,27.000000,24.000000,24.000000 outline0 - Next + Next 28.000000,27.000000,24.000000,24.000000 outline0 - End + End 2.000000,27.000000,24.000000,24.000000 outline0 - Delete + Delete 54.000000,1.000000,24.000000,24.000000 outline0 - Prior + Prior 28.000000,1.000000,24.000000,24.000000 outline0 - Home + Home 2.000000,1.000000,24.000000,24.000000 outline0 - Insert + Insert @@ -277,32 +277,32 @@ 359.000000,104.000000,31.000000,24.000000 outline3 - Control_R + Control_R 326.000000,104.000000,31.000000,24.000000 outline3 - Menu + Menu 294.000000,104.000000,31.000000,24.000000 outline3 - Super_R + Super_R 261.000000,104.000000,31.000000,24.000000 outline3 - Alt_R - Meta_R - Alt_R - Meta_R - ISO_Level3_Shift + Alt_R + Meta_R + Alt_R + Meta_R + ISO_Level3_Shift @@ -310,466 +310,466 @@ 106.000000,104.000000,153.000000,24.000000 outline4 - space + space 73.000000,104.000000,31.000000,24.000000 outline3 - Alt_L - Meta_L + Alt_L + Meta_L 40.000000,104.000000,31.000000,24.000000 outline3 - Super_L + Super_L 2.000000,104.000000,36.000000,24.000000 outline5 - Control_L + Control_L 320.000000,78.000000,70.000000,24.000000 outline6 - Shift_R + Shift_R 294.000000,78.000000,24.000000,24.000000 outline0 - slash - question + slash + question 268.000000,78.000000,24.000000,24.000000 outline0 - period - greater + period + greater 242.000000,78.000000,24.000000,24.000000 outline0 - comma - less + comma + less 216.000000,78.000000,24.000000,24.000000 outline0 - m - M + m + M 190.000000,78.000000,24.000000,24.000000 outline0 - n - N + n + N 164.000000,78.000000,24.000000,24.000000 outline0 - b - B + b + B 138.000000,78.000000,24.000000,24.000000 outline0 - v - V + v + V 113.000000,78.000000,24.000000,24.000000 outline0 - c - C + c + C 87.000000,78.000000,24.000000,24.000000 outline0 - x - X + x + X 61.000000,78.000000,24.000000,24.000000 outline0 - z - Z + z + Z 2.000000,78.000000,57.000000,24.000000 outline7 - Shift_L + Shift_L 333.000000,53.000000,57.000000,24.000000 outline8 - Return + Return 307.000000,53.000000,24.000000,24.000000 outline0 - colon - asterisk - quoteright - quotedbl - quoteright - quotedbl + colon + asterisk + quoteright + quotedbl + quoteright + quotedbl 281.000000,53.000000,24.000000,24.000000 outline0 - semicolon - plus - semicolon - colon - semicolon - colon + semicolon + plus + semicolon + colon + semicolon + colon 256.000000,53.000000,24.000000,24.000000 outline0 - l - L + l + L 230.000000,53.000000,24.000000,24.000000 outline0 - k - K + k + K 204.000000,53.000000,24.000000,24.000000 outline0 - j - J + j + J 178.000000,53.000000,24.000000,24.000000 outline0 - h - H + h + H 152.000000,53.000000,24.000000,24.000000 outline0 - g - G + g + G 126.000000,53.000000,24.000000,24.000000 outline0 - f - F + f + F 100.000000,53.000000,24.000000,24.000000 outline0 - d - D + d + D 74.000000,53.000000,24.000000,24.000000 outline0 - s - S + s + S 49.000000,53.000000,24.000000,24.000000 outline0 - a - A + a + A 2.000000,53.000000,44.000000,24.000000 outline9 - Control_L - Control_L + Control_L + Control_L 352.000000,27.000000,38.000000,24.000000 outline10 - bracketright - braceright - backslash - bar - backslash - bar + bracketright + braceright + backslash + bar + backslash + bar 326.000000,27.000000,24.000000,24.000000 outline0 - bracketleft - braceleft - bracketright - braceright - bracketright - braceright + bracketleft + braceleft + bracketright + braceright + bracketright + braceright 300.000000,27.000000,24.000000,24.000000 outline0 - at - quoteleft - bracketleft - braceleft - bracketleft - braceleft + at + quoteleft + bracketleft + braceleft + bracketleft + braceleft 275.000000,27.000000,24.000000,24.000000 outline0 - p - P + p + P 249.000000,27.000000,24.000000,24.000000 outline0 - o - O + o + O 223.000000,27.000000,24.000000,24.000000 outline0 - i - I + i + I 197.000000,27.000000,24.000000,24.000000 outline0 - u - U + u + U 171.000000,27.000000,24.000000,24.000000 outline0 - y - Y + y + Y 145.000000,27.000000,24.000000,24.000000 outline0 - t - T + t + T 119.000000,27.000000,24.000000,24.000000 outline0 - r - R + r + R 93.000000,27.000000,24.000000,24.000000 outline0 - e - E + e + E 68.000000,27.000000,24.000000,24.000000 outline0 - w - W + w + W 42.000000,27.000000,24.000000,24.000000 outline0 - q - Q + q + Q 2.000000,27.000000,38.000000,24.000000 outline11 - Tab - ISO_Left_Tab + Tab + ISO_Left_Tab 339.000000,1.000000,51.000000,24.000000 outline12 - BackSpace + BackSpace 313.000000,1.000000,24.000000,24.000000 outline0 - asciicircum - asciitilde - equal - plus - equal - plus + asciicircum + asciitilde + equal + plus + equal + plus 287.000000,1.000000,24.000000,24.000000 outline0 - minus - equal - minus - underscore - minus - underscore + minus + equal + minus + underscore + minus + underscore 261.000000,1.000000,24.000000,24.000000 outline0 - 0 - asciitilde - 0 - parenright - 0 - parenright + 0 + asciitilde + 0 + parenright + 0 + parenright 235.000000,1.000000,24.000000,24.000000 outline0 - 9 - parenright - 9 - parenleft - 9 - parenleft + 9 + parenright + 9 + parenleft + 9 + parenleft 209.000000,1.000000,24.000000,24.000000 outline0 - 8 - parenleft - 8 - asterisk - 8 - asterisk + 8 + parenleft + 8 + asterisk + 8 + asterisk 183.000000,1.000000,24.000000,24.000000 outline0 - 7 - quoteright - 7 - ampersand - 7 - ampersand + 7 + quoteright + 7 + ampersand + 7 + ampersand 157.000000,1.000000,24.000000,24.000000 outline0 - 6 - ampersand - 6 - asciicircum - 6 - asciicircum + 6 + ampersand + 6 + asciicircum + 6 + asciicircum 132.000000,1.000000,24.000000,24.000000 outline0 - 5 - percent + 5 + percent - 5 - percent + 5 + percent - 5 - percent - EuroSign + 5 + percent + EuroSign @@ -777,48 +777,48 @@ 106.000000,1.000000,24.000000,24.000000 outline0 - 4 - dollar + 4 + dollar 80.000000,1.000000,24.000000,24.000000 outline0 - 3 - numbersign + 3 + numbersign 54.000000,1.000000,24.000000,24.000000 outline0 - 2 - quotedbl - 2 - at - 2 - at + 2 + quotedbl + 2 + at + 2 + at 28.000000,1.000000,24.000000,24.000000 outline0 - 1 - exclam + 1 + exclam 2.000000,1.000000,24.000000,24.000000 outline0 - Zenkaku_Hankaku - Kanji - quoteleft - asciitilde - quoteleft - asciitilde + Zenkaku_Hankaku + Kanji + quoteleft + asciitilde + quoteleft + asciitilde @@ -833,30 +833,30 @@ 453.000000,1.000000,24.000000,24.000000 outline0 - Pause - Break + Pause + Break 427.000000,1.000000,24.000000,24.000000 outline0 - Scroll_Lock + Scroll_Lock 401.000000,1.000000,24.000000,24.000000 outline0 - Print - Execute + Print + Execute 366.000000,1.000000,24.000000,24.000000 outline0 - F12 + F12 @@ -864,7 +864,7 @@ 340.000000,1.000000,24.000000,24.000000 outline0 - F11 + F11 @@ -872,7 +872,7 @@ 314.000000,1.000000,24.000000,24.000000 outline0 - F10 + F10 @@ -880,7 +880,7 @@ 288.000000,1.000000,24.000000,24.000000 outline0 - F9 + F9 @@ -888,7 +888,7 @@ 249.000000,1.000000,24.000000,24.000000 outline0 - F8 + F8 @@ -896,7 +896,7 @@ 223.000000,1.000000,24.000000,24.000000 outline0 - F7 + F7 @@ -904,7 +904,7 @@ 197.000000,1.000000,24.000000,24.000000 outline0 - F6 + F6 @@ -912,7 +912,7 @@ 171.000000,1.000000,24.000000,24.000000 outline0 - F5 + F5 @@ -920,7 +920,7 @@ 132.000000,1.000000,24.000000,24.000000 outline0 - F4 + F4 @@ -928,7 +928,7 @@ 106.000000,1.000000,24.000000,24.000000 outline0 - F3 + F3 @@ -936,7 +936,7 @@ 80.000000,1.000000,24.000000,24.000000 outline0 - F2 + F2 @@ -944,7 +944,7 @@ 54.000000,1.000000,24.000000,24.000000 outline0 - F1 + F1 @@ -952,7 +952,7 @@ 2.000000,1.000000,24.000000,24.000000 outline0 - Escape + Escape