aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Janouch <p@janouch.name>2018-09-12 13:38:33 +0200
committerPřemysl Janouch <p@janouch.name>2018-10-07 18:09:09 +0200
commitcd6c9e4d8c6a49eb91091c00b55e0f879c9220bf (patch)
tree17dbca0adbac6ce78ae65be17be70c59f9b60755
parentbf14fd5e04ab96e755cec4fd46349339e1eb3e2b (diff)
downloadhaven-cd6c9e4d8c6a49eb91091c00b55e0f879c9220bf.tar.gz
haven-cd6c9e4d8c6a49eb91091c00b55e0f879c9220bf.tar.xz
haven-cd6c9e4d8c6a49eb91091c00b55e0f879c9220bf.zip
ht: add generated X11 keysym maps
Now we can make sense of keysyms and translate them to text.
-rwxr-xr-xht/gen-keysyms.sh49
-rwxr-xr-xht/gen-unicode-map.sh49
-rw-r--r--ht/keysyms.go6761
-rw-r--r--ht/unicode_map.go859
4 files changed, 7718 insertions, 0 deletions
diff --git a/ht/gen-keysyms.sh b/ht/gen-keysyms.sh
new file mode 100755
index 0000000..064dec4
--- /dev/null
+++ b/ht/gen-keysyms.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+gofmt <<EOF | sed 's, *//$,,'
+// Code generated by running "go generate" in janouch.name/haven. DO NOT EDIT.
+
+package $GOPACKAGE
+
+import "janouch.name/haven/nexgb/xproto"
+
+$(curl --silent --show-error \
+ https://cgit.freedesktop.org/xorg/proto/x11proto/plain/keysymdef.h \
+ https://cgit.freedesktop.org/xorg/proto/x11proto/plain/XF86keysym.h \
+| perl -lne '
+ next unless /^\#define\s+
+ (XF86)?(XK_)([a-zA-Z_0-9]+)\s+
+ 0x([0-9a-fA-F]+)\s*
+ (?:\/\*\s*(.*?)\s*\*\/)?\s*
+ $/x;
+
+ my ($name, $ident, $hex, $comment) =
+ (($1 // "") . $3, ($1 // "") . $2 . $3, lc $4, ($5 // ""));
+
+ # They are already somewhat sorted in the source file.
+ push @a, { hex => $hex, ident => $ident, comment => $comment };
+
+ $nametokeysym{$name} = $ident;
+
+ # All but the first name listed should be considered deprecated.
+ $keysymtoname{$ident} = $name unless exists $seen{$hex};
+ $seen{$hex}++;
+
+ END {
+ print "const (";
+ print "$_->{ident} = 0x$_->{hex} // $_->{comment}" for @a;
+ print ")";
+
+ # Very large tables, should be an on-demand package :(
+
+ print "// KeysymToName maps X11 keysym constants to their names";
+ print "var KeysymToName = map[xproto.Keysym]string{";
+ print "$_: \"$keysymtoname{$_}\"," for sort keys %keysymtoname;
+ print "}";
+
+ print "// NameToKeysym maps X11 keysym names to their constants";
+ print "var NameToKeysym = map[string]xproto.Keysym{";
+ print "\"$_\": $nametokeysym{$_}," for sort keys %nametokeysym;
+ print "}";
+ }
+')
+EOF
diff --git a/ht/gen-unicode-map.sh b/ht/gen-unicode-map.sh
new file mode 100755
index 0000000..7e94880
--- /dev/null
+++ b/ht/gen-unicode-map.sh
@@ -0,0 +1,49 @@
+#!/bin/sh
+gofmt <<EOF
+// Code generated by running "go generate" in janouch.name/haven. DO NOT EDIT.
+
+package $GOPACKAGE
+
+import "janouch.name/haven/nexgb/xproto"
+
+// KeysymToRune tries to translate an X11 keysym to an appropriate rune.
+// Returns -1 when no match is found.
+func KeysymToRune(ks xproto.Keysym) rune {
+ // Visible Latin-1 is mapped 1:1
+ if (ks >= 0x20 && ks <= 0x7e) || (ks >= 0xa0 && ks <= 0xff) {
+ return rune(ks)
+ }
+ // Directly encoded 24-bit Unicode (going even above plane 16)
+ if (ks & 0xff000000) == 0x01000000 {
+ return rune(ks & 0x00ffffff)
+ }
+
+ min, max := 0, len(keysymToRuneTable)-1
+ for max >= min {
+ mid := (min + max) / 2
+ if keysymToRuneTable[mid].keysym < ks {
+ min = mid + 1
+ } else if keysymToRuneTable[mid].keysym > ks {
+ max = mid - 1
+ } else {
+ return keysymToRuneTable[mid].unicode
+ }
+ }
+ return -1
+}
+
+var keysymToRuneTable = []struct{
+ keysym xproto.Keysym
+ unicode rune
+}{
+$(curl --silent --show-error --location \
+ https://invisible-island.net/datafiles/release/xterm.tar.gz | \
+tar --wildcards -xzOf - 'xterm-*/unicode/keysym.map' | \
+sort | perl -lne '
+ next unless /^(0x([0-9a-f]{4}))\s+U([0-9a-f]{4})\s*(?:\#\s*(.*))?$/;
+ my ($keysym, $ks, $unicode, $comment) = ($1, hex($2), $3, ($4 // ""));
+ print "{$keysym, 0x$unicode}, // $comment"
+ if $ks >= 0x100 && $unicode ne "0000";
+')
+}
+EOF
diff --git a/ht/keysyms.go b/ht/keysyms.go
new file mode 100644
index 0000000..b746a8c
--- /dev/null
+++ b/ht/keysyms.go
@@ -0,0 +1,6761 @@
+// Code generated by running "go generate" in janouch.name/haven. DO NOT EDIT.
+
+package main
+
+import "janouch.name/haven/nexgb/xproto"
+
+const (
+ XK_VoidSymbol = 0xffffff // Void symbol
+ XK_BackSpace = 0xff08 // Back space, back char
+ XK_Tab = 0xff09
+ XK_Linefeed = 0xff0a // Linefeed, LF
+ XK_Clear = 0xff0b
+ XK_Return = 0xff0d // Return, enter
+ XK_Pause = 0xff13 // Pause, hold
+ XK_Scroll_Lock = 0xff14
+ XK_Sys_Req = 0xff15
+ XK_Escape = 0xff1b
+ XK_Delete = 0xffff // Delete, rubout
+ XK_Multi_key = 0xff20 // Multi-key character compose
+ XK_Codeinput = 0xff37
+ XK_SingleCandidate = 0xff3c
+ XK_MultipleCandidate = 0xff3d
+ XK_PreviousCandidate = 0xff3e
+ XK_Kanji = 0xff21 // Kanji, Kanji convert
+ XK_Muhenkan = 0xff22 // Cancel Conversion
+ XK_Henkan_Mode = 0xff23 // Start/Stop Conversion
+ XK_Henkan = 0xff23 // Alias for Henkan_Mode
+ XK_Romaji = 0xff24 // to Romaji
+ XK_Hiragana = 0xff25 // to Hiragana
+ XK_Katakana = 0xff26 // to Katakana
+ XK_Hiragana_Katakana = 0xff27 // Hiragana/Katakana toggle
+ XK_Zenkaku = 0xff28 // to Zenkaku
+ XK_Hankaku = 0xff29 // to Hankaku
+ XK_Zenkaku_Hankaku = 0xff2a // Zenkaku/Hankaku toggle
+ XK_Touroku = 0xff2b // Add to Dictionary
+ XK_Massyo = 0xff2c // Delete from Dictionary
+ XK_Kana_Lock = 0xff2d // Kana Lock
+ XK_Kana_Shift = 0xff2e // Kana Shift
+ XK_Eisu_Shift = 0xff2f // Alphanumeric Shift
+ XK_Eisu_toggle = 0xff30 // Alphanumeric toggle
+ XK_Kanji_Bangou = 0xff37 // Codeinput
+ XK_Zen_Koho = 0xff3d // Multiple/All Candidate(s)
+ XK_Mae_Koho = 0xff3e // Previous Candidate
+ XK_Home = 0xff50
+ XK_Left = 0xff51 // Move left, left arrow
+ XK_Up = 0xff52 // Move up, up arrow
+ XK_Right = 0xff53 // Move right, right arrow
+ XK_Down = 0xff54 // Move down, down arrow
+ XK_Prior = 0xff55 // Prior, previous
+ XK_Page_Up = 0xff55
+ XK_Next = 0xff56 // Next
+ XK_Page_Down = 0xff56
+ XK_End = 0xff57 // EOL
+ XK_Begin = 0xff58 // BOL
+ XK_Select = 0xff60 // Select, mark
+ XK_Print = 0xff61
+ XK_Execute = 0xff62 // Execute, run, do
+ XK_Insert = 0xff63 // Insert, insert here
+ XK_Undo = 0xff65
+ XK_Redo = 0xff66 // Redo, again
+ XK_Menu = 0xff67
+ XK_Find = 0xff68 // Find, search
+ XK_Cancel = 0xff69 // Cancel, stop, abort, exit
+ XK_Help = 0xff6a // Help
+ XK_Break = 0xff6b
+ XK_Mode_switch = 0xff7e // Character set switch
+ XK_script_switch = 0xff7e // Alias for mode_switch
+ XK_Num_Lock = 0xff7f
+ XK_KP_Space = 0xff80 // Space
+ XK_KP_Tab = 0xff89
+ XK_KP_Enter = 0xff8d // Enter
+ XK_KP_F1 = 0xff91 // PF1, KP_A, ...
+ XK_KP_F2 = 0xff92
+ XK_KP_F3 = 0xff93
+ XK_KP_F4 = 0xff94
+ XK_KP_Home = 0xff95
+ XK_KP_Left = 0xff96
+ XK_KP_Up = 0xff97
+ XK_KP_Right = 0xff98
+ XK_KP_Down = 0xff99
+ XK_KP_Prior = 0xff9a
+ XK_KP_Page_Up = 0xff9a
+ XK_KP_Next = 0xff9b
+ XK_KP_Page_Down = 0xff9b
+ XK_KP_End = 0xff9c
+ XK_KP_Begin = 0xff9d
+ XK_KP_Insert = 0xff9e
+ XK_KP_Delete = 0xff9f
+ XK_KP_Equal = 0xffbd // Equals
+ XK_KP_Multiply = 0xffaa
+ XK_KP_Add = 0xffab
+ XK_KP_Separator = 0xffac // Separator, often comma
+ XK_KP_Subtract = 0xffad
+ XK_KP_Decimal = 0xffae
+ XK_KP_Divide = 0xffaf
+ XK_KP_0 = 0xffb0
+ XK_KP_1 = 0xffb1
+ XK_KP_2 = 0xffb2
+ XK_KP_3 = 0xffb3
+ XK_KP_4 = 0xffb4
+ XK_KP_5 = 0xffb5
+ XK_KP_6 = 0xffb6
+ XK_KP_7 = 0xffb7
+ XK_KP_8 = 0xffb8
+ XK_KP_9 = 0xffb9
+ XK_F1 = 0xffbe
+ XK_F2 = 0xffbf
+ XK_F3 = 0xffc0
+ XK_F4 = 0xffc1
+ XK_F5 = 0xffc2
+ XK_F6 = 0xffc3
+ XK_F7 = 0xffc4
+ XK_F8 = 0xffc5
+ XK_F9 = 0xffc6
+ XK_F10 = 0xffc7
+ XK_F11 = 0xffc8
+ XK_L1 = 0xffc8
+ XK_F12 = 0xffc9
+ XK_L2 = 0xffc9
+ XK_F13 = 0xffca
+ XK_L3 = 0xffca
+ XK_F14 = 0xffcb
+ XK_L4 = 0xffcb
+ XK_F15 = 0xffcc
+ XK_L5 = 0xffcc
+ XK_F16 = 0xffcd
+ XK_L6 = 0xffcd
+ XK_F17 = 0xffce
+ XK_L7 = 0xffce
+ XK_F18 = 0xffcf
+ XK_L8 = 0xffcf
+ XK_F19 = 0xffd0
+ XK_L9 = 0xffd0
+ XK_F20 = 0xffd1
+ XK_L10 = 0xffd1
+ XK_F21 = 0xffd2
+ XK_R1 = 0xffd2
+ XK_F22 = 0xffd3
+ XK_R2 = 0xffd3
+ XK_F23 = 0xffd4
+ XK_R3 = 0xffd4
+ XK_F24 = 0xffd5
+ XK_R4 = 0xffd5
+ XK_F25 = 0xffd6
+ XK_R5 = 0xffd6
+ XK_F26 = 0xffd7
+ XK_R6 = 0xffd7
+ XK_F27 = 0xffd8
+ XK_R7 = 0xffd8
+ XK_F28 = 0xffd9
+ XK_R8 = 0xffd9
+ XK_F29 = 0xffda
+ XK_R9 = 0xffda
+ XK_F30 = 0xffdb
+ XK_R10 = 0xffdb
+ XK_F31 = 0xffdc
+ XK_R11 = 0xffdc
+ XK_F32 = 0xffdd
+ XK_R12 = 0xffdd
+ XK_F33 = 0xffde
+ XK_R13 = 0xffde
+ XK_F34 = 0xffdf
+ XK_R14 = 0xffdf
+ XK_F35 = 0xffe0
+ XK_R15 = 0xffe0
+ XK_Shift_L = 0xffe1 // Left shift
+ XK_Shift_R = 0xffe2 // Right shift
+ XK_Control_L = 0xffe3 // Left control
+ XK_Control_R = 0xffe4 // Right control
+ XK_Caps_Lock = 0xffe5 // Caps lock
+ XK_Shift_Lock = 0xffe6 // Shift lock
+ XK_Meta_L = 0xffe7 // Left meta
+ XK_Meta_R = 0xffe8 // Right meta
+ XK_Alt_L = 0xffe9 // Left alt
+ XK_Alt_R = 0xffea // Right alt
+ XK_Super_L = 0xffeb // Left super
+ XK_Super_R = 0xffec // Right super
+ XK_Hyper_L = 0xffed // Left hyper
+ XK_Hyper_R = 0xffee // Right hyper
+ XK_ISO_Lock = 0xfe01
+ XK_ISO_Level2_Latch = 0xfe02
+ XK_ISO_Level3_Shift = 0xfe03
+ XK_ISO_Level3_Latch = 0xfe04
+ XK_ISO_Level3_Lock = 0xfe05
+ XK_ISO_Level5_Shift = 0xfe11
+ XK_ISO_Level5_Latch = 0xfe12
+ XK_ISO_Level5_Lock = 0xfe13
+ XK_ISO_Group_Shift = 0xff7e // Alias for mode_switch
+ XK_ISO_Group_Latch = 0xfe06
+ XK_ISO_Group_Lock = 0xfe07
+ XK_ISO_Next_Group = 0xfe08
+ XK_ISO_Next_Group_Lock = 0xfe09
+ XK_ISO_Prev_Group = 0xfe0a
+ XK_ISO_Prev_Group_Lock = 0xfe0b
+ XK_ISO_First_Group = 0xfe0c
+ XK_ISO_First_Group_Lock = 0xfe0d
+ XK_ISO_Last_Group = 0xfe0e
+ XK_ISO_Last_Group_Lock = 0xfe0f
+ XK_ISO_Left_Tab = 0xfe20
+ XK_ISO_Move_Line_Up = 0xfe21
+ XK_ISO_Move_Line_Down = 0xfe22
+ XK_ISO_Partial_Line_Up = 0xfe23
+ XK_ISO_Partial_Line_Down = 0xfe24
+ XK_ISO_Partial_Space_Left = 0xfe25
+ XK_ISO_Partial_Space_Right = 0xfe26
+ XK_ISO_Set_Margin_Left = 0xfe27
+ XK_ISO_Set_Margin_Right = 0xfe28
+ XK_ISO_Release_Margin_Left = 0xfe29
+ XK_ISO_Release_Margin_Right = 0xfe2a
+ XK_ISO_Release_Both_Margins = 0xfe2b
+ XK_ISO_Fast_Cursor_Left = 0xfe2c
+ XK_ISO_Fast_Cursor_Right = 0xfe2d
+ XK_ISO_Fast_Cursor_Up = 0xfe2e
+ XK_ISO_Fast_Cursor_Down = 0xfe2f
+ XK_ISO_Continuous_Underline = 0xfe30
+ XK_ISO_Discontinuous_Underline = 0xfe31
+ XK_ISO_Emphasize = 0xfe32
+ XK_ISO_Center_Object = 0xfe33
+ XK_ISO_Enter = 0xfe34
+ XK_dead_grave = 0xfe50
+ XK_dead_acute = 0xfe51
+ XK_dead_circumflex = 0xfe52
+ XK_dead_tilde = 0xfe53
+ XK_dead_perispomeni = 0xfe53 // alias for dead_tilde
+ XK_dead_macron = 0xfe54
+ XK_dead_breve = 0xfe55
+ XK_dead_abovedot = 0xfe56
+ XK_dead_diaeresis = 0xfe57
+ XK_dead_abovering = 0xfe58
+ XK_dead_doubleacute = 0xfe59
+ XK_dead_caron = 0xfe5a
+ XK_dead_cedilla = 0xfe5b
+ XK_dead_ogonek = 0xfe5c
+ XK_dead_iota = 0xfe5d
+ XK_dead_voiced_sound = 0xfe5e
+ XK_dead_semivoiced_sound = 0xfe5f
+ XK_dead_belowdot = 0xfe60
+ XK_dead_hook = 0xfe61
+ XK_dead_horn = 0xfe62
+ XK_dead_stroke = 0xfe63
+ XK_dead_abovecomma = 0xfe64
+ XK_dead_psili = 0xfe64 // alias for dead_abovecomma
+ XK_dead_abovereversedcomma = 0xfe65
+ XK_dead_dasia = 0xfe65 // alias for dead_abovereversedcomma
+ XK_dead_doublegrave = 0xfe66
+ XK_dead_belowring = 0xfe67
+ XK_dead_belowmacron = 0xfe68
+ XK_dead_belowcircumflex = 0xfe69
+ XK_dead_belowtilde = 0xfe6a
+ XK_dead_belowbreve = 0xfe6b
+ XK_dead_belowdiaeresis = 0xfe6c
+ XK_dead_invertedbreve = 0xfe6d
+ XK_dead_belowcomma = 0xfe6e
+ XK_dead_currency = 0xfe6f
+ XK_dead_lowline = 0xfe90
+ XK_dead_aboveverticalline = 0xfe91
+ XK_dead_belowverticalline = 0xfe92
+ XK_dead_longsolidusoverlay = 0xfe93
+ XK_dead_a = 0xfe80
+ XK_dead_A = 0xfe81
+ XK_dead_e = 0xfe82
+ XK_dead_E = 0xfe83
+ XK_dead_i = 0xfe84
+ XK_dead_I = 0xfe85
+ XK_dead_o = 0xfe86
+ XK_dead_O = 0xfe87
+ XK_dead_u = 0xfe88
+ XK_dead_U = 0xfe89
+ XK_dead_small_schwa = 0xfe8a
+ XK_dead_capital_schwa = 0xfe8b
+ XK_dead_greek = 0xfe8c
+ XK_First_Virtual_Screen = 0xfed0
+ XK_Prev_Virtual_Screen = 0xfed1
+ XK_Next_Virtual_Screen = 0xfed2
+ XK_Last_Virtual_Screen = 0xfed4
+ XK_Terminate_Server = 0xfed5
+ XK_AccessX_Enable = 0xfe70
+ XK_AccessX_Feedback_Enable = 0xfe71
+ XK_RepeatKeys_Enable = 0xfe72
+ XK_SlowKeys_Enable = 0xfe73
+ XK_BounceKeys_Enable = 0xfe74
+ XK_StickyKeys_Enable = 0xfe75
+ XK_MouseKeys_Enable = 0xfe76
+ XK_MouseKeys_Accel_Enable = 0xfe77
+ XK_Overlay1_Enable = 0xfe78
+ XK_Overlay2_Enable = 0xfe79
+ XK_AudibleBell_Enable = 0xfe7a
+ XK_Pointer_Left = 0xfee0
+ XK_Pointer_Right = 0xfee1
+ XK_Pointer_Up = 0xfee2
+ XK_Pointer_Down = 0xfee3
+ XK_Pointer_UpLeft = 0xfee4
+ XK_Pointer_UpRight = 0xfee5
+ XK_Pointer_DownLeft = 0xfee6
+ XK_Pointer_DownRight = 0xfee7
+ XK_Pointer_Button_Dflt = 0xfee8
+ XK_Pointer_Button1 = 0xfee9
+ XK_Pointer_Button2 = 0xfeea
+ XK_Pointer_Button3 = 0xfeeb
+ XK_Pointer_Button4 = 0xfeec
+ XK_Pointer_Button5 = 0xfeed
+ XK_Pointer_DblClick_Dflt = 0xfeee
+ XK_Pointer_DblClick1 = 0xfeef
+ XK_Pointer_DblClick2 = 0xfef0
+ XK_Pointer_DblClick3 = 0xfef1
+ XK_Pointer_DblClick4 = 0xfef2
+ XK_Pointer_DblClick5 = 0xfef3
+ XK_Pointer_Drag_Dflt = 0xfef4
+ XK_Pointer_Drag1 = 0xfef5
+ XK_Pointer_Drag2 = 0xfef6
+ XK_Pointer_Drag3 = 0xfef7
+ XK_Pointer_Drag4 = 0xfef8
+ XK_Pointer_Drag5 = 0xfefd
+ XK_Pointer_EnableKeys = 0xfef9
+ XK_Pointer_Accelerate = 0xfefa
+ XK_Pointer_DfltBtnNext = 0xfefb
+ XK_Pointer_DfltBtnPrev = 0xfefc
+ XK_ch = 0xfea0
+ XK_Ch = 0xfea1
+ XK_CH = 0xfea2
+ XK_c_h = 0xfea3
+ XK_C_h = 0xfea4
+ XK_C_H = 0xfea5
+ XK_3270_Duplicate = 0xfd01
+ XK_3270_FieldMark = 0xfd02
+ XK_3270_Right2 = 0xfd03
+ XK_3270_Left2 = 0xfd04
+ XK_3270_BackTab = 0xfd05
+ XK_3270_EraseEOF = 0xfd06
+ XK_3270_EraseInput = 0xfd07
+ XK_3270_Reset = 0xfd08
+ XK_3270_Quit = 0xfd09
+ XK_3270_PA1 = 0xfd0a
+ XK_3270_PA2 = 0xfd0b
+ XK_3270_PA3 = 0xfd0c
+ XK_3270_Test = 0xfd0d
+ XK_3270_Attn = 0xfd0e
+ XK_3270_CursorBlink = 0xfd0f
+ XK_3270_AltCursor = 0xfd10
+ XK_3270_KeyClick = 0xfd11
+ XK_3270_Jump = 0xfd12
+ XK_3270_Ident = 0xfd13
+ XK_3270_Rule = 0xfd14
+ XK_3270_Copy = 0xfd15
+ XK_3270_Play = 0xfd16
+ XK_3270_Setup = 0xfd17
+ XK_3270_Record = 0xfd18
+ XK_3270_ChangeScreen = 0xfd19
+ XK_3270_DeleteWord = 0xfd1a
+ XK_3270_ExSelect = 0xfd1b
+ XK_3270_CursorSelect = 0xfd1c
+ XK_3270_PrintScreen = 0xfd1d
+ XK_3270_Enter = 0xfd1e
+ XK_space = 0x0020 // U+0020 SPACE
+ XK_exclam = 0x0021 // U+0021 EXCLAMATION MARK
+ XK_quotedbl = 0x0022 // U+0022 QUOTATION MARK
+ XK_numbersign = 0x0023 // U+0023 NUMBER SIGN
+ XK_dollar = 0x0024 // U+0024 DOLLAR SIGN
+ XK_percent = 0x0025 // U+0025 PERCENT SIGN
+ XK_ampersand = 0x0026 // U+0026 AMPERSAND
+ XK_apostrophe = 0x0027 // U+0027 APOSTROPHE
+ XK_quoteright = 0x0027 // deprecated
+ XK_parenleft = 0x0028 // U+0028 LEFT PARENTHESIS
+ XK_parenright = 0x0029 // U+0029 RIGHT PARENTHESIS
+ XK_asterisk = 0x002a // U+002A ASTERISK
+ XK_plus = 0x002b // U+002B PLUS SIGN
+ XK_comma = 0x002c // U+002C COMMA
+ XK_minus = 0x002d // U+002D HYPHEN-MINUS
+ XK_period = 0x002e // U+002E FULL STOP
+ XK_slash = 0x002f // U+002F SOLIDUS
+ XK_0 = 0x0030 // U+0030 DIGIT ZERO
+ XK_1 = 0x0031 // U+0031 DIGIT ONE
+ XK_2 = 0x0032 // U+0032 DIGIT TWO
+ XK_3 = 0x0033 // U+0033 DIGIT THREE
+ XK_4 = 0x0034 // U+0034 DIGIT FOUR
+ XK_5 = 0x0035 // U+0035 DIGIT FIVE
+ XK_6 = 0x0036 // U+0036 DIGIT SIX
+ XK_7 = 0x0037 // U+0037 DIGIT SEVEN
+ XK_8 = 0x0038 // U+0038 DIGIT EIGHT
+ XK_9 = 0x0039 // U+0039 DIGIT NINE
+ XK_colon = 0x003a // U+003A COLON
+ XK_semicolon = 0x003b // U+003B SEMICOLON
+ XK_less = 0x003c // U+003C LESS-THAN SIGN
+ XK_equal = 0x003d // U+003D EQUALS SIGN
+ XK_greater = 0x003e // U+003E GREATER-THAN SIGN
+ XK_question = 0x003f // U+003F QUESTION MARK
+ XK_at = 0x0040 // U+0040 COMMERCIAL AT
+ XK_A = 0x0041 // U+0041 LATIN CAPITAL LETTER A
+ XK_B = 0x0042 // U+0042 LATIN CAPITAL LETTER B
+ XK_C = 0x0043 // U+0043 LATIN CAPITAL LETTER C
+ XK_D = 0x0044 // U+0044 LATIN CAPITAL LETTER D
+ XK_E = 0x0045 // U+0045 LATIN CAPITAL LETTER E
+ XK_F = 0x0046 // U+0046 LATIN CAPITAL LETTER F
+ XK_G = 0x0047 // U+0047 LATIN CAPITAL LETTER G
+ XK_H = 0x0048 // U+0048 LATIN CAPITAL LETTER H
+ XK_I = 0x0049 // U+0049 LATIN CAPITAL LETTER I
+ XK_J = 0x004a // U+004A LATIN CAPITAL LETTER J
+ XK_K = 0x004b // U+004B LATIN CAPITAL LETTER K
+ XK_L = 0x004c // U+004C LATIN CAPITAL LETTER L
+ XK_M = 0x004d // U+004D LATIN CAPITAL LETTER M
+ XK_N = 0x004e // U+004E LATIN CAPITAL LETTER N
+ XK_O = 0x004f // U+004F LATIN CAPITAL LETTER O
+ XK_P = 0x0050 // U+0050 LATIN CAPITAL LETTER P
+ XK_Q = 0x0051 // U+0051 LATIN CAPITAL LETTER Q
+ XK_R = 0x0052 // U+0052 LATIN CAPITAL LETTER R
+ XK_S = 0x0053 // U+0053 LATIN CAPITAL LETTER S
+ XK_T = 0x0054 // U+0054 LATIN CAPITAL LETTER T
+ XK_U = 0x0055 // U+0055 LATIN CAPITAL LETTER U
+ XK_V = 0x0056 // U+0056 LATIN CAPITAL LETTER V
+ XK_W = 0x0057 // U+0057 LATIN CAPITAL LETTER W
+ XK_X = 0x0058 // U+0058 LATIN CAPITAL LETTER X
+ XK_Y = 0x0059 // U+0059 LATIN CAPITAL LETTER Y
+ XK_Z = 0x005a // U+005A LATIN CAPITAL LETTER Z
+ XK_bracketleft = 0x005b // U+005B LEFT SQUARE BRACKET
+ XK_backslash = 0x005c // U+005C REVERSE SOLIDUS
+ XK_bracketright = 0x005d // U+005D RIGHT SQUARE BRACKET
+ XK_asciicircum = 0x005e // U+005E CIRCUMFLEX ACCENT
+ XK_underscore = 0x005f // U+005F LOW LINE
+ XK_grave = 0x0060 // U+0060 GRAVE ACCENT
+ XK_quoteleft = 0x0060 // deprecated
+ XK_a = 0x0061 // U+0061 LATIN SMALL LETTER A
+ XK_b = 0x0062 // U+0062 LATIN SMALL LETTER B
+ XK_c = 0x0063 // U+0063 LATIN SMALL LETTER C
+ XK_d = 0x0064 // U+0064 LATIN SMALL LETTER D
+ XK_e = 0x0065 // U+0065 LATIN SMALL LETTER E
+ XK_f = 0x0066 // U+0066 LATIN SMALL LETTER F
+ XK_g = 0x0067 // U+0067 LATIN SMALL LETTER G
+ XK_h = 0x0068 // U+0068 LATIN SMALL LETTER H
+ XK_i = 0x0069 // U+0069 LATIN SMALL LETTER I
+ XK_j = 0x006a // U+006A LATIN SMALL LETTER J
+ XK_k = 0x006b // U+006B LATIN SMALL LETTER K
+ XK_l = 0x006c // U+006C LATIN SMALL LETTER L
+ XK_m = 0x006d // U+006D LATIN SMALL LETTER M
+ XK_n = 0x006e // U+006E LATIN SMALL LETTER N
+ XK_o = 0x006f // U+006F LATIN SMALL LETTER O
+ XK_p = 0x0070 // U+0070 LATIN SMALL LETTER P
+ XK_q = 0x0071 // U+0071 LATIN SMALL LETTER Q
+ XK_r = 0x0072 // U+0072 LATIN SMALL LETTER R
+ XK_s = 0x0073 // U+0073 LATIN SMALL LETTER S
+ XK_t = 0x0074 // U+0074 LATIN SMALL LETTER T
+ XK_u = 0x0075 // U+0075 LATIN SMALL LETTER U
+ XK_v = 0x0076 // U+0076 LATIN SMALL LETTER V
+ XK_w = 0x0077 // U+0077 LATIN SMALL LETTER W
+ XK_x = 0x0078 // U+0078 LATIN SMALL LETTER X
+ XK_y = 0x0079 // U+0079 LATIN SMALL LETTER Y
+ XK_z = 0x007a // U+007A LATIN SMALL LETTER Z
+ XK_braceleft = 0x007b // U+007B LEFT CURLY BRACKET
+ XK_bar = 0x007c // U+007C VERTICAL LINE
+ XK_braceright = 0x007d // U+007D RIGHT CURLY BRACKET
+ XK_asciitilde = 0x007e // U+007E TILDE
+ XK_nobreakspace = 0x00a0 // U+00A0 NO-BREAK SPACE
+ XK_exclamdown = 0x00a1 // U+00A1 INVERTED EXCLAMATION MARK
+ XK_cent = 0x00a2 // U+00A2 CENT SIGN
+ XK_sterling = 0x00a3 // U+00A3 POUND SIGN
+ XK_currency = 0x00a4 // U+00A4 CURRENCY SIGN
+ XK_yen = 0x00a5 // U+00A5 YEN SIGN
+ XK_brokenbar = 0x00a6 // U+00A6 BROKEN BAR
+ XK_section = 0x00a7 // U+00A7 SECTION SIGN
+ XK_diaeresis = 0x00a8 // U+00A8 DIAERESIS
+ XK_copyright = 0x00a9 // U+00A9 COPYRIGHT SIGN
+ XK_ordfeminine = 0x00aa // U+00AA FEMININE ORDINAL INDICATOR
+ XK_guillemotleft = 0x00ab // U+00AB LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
+ XK_notsign = 0x00ac // U+00AC NOT SIGN
+ XK_hyphen = 0x00ad // U+00AD SOFT HYPHEN
+ XK_registered = 0x00ae // U+00AE REGISTERED SIGN
+ XK_macron = 0x00af // U+00AF MACRON
+ XK_degree = 0x00b0 // U+00B0 DEGREE SIGN
+ XK_plusminus = 0x00b1 // U+00B1 PLUS-MINUS SIGN
+ XK_twosuperior = 0x00b2 // U+00B2 SUPERSCRIPT TWO
+ XK_threesuperior = 0x00b3 // U+00B3 SUPERSCRIPT THREE
+ XK_acute = 0x00b4 // U+00B4 ACUTE ACCENT
+ XK_mu = 0x00b5 // U+00B5 MICRO SIGN
+ XK_paragraph = 0x00b6 // U+00B6 PILCROW SIGN
+ XK_periodcentered = 0x00b7 // U+00B7 MIDDLE DOT
+ XK_cedilla = 0x00b8 // U+00B8 CEDILLA
+ XK_onesuperior = 0x00b9 // U+00B9 SUPERSCRIPT ONE
+ XK_masculine = 0x00ba // U+00BA MASCULINE ORDINAL INDICATOR
+ XK_guillemotright = 0x00bb // U+00BB RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
+ XK_onequarter = 0x00bc // U+00BC VULGAR FRACTION ONE QUARTER
+ XK_onehalf = 0x00bd // U+00BD VULGAR FRACTION ONE HALF
+ XK_threequarters = 0x00be // U+00BE VULGAR FRACTION THREE QUARTERS
+ XK_questiondown = 0x00bf // U+00BF INVERTED QUESTION MARK
+ XK_Agrave = 0x00c0 // U+00C0 LATIN CAPITAL LETTER A WITH GRAVE
+ XK_Aacute = 0x00c1 // U+00C1 LATIN CAPITAL LETTER A WITH ACUTE
+ XK_Acircumflex = 0x00c2 // U+00C2 LATIN CAPITAL LETTER A WITH CIRCUMFLEX
+ XK_Atilde = 0x00c3 // U+00C3 LATIN CAPITAL LETTER A WITH TILDE
+ XK_Adiaeresis = 0x00c4 // U+00C4 LATIN CAPITAL LETTER A WITH DIAERESIS
+ XK_Aring = 0x00c5 // U+00C5 LATIN CAPITAL LETTER A WITH RING ABOVE
+ XK_AE = 0x00c6 // U+00C6 LATIN CAPITAL LETTER AE
+ XK_Ccedilla = 0x00c7 // U+00C7 LATIN CAPITAL LETTER C WITH CEDILLA
+ XK_Egrave = 0x00c8 // U+00C8 LATIN CAPITAL LETTER E WITH GRAVE
+ XK_Eacute = 0x00c9 // U+00C9 LATIN CAPITAL LETTER E WITH ACUTE
+ XK_Ecircumflex = 0x00ca // U+00CA LATIN CAPITAL LETTER E WITH CIRCUMFLEX
+ XK_Ediaeresis = 0x00cb // U+00CB LATIN CAPITAL LETTER E WITH DIAERESIS
+ XK_Igrave = 0x00cc // U+00CC LATIN CAPITAL LETTER I WITH GRAVE
+ XK_Iacute = 0x00cd // U+00CD LATIN CAPITAL LETTER I WITH ACUTE
+ XK_Icircumflex = 0x00ce // U+00CE LATIN CAPITAL LETTER I WITH CIRCUMFLEX
+ XK_Idiaeresis = 0x00cf // U+00CF LATIN CAPITAL LETTER I WITH DIAERESIS
+ XK_ETH = 0x00d0 // U+00D0 LATIN CAPITAL LETTER ETH
+ XK_Eth = 0x00d0 // deprecated
+ XK_Ntilde = 0x00d1 // U+00D1 LATIN CAPITAL LETTER N WITH TILDE
+ XK_Ograve = 0x00d2 // U+00D2 LATIN CAPITAL LETTER O WITH GRAVE
+ XK_Oacute = 0x00d3 // U+00D3 LATIN CAPITAL LETTER O WITH ACUTE
+ XK_Ocircumflex = 0x00d4 // U+00D4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX
+ XK_Otilde = 0x00d5 // U+00D5 LATIN CAPITAL LETTER O WITH TILDE
+ XK_Odiaeresis = 0x00d6 // U+00D6 LATIN CAPITAL LETTER O WITH DIAERESIS
+ XK_multiply = 0x00d7 // U+00D7 MULTIPLICATION SIGN
+ XK_Oslash = 0x00d8 // U+00D8 LATIN CAPITAL LETTER O WITH STROKE
+ XK_Ooblique = 0x00d8 // U+00D8 LATIN CAPITAL LETTER O WITH STROKE
+ XK_Ugrave = 0x00d9 // U+00D9 LATIN CAPITAL LETTER U WITH GRAVE
+ XK_Uacute = 0x00da // U+00DA LATIN CAPITAL LETTER U WITH ACUTE
+ XK_Ucircumflex = 0x00db // U+00DB LATIN CAPITAL LETTER U WITH CIRCUMFLEX
+ XK_Udiaeresis = 0x00dc // U+00DC LATIN CAPITAL LETTER U WITH DIAERESIS
+ XK_Yacute = 0x00dd // U+00DD LATIN CAPITAL LETTER Y WITH ACUTE
+ XK_THORN = 0x00de // U+00DE LATIN CAPITAL LETTER THORN
+ XK_Thorn = 0x00de // deprecated
+ XK_ssharp = 0x00df // U+00DF LATIN SMALL LETTER SHARP S
+ XK_agrave = 0x00e0 // U+00E0 LATIN SMALL LETTER A WITH GRAVE
+ XK_aacute = 0x00e1 // U+00E1 LATIN SMALL LETTER A WITH ACUTE
+ XK_acircumflex = 0x00e2 // U+00E2 LATIN SMALL LETTER A WITH CIRCUMFLEX
+ XK_atilde = 0x00e3 // U+00E3 LATIN SMALL LETTER A WITH TILDE
+ XK_adiaeresis = 0x00e4 // U+00E4 LATIN SMALL LETTER A WITH DIAERESIS
+ XK_aring = 0x00e5 // U+00E5 LATIN SMALL LETTER A WITH RING ABOVE
+ XK_ae = 0x00e6 // U+00E6 LATIN SMALL LETTER AE
+ XK_ccedilla = 0x00e7 // U+00E7 LATIN SMALL LETTER C WITH CEDILLA
+ XK_egrave = 0x00e8 // U+00E8 LATIN SMALL LETTER E WITH GRAVE
+ XK_eacute = 0x00e9 // U+00E9 LATIN SMALL LETTER E WITH ACUTE
+ XK_ecircumflex = 0x00ea // U+00EA LATIN SMALL LETTER E WITH CIRCUMFLEX
+ XK_ediaeresis = 0x00eb // U+00EB LATIN SMALL LETTER E WITH DIAERESIS
+ XK_igrave = 0x00ec // U+00EC LATIN SMALL LETTER I WITH GRAVE
+ XK_iacute = 0x00ed // U+00ED LATIN SMALL LETTER I WITH ACUTE
+ XK_icircumflex = 0x00ee // U+00EE LATIN SMALL LETTER I WITH CIRCUMFLEX
+ XK_idiaeresis = 0x00ef // U+00EF LATIN SMALL LETTER I WITH DIAERESIS
+ XK_eth = 0x00f0 // U+00F0 LATIN SMALL LETTER ETH
+ XK_ntilde = 0x00f1 // U+00F1 LATIN SMALL LETTER N WITH TILDE
+ XK_ograve = 0x00f2 // U+00F2 LATIN SMALL LETTER O WITH GRAVE
+ XK_oacute = 0x00f3 // U+00F3 LATIN SMALL LETTER O WITH ACUTE
+ XK_ocircumflex = 0x00f4 // U+00F4 LATIN SMALL LETTER O WITH CIRCUMFLEX
+ XK_otilde = 0x00f5 // U+00F5 LATIN SMALL LETTER O WITH TILDE
+ XK_odiaeresis = 0x00f6 // U+00F6 LATIN SMALL LETTER O WITH DIAERESIS
+ XK_division = 0x00f7 // U+00F7 DIVISION SIGN
+ XK_oslash = 0x00f8 // U+00F8 LATIN SMALL LETTER O WITH STROKE
+ XK_ooblique = 0x00f8 // U+00F8 LATIN SMALL LETTER O WITH STROKE
+ XK_ugrave = 0x00f9 // U+00F9 LATIN SMALL LETTER U WITH GRAVE
+ XK_uacute = 0x00fa // U+00FA LATIN SMALL LETTER U WITH ACUTE
+ XK_ucircumflex = 0x00fb // U+00FB LATIN SMALL LETTER U WITH CIRCUMFLEX
+ XK_udiaeresis = 0x00fc // U+00FC LATIN SMALL LETTER U WITH DIAERESIS
+ XK_yacute = 0x00fd // U+00FD LATIN SMALL LETTER Y WITH ACUTE
+ XK_thorn = 0x00fe // U+00FE LATIN SMALL LETTER THORN
+ XK_ydiaeresis = 0x00ff // U+00FF LATIN SMALL LETTER Y WITH DIAERESIS
+ XK_Aogonek = 0x01a1 // U+0104 LATIN CAPITAL LETTER A WITH OGONEK
+ XK_breve = 0x01a2 // U+02D8 BREVE
+ XK_Lstroke = 0x01a3 // U+0141 LATIN CAPITAL LETTER L WITH STROKE
+ XK_Lcaron = 0x01a5 // U+013D LATIN CAPITAL LETTER L WITH CARON
+ XK_Sacute = 0x01a6 // U+015A LATIN CAPITAL LETTER S WITH ACUTE
+ XK_Scaron = 0x01a9 // U+0160 LATIN CAPITAL LETTER S WITH CARON
+ XK_Scedilla = 0x01aa // U+015E LATIN CAPITAL LETTER S WITH CEDILLA
+ XK_Tcaron = 0x01ab // U+0164 LATIN CAPITAL LETTER T WITH CARON
+ XK_Zacute = 0x01ac // U+0179 LATIN CAPITAL LETTER Z WITH ACUTE
+ XK_Zcaron = 0x01ae // U+017D LATIN CAPITAL LETTER Z WITH CARON
+ XK_Zabovedot = 0x01af // U+017B LATIN CAPITAL LETTER Z WITH DOT ABOVE
+ XK_aogonek = 0x01b1 // U+0105 LATIN SMALL LETTER A WITH OGONEK
+ XK_ogonek = 0x01b2 // U+02DB OGONEK
+ XK_lstroke = 0x01b3 // U+0142 LATIN SMALL LETTER L WITH STROKE
+ XK_lcaron = 0x01b5 // U+013E LATIN SMALL LETTER L WITH CARON
+ XK_sacute = 0x01b6 // U+015B LATIN SMALL LETTER S WITH ACUTE
+ XK_caron = 0x01b7 // U+02C7 CARON
+ XK_scaron = 0x01b9 // U+0161 LATIN SMALL LETTER S WITH CARON
+ XK_scedilla = 0x01ba // U+015F LATIN SMALL LETTER S WITH CEDILLA
+ XK_tcaron = 0x01bb // U+0165 LATIN SMALL LETTER T WITH CARON
+ XK_zacute = 0x01bc // U+017A LATIN SMALL LETTER Z WITH ACUTE
+ XK_doubleacute = 0x01bd // U+02DD DOUBLE ACUTE ACCENT
+ XK_zcaron = 0x01be // U+017E LATIN SMALL LETTER Z WITH CARON
+ XK_zabovedot = 0x01bf // U+017C LATIN SMALL LETTER Z WITH DOT ABOVE
+ XK_Racute = 0x01c0 // U+0154 LATIN CAPITAL LETTER R WITH ACUTE
+ XK_Abreve = 0x01c3 // U+0102 LATIN CAPITAL LETTER A WITH BREVE
+ XK_Lacute = 0x01c5 // U+0139 LATIN CAPITAL LETTER L WITH ACUTE
+ XK_Cacute = 0x01c6 // U+0106 LATIN CAPITAL LETTER C WITH ACUTE
+ XK_Ccaron = 0x01c8 // U+010C LATIN CAPITAL LETTER C WITH CARON
+ XK_Eogonek = 0x01ca // U+0118 LATIN CAPITAL LETTER E WITH OGONEK
+ XK_Ecaron = 0x01cc // U+011A LATIN CAPITAL LETTER E WITH CARON
+ XK_Dcaron = 0x01cf // U+010E LATIN CAPITAL LETTER D WITH CARON
+ XK_Dstroke = 0x01d0 // U+0110 LATIN CAPITAL LETTER D WITH STROKE
+ XK_Nacute = 0x01d1 // U+0143 LATIN CAPITAL LETTER N WITH ACUTE
+ XK_Ncaron = 0x01d2 // U+0147 LATIN CAPITAL LETTER N WITH CARON
+ XK_Odoubleacute = 0x01d5 // U+0150 LATIN CAPITAL LETTER O WITH DOUBLE ACUTE
+ XK_Rcaron = 0x01d8 // U+0158 LATIN CAPITAL LETTER R WITH CARON
+ XK_Uring = 0x01d9 // U+016E LATIN CAPITAL LETTER U WITH RING ABOVE
+ XK_Udoubleacute = 0x01db // U+0170 LATIN CAPITAL LETTER U WITH DOUBLE ACUTE
+ XK_Tcedilla = 0x01de // U+0162 LATIN CAPITAL LETTER T WITH CEDILLA
+ XK_racute = 0x01e0 // U+0155 LATIN SMALL LETTER R WITH ACUTE
+ XK_abreve = 0x01e3 // U+0103 LATIN SMALL LETTER A WITH BREVE
+ XK_lacute = 0x01e5 // U+013A LATIN SMALL LETTER L WITH ACUTE
+ XK_cacute = 0x01e6 // U+0107 LATIN SMALL LETTER C WITH ACUTE
+ XK_ccaron = 0x01e8 // U+010D LATIN SMALL LETTER C WITH CARON
+ XK_eogonek = 0x01ea // U+0119 LATIN SMALL LETTER E WITH OGONEK
+ XK_ecaron = 0x01ec // U+011B LATIN SMALL LETTER E WITH CARON
+ XK_dcaron = 0x01ef // U+010F LATIN SMALL LETTER D WITH CARON
+ XK_dstroke = 0x01f0 // U+0111 LATIN SMALL LETTER D WITH STROKE
+ XK_nacute = 0x01f1 // U+0144 LATIN SMALL LETTER N WITH ACUTE
+ XK_ncaron = 0x01f2 // U+0148 LATIN SMALL LETTER N WITH CARON
+ XK_odoubleacute = 0x01f5 // U+0151 LATIN SMALL LETTER O WITH DOUBLE ACUTE
+ XK_rcaron = 0x01f8 // U+0159 LATIN SMALL LETTER R WITH CARON
+ XK_uring = 0x01f9 // U+016F LATIN SMALL LETTER U WITH RING ABOVE
+ XK_udoubleacute = 0x01fb // U+0171 LATIN SMALL LETTER U WITH DOUBLE ACUTE
+ XK_tcedilla = 0x01fe // U+0163 LATIN SMALL LETTER T WITH CEDILLA
+ XK_abovedot = 0x01ff // U+02D9 DOT ABOVE
+ XK_Hstroke = 0x02a1 // U+0126 LATIN CAPITAL LETTER H WITH STROKE
+ XK_Hcircumflex = 0x02a6 // U+0124 LATIN CAPITAL LETTER H WITH CIRCUMFLEX
+ XK_Iabovedot = 0x02a9 // U+0130 LATIN CAPITAL LETTER I WITH DOT ABOVE
+ XK_Gbreve = 0x02ab // U+011E LATIN CAPITAL LETTER G WITH BREVE
+ XK_Jcircumflex = 0x02ac // U+0134 LATIN CAPITAL LETTER J WITH CIRCUMFLEX
+ XK_hstroke = 0x02b1 // U+0127 LATIN SMALL LETTER H WITH STROKE
+ XK_hcircumflex = 0x02b6 // U+0125 LATIN SMALL LETTER H WITH CIRCUMFLEX
+ XK_idotless = 0x02b9 // U+0131 LATIN SMALL LETTER DOTLESS I
+ XK_gbreve = 0x02bb // U+011F LATIN SMALL LETTER G WITH BREVE
+ XK_jcircumflex = 0x02bc // U+0135 LATIN SMALL LETTER J WITH CIRCUMFLEX
+ XK_Cabovedot = 0x02c5 // U+010A LATIN CAPITAL LETTER C WITH DOT ABOVE
+ XK_Ccircumflex = 0x02c6 // U+0108 LATIN CAPITAL LETTER C WITH CIRCUMFLEX
+ XK_Gabovedot = 0x02d5 // U+0120 LATIN CAPITAL LETTER G WITH DOT ABOVE
+ XK_Gcircumflex = 0x02d8 // U+011C LATIN CAPITAL LETTER G WITH CIRCUMFLEX
+ XK_Ubreve = 0x02dd // U+016C LATIN CAPITAL LETTER U WITH BREVE
+ XK_Scircumflex = 0x02de // U+015C LATIN CAPITAL LETTER S WITH CIRCUMFLEX
+ XK_cabovedot = 0x02e5 // U+010B LATIN SMALL LETTER C WITH DOT ABOVE
+ XK_ccircumflex = 0x02e6 // U+0109 LATIN SMALL LETTER C WITH CIRCUMFLEX
+ XK_gabovedot = 0x02f5 // U+0121 LATIN SMALL LETTER G WITH DOT ABOVE
+ XK_gcircumflex = 0x02f8 // U+011D LATIN SMALL LETTER G WITH CIRCUMFLEX
+ XK_ubreve = 0x02fd // U+016D LATIN SMALL LETTER U WITH BREVE
+ XK_scircumflex = 0x02fe // U+015D LATIN SMALL LETTER S WITH CIRCUMFLEX
+ XK_kra = 0x03a2 // U+0138 LATIN SMALL LETTER KRA
+ XK_kappa = 0x03a2 // deprecated
+ XK_Rcedilla = 0x03a3 // U+0156 LATIN CAPITAL LETTER R WITH CEDILLA
+ XK_Itilde = 0x03a5 // U+0128 LATIN CAPITAL LETTER I WITH TILDE
+ XK_Lcedilla = 0x03a6 // U+013B LATIN CAPITAL LETTER L WITH CEDILLA
+ XK_Emacron = 0x03aa // U+0112 LATIN CAPITAL LETTER E WITH MACRON
+ XK_Gcedilla = 0x03ab // U+0122 LATIN CAPITAL LETTER G WITH CEDILLA
+ XK_Tslash = 0x03ac // U+0166 LATIN CAPITAL LETTER T WITH STROKE
+ XK_rcedilla = 0x03b3 // U+0157 LATIN SMALL LETTER R WITH CEDILLA
+ XK_itilde = 0x03b5 // U+0129 LATIN SMALL LETTER I WITH TILDE
+ XK_lcedilla = 0x03b6 // U+013C LATIN SMALL LETTER L WITH CEDILLA
+ XK_emacron = 0x03ba // U+0113 LATIN SMALL LETTER E WITH MACRON
+ XK_gcedilla = 0x03bb // U+0123 LATIN SMALL LETTER G WITH CEDILLA
+ XK_tslash = 0x03bc // U+0167 LATIN SMALL LETTER T WITH STROKE
+ XK_ENG = 0x03bd // U+014A LATIN CAPITAL LETTER ENG
+ XK_eng = 0x03bf // U+014B LATIN SMALL LETTER ENG
+ XK_Amacron = 0x03c0 // U+0100 LATIN CAPITAL LETTER A WITH MACRON
+ XK_Iogonek = 0x03c7 // U+012E LATIN CAPITAL LETTER I WITH OGONEK
+ XK_Eabovedot = 0x03cc // U+0116 LATIN CAPITAL LETTER E WITH DOT ABOVE
+ XK_Imacron = 0x03cf // U+012A LATIN CAPITAL LETTER I WITH MACRON
+ XK_Ncedilla = 0x03d1 // U+0145 LATIN CAPITAL LETTER N WITH CEDILLA
+ XK_Omacron = 0x03d2 // U+014C LATIN CAPITAL LETTER O WITH MACRON
+ XK_Kcedilla = 0x03d3 // U+0136 LATIN CAPITAL LETTER K WITH CEDILLA
+ XK_Uogonek = 0x03d9 // U+0172 LATIN CAPITAL LETTER U WITH OGONEK
+ XK_Utilde = 0x03dd // U+0168 LATIN CAPITAL LETTER U WITH TILDE
+ XK_Umacron = 0x03de // U+016A LATIN CAPITAL LETTER U WITH MACRON
+ XK_amacron = 0x03e0 // U+0101 LATIN SMALL LETTER A WITH MACRON
+ XK_iogonek = 0x03e7 // U+012F LATIN SMALL LETTER I WITH OGONEK
+ XK_eabovedot = 0x03ec // U+0117 LATIN SMALL LETTER E WITH DOT ABOVE
+ XK_imacron = 0x03ef // U+012B LATIN SMALL LETTER I WITH MACRON
+ XK_ncedilla = 0x03f1 // U+0146 LATIN SMALL LETTER N WITH CEDILLA
+ XK_omacron = 0x03f2 // U+014D LATIN SMALL LETTER O WITH MACRON
+ XK_kcedilla = 0x03f3 // U+0137 LATIN SMALL LETTER K WITH CEDILLA
+ XK_uogonek = 0x03f9 // U+0173 LATIN SMALL LETTER U WITH OGONEK
+ XK_utilde = 0x03fd // U+0169 LATIN SMALL LETTER U WITH TILDE
+ XK_umacron = 0x03fe // U+016B LATIN SMALL LETTER U WITH MACRON
+ XK_Wcircumflex = 0x1000174 // U+0174 LATIN CAPITAL LETTER W WITH CIRCUMFLEX
+ XK_wcircumflex = 0x1000175 // U+0175 LATIN SMALL LETTER W WITH CIRCUMFLEX
+ XK_Ycircumflex = 0x1000176 // U+0176 LATIN CAPITAL LETTER Y WITH CIRCUMFLEX
+ XK_ycircumflex = 0x1000177 // U+0177 LATIN SMALL LETTER Y WITH CIRCUMFLEX
+ XK_Babovedot = 0x1001e02 // U+1E02 LATIN CAPITAL LETTER B WITH DOT ABOVE
+ XK_babovedot = 0x1001e03 // U+1E03 LATIN SMALL LETTER B WITH DOT ABOVE
+ XK_Dabovedot = 0x1001e0a // U+1E0A LATIN CAPITAL LETTER D WITH DOT ABOVE
+ XK_dabovedot = 0x1001e0b // U+1E0B LATIN SMALL LETTER D WITH DOT ABOVE
+ XK_Fabovedot = 0x1001e1e // U+1E1E LATIN CAPITAL LETTER F WITH DOT ABOVE
+ XK_fabovedot = 0x1001e1f // U+1E1F LATIN SMALL LETTER F WITH DOT ABOVE
+ XK_Mabovedot = 0x1001e40 // U+1E40 LATIN CAPITAL LETTER M WITH DOT ABOVE
+ XK_mabovedot = 0x1001e41 // U+1E41 LATIN SMALL LETTER M WITH DOT ABOVE
+ XK_Pabovedot = 0x1001e56 // U+1E56 LATIN CAPITAL LETTER P WITH DOT ABOVE
+ XK_pabovedot = 0x1001e57 // U+1E57 LATIN SMALL LETTER P WITH DOT ABOVE
+ XK_Sabovedot = 0x1001e60 // U+1E60 LATIN CAPITAL LETTER S WITH DOT ABOVE
+ XK_sabovedot = 0x1001e61 // U+1E61 LATIN SMALL LETTER S WITH DOT ABOVE
+ XK_Tabovedot = 0x1001e6a // U+1E6A LATIN CAPITAL LETTER T WITH DOT ABOVE
+ XK_tabovedot = 0x1001e6b // U+1E6B LATIN SMALL LETTER T WITH DOT ABOVE
+ XK_Wgrave = 0x1001e80 // U+1E80 LATIN CAPITAL LETTER W WITH GRAVE
+ XK_wgrave = 0x1001e81 // U+1E81 LATIN SMALL LETTER W WITH GRAVE
+ XK_Wacute = 0x1001e82 // U+1E82 LATIN CAPITAL LETTER W WITH ACUTE
+ XK_wacute = 0x1001e83 // U+1E83 LATIN SMALL LETTER W WITH ACUTE
+ XK_Wdiaeresis = 0x1001e84 // U+1E84 LATIN CAPITAL LETTER W WITH DIAERESIS
+ XK_wdiaeresis = 0x1001e85 // U+1E85 LATIN SMALL LETTER W WITH DIAERESIS
+ XK_Ygrave = 0x1001ef2 // U+1EF2 LATIN CAPITAL LETTER Y WITH GRAVE
+ XK_ygrave = 0x1001ef3 // U+1EF3 LATIN SMALL LETTER Y WITH GRAVE
+ XK_OE = 0x13bc // U+0152 LATIN CAPITAL LIGATURE OE
+ XK_oe = 0x13bd // U+0153 LATIN SMALL LIGATURE OE
+ XK_Ydiaeresis = 0x13be // U+0178 LATIN CAPITAL LETTER Y WITH DIAERESIS
+ XK_overline = 0x047e // U+203E OVERLINE
+ XK_kana_fullstop = 0x04a1 // U+3002 IDEOGRAPHIC FULL STOP
+ XK_kana_openingbracket = 0x04a2 // U+300C LEFT CORNER BRACKET
+ XK_kana_closingbracket = 0x04a3 // U+300D RIGHT CORNER BRACKET
+ XK_kana_comma = 0x04a4 // U+3001 IDEOGRAPHIC COMMA
+ XK_kana_conjunctive = 0x04a5 // U+30FB KATAKANA MIDDLE DOT
+ XK_kana_middledot = 0x04a5 // deprecated
+ XK_kana_WO = 0x04a6 // U+30F2 KATAKANA LETTER WO
+ XK_kana_a = 0x04a7 // U+30A1 KATAKANA LETTER SMALL A
+ XK_kana_i = 0x04a8 // U+30A3 KATAKANA LETTER SMALL I
+ XK_kana_u = 0x04a9 // U+30A5 KATAKANA LETTER SMALL U
+ XK_kana_e = 0x04aa // U+30A7 KATAKANA LETTER SMALL E
+ XK_kana_o = 0x04ab // U+30A9 KATAKANA LETTER SMALL O
+ XK_kana_ya = 0x04ac // U+30E3 KATAKANA LETTER SMALL YA
+ XK_kana_yu = 0x04ad // U+30E5 KATAKANA LETTER SMALL YU
+ XK_kana_yo = 0x04ae // U+30E7 KATAKANA LETTER SMALL YO
+ XK_kana_tsu = 0x04af // U+30C3 KATAKANA LETTER SMALL TU
+ XK_kana_tu = 0x04af // deprecated
+ XK_prolongedsound = 0x04b0 // U+30FC KATAKANA-HIRAGANA PROLONGED SOUND MARK
+ XK_kana_A = 0x04b1 // U+30A2 KATAKANA LETTER A
+ XK_kana_I = 0x04b2 // U+30A4 KATAKANA LETTER I
+ XK_kana_U = 0x04b3 // U+30A6 KATAKANA LETTER U
+ XK_kana_E = 0x04b4 // U+30A8 KATAKANA LETTER E
+ XK_kana_O = 0x04b5 // U+30AA KATAKANA LETTER O
+ XK_kana_KA = 0x04b6 // U+30AB KATAKANA LETTER KA
+ XK_kana_KI = 0x04b7 // U+30AD KATAKANA LETTER KI
+ XK_kana_KU = 0x04b8 // U+30AF KATAKANA LETTER KU
+ XK_kana_KE = 0x04b9 // U+30B1 KATAKANA LETTER KE
+ XK_kana_KO = 0x04ba // U+30B3 KATAKANA LETTER KO
+ XK_kana_SA = 0x04bb // U+30B5 KATAKANA LETTER SA
+ XK_kana_SHI = 0x04bc // U+30B7 KATAKANA LETTER SI
+ XK_kana_SU = 0x04bd // U+30B9 KATAKANA LETTER SU
+ XK_kana_SE = 0x04be // U+30BB KATAKANA LETTER SE
+ XK_kana_SO = 0x04bf // U+30BD KATAKANA LETTER SO
+ XK_kana_TA = 0x04c0 // U+30BF KATAKANA LETTER TA
+ XK_kana_CHI = 0x04c1 // U+30C1 KATAKANA LETTER TI
+ XK_kana_TI = 0x04c1 // deprecated
+ XK_kana_TSU = 0x04c2 // U+30C4 KATAKANA LETTER TU
+ XK_kana_TU = 0x04c2 // deprecated
+ XK_kana_TE = 0x04c3 // U+30C6 KATAKANA LETTER TE
+ XK_kana_TO = 0x04c4 // U+30C8 KATAKANA LETTER TO
+ XK_kana_NA = 0x04c5 // U+30CA KATAKANA LETTER NA
+ XK_kana_NI = 0x04c6 // U+30CB KATAKANA LETTER NI
+ XK_kana_NU = 0x04c7 // U+30CC KATAKANA LETTER NU
+ XK_kana_NE = 0x04c8 // U+30CD KATAKANA LETTER NE
+ XK_kana_NO = 0x04c9 // U+30CE KATAKANA LETTER NO
+ XK_kana_HA = 0x04ca // U+30CF KATAKANA LETTER HA
+ XK_kana_HI = 0x04cb // U+30D2 KATAKANA LETTER HI
+ XK_kana_FU = 0x04cc // U+30D5 KATAKANA LETTER HU
+ XK_kana_HU = 0x04cc // deprecated
+ XK_kana_HE = 0x04cd // U+30D8 KATAKANA LETTER HE
+ XK_kana_HO = 0x04ce // U+30DB KATAKANA LETTER HO
+ XK_kana_MA = 0x04cf // U+30DE KATAKANA LETTER MA
+ XK_kana_MI = 0x04d0 // U+30DF KATAKANA LETTER MI
+ XK_kana_MU = 0x04d1 // U+30E0 KATAKANA LETTER MU
+ XK_kana_ME = 0x04d2 // U+30E1 KATAKANA LETTER ME
+ XK_kana_MO = 0x04d3 // U+30E2 KATAKANA LETTER MO
+ XK_kana_YA = 0x04d4 // U+30E4 KATAKANA LETTER YA
+ XK_kana_YU = 0x04d5 // U+30E6 KATAKANA LETTER YU
+ XK_kana_YO = 0x04d6 // U+30E8 KATAKANA LETTER YO
+ XK_kana_RA = 0x04d7 // U+30E9 KATAKANA LETTER RA
+ XK_kana_RI = 0x04d8 // U+30EA KATAKANA LETTER RI
+ XK_kana_RU = 0x04d9 // U+30EB KATAKANA LETTER RU
+ XK_kana_RE = 0x04da // U+30EC KATAKANA LETTER RE
+ XK_kana_RO = 0x04db // U+30ED KATAKANA LETTER RO
+ XK_kana_WA = 0x04dc // U+30EF KATAKANA LETTER WA
+ XK_kana_N = 0x04dd // U+30F3 KATAKANA LETTER N
+ XK_voicedsound = 0x04de // U+309B KATAKANA-HIRAGANA VOICED SOUND MARK
+ XK_semivoicedsound = 0x04df // U+309C KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK
+ XK_kana_switch = 0xff7e // Alias for mode_switch
+ XK_Farsi_0 = 0x10006f0 // U+06F0 EXTENDED ARABIC-INDIC DIGIT ZERO
+ XK_Farsi_1 = 0x10006f1 // U+06F1 EXTENDED ARABIC-INDIC DIGIT ONE
+ XK_Farsi_2 = 0x10006f2 // U+06F2 EXTENDED ARABIC-INDIC DIGIT TWO
+ XK_Farsi_3 = 0x10006f3 // U+06F3 EXTENDED ARABIC-INDIC DIGIT THREE
+ XK_Farsi_4 = 0x10006f4 // U+06F4 EXTENDED ARABIC-INDIC DIGIT FOUR
+ XK_Farsi_5 = 0x10006f5 // U+06F5 EXTENDED ARABIC-INDIC DIGIT FIVE
+ XK_Farsi_6 = 0x10006f6 // U+06F6 EXTENDED ARABIC-INDIC DIGIT SIX
+ XK_Farsi_7 = 0x10006f7 // U+06F7 EXTENDED ARABIC-INDIC DIGIT SEVEN
+ XK_Farsi_8 = 0x10006f8 // U+06F8 EXTENDED ARABIC-INDIC DIGIT EIGHT
+ XK_Farsi_9 = 0x10006f9 // U+06F9 EXTENDED ARABIC-INDIC DIGIT NINE
+ XK_Arabic_percent = 0x100066a // U+066A ARABIC PERCENT SIGN
+ XK_Arabic_superscript_alef = 0x1000670 // U+0670 ARABIC LETTER SUPERSCRIPT ALEF
+ XK_Arabic_tteh = 0x1000679 // U+0679 ARABIC LETTER TTEH
+ XK_Arabic_peh = 0x100067e // U+067E ARABIC LETTER PEH
+ XK_Arabic_tcheh = 0x1000686 // U+0686 ARABIC LETTER TCHEH
+ XK_Arabic_ddal = 0x1000688 // U+0688 ARABIC LETTER DDAL
+ XK_Arabic_rreh = 0x1000691 // U+0691 ARABIC LETTER RREH
+ XK_Arabic_comma = 0x05ac // U+060C ARABIC COMMA
+ XK_Arabic_fullstop = 0x10006d4 // U+06D4 ARABIC FULL STOP
+ XK_Arabic_0 = 0x1000660 // U+0660 ARABIC-INDIC DIGIT ZERO
+ XK_Arabic_1 = 0x1000661 // U+0661 ARABIC-INDIC DIGIT ONE
+ XK_Arabic_2 = 0x1000662 // U+0662 ARABIC-INDIC DIGIT TWO
+ XK_Arabic_3 = 0x1000663 // U+0663 ARABIC-INDIC DIGIT THREE
+ XK_Arabic_4 = 0x1000664 // U+0664 ARABIC-INDIC DIGIT FOUR
+ XK_Arabic_5 = 0x1000665 // U+0665 ARABIC-INDIC DIGIT FIVE
+ XK_Arabic_6 = 0x1000666 // U+0666 ARABIC-INDIC DIGIT SIX
+ XK_Arabic_7 = 0x1000667 // U+0667 ARABIC-INDIC DIGIT SEVEN
+ XK_Arabic_8 = 0x1000668 // U+0668 ARABIC-INDIC DIGIT EIGHT
+ XK_Arabic_9 = 0x1000669 // U+0669 ARABIC-INDIC DIGIT NINE
+ XK_Arabic_semicolon = 0x05bb // U+061B ARABIC SEMICOLON
+ XK_Arabic_question_mark = 0x05bf // U+061F ARABIC QUESTION MARK
+ XK_Arabic_hamza = 0x05c1 // U+0621 ARABIC LETTER HAMZA
+ XK_Arabic_maddaonalef = 0x05c2 // U+0622 ARABIC LETTER ALEF WITH MADDA ABOVE
+ XK_Arabic_hamzaonalef = 0x05c3 // U+0623 ARABIC LETTER ALEF WITH HAMZA ABOVE
+ XK_Arabic_hamzaonwaw = 0x05c4 // U+0624 ARABIC LETTER WAW WITH HAMZA ABOVE
+ XK_Arabic_hamzaunderalef = 0x05c5 // U+0625 ARABIC LETTER ALEF WITH HAMZA BELOW
+ XK_Arabic_hamzaonyeh = 0x05c6 // U+0626 ARABIC LETTER YEH WITH HAMZA ABOVE
+ XK_Arabic_alef = 0x05c7 // U+0627 ARABIC LETTER ALEF
+ XK_Arabic_beh = 0x05c8 // U+0628 ARABIC LETTER BEH
+ XK_Arabic_tehmarbuta = 0x05c9 // U+0629 ARABIC LETTER TEH MARBUTA
+ XK_Arabic_teh = 0x05ca // U+062A ARABIC LETTER TEH
+ XK_Arabic_theh = 0x05cb // U+062B ARABIC LETTER THEH
+ XK_Arabic_jeem = 0x05cc // U+062C ARABIC LETTER JEEM
+ XK_Arabic_hah = 0x05cd // U+062D ARABIC LETTER HAH
+ XK_Arabic_khah = 0x05ce // U+062E ARABIC LETTER KHAH
+ XK_Arabic_dal = 0x05cf // U+062F ARABIC LETTER DAL
+ XK_Arabic_thal = 0x05d0 // U+0630 ARABIC LETTER THAL
+ XK_Arabic_ra = 0x05d1 // U+0631 ARABIC LETTER REH
+ XK_Arabic_zain = 0x05d2 // U+0632 ARABIC LETTER ZAIN
+ XK_Arabic_seen = 0x05d3 // U+0633 ARABIC LETTER SEEN
+ XK_Arabic_sheen = 0x05d4 // U+0634 ARABIC LETTER SHEEN
+ XK_Arabic_sad = 0x05d5 // U+0635 ARABIC LETTER SAD
+ XK_Arabic_dad = 0x05d6 // U+0636 ARABIC LETTER DAD
+ XK_Arabic_tah = 0x05d7 // U+0637 ARABIC LETTER TAH
+ XK_Arabic_zah = 0x05d8 // U+0638 ARABIC LETTER ZAH
+ XK_Arabic_ain = 0x05d9 // U+0639 ARABIC LETTER AIN
+ XK_Arabic_ghain = 0x05da // U+063A ARABIC LETTER GHAIN
+ XK_Arabic_tatweel = 0x05e0 // U+0640 ARABIC TATWEEL
+ XK_Arabic_feh = 0x05e1 // U+0641 ARABIC LETTER FEH
+ XK_Arabic_qaf = 0x05e2 // U+0642 ARABIC LETTER QAF
+ XK_Arabic_kaf = 0x05e3 // U+0643 ARABIC LETTER KAF
+ XK_Arabic_lam = 0x05e4 // U+0644 ARABIC LETTER LAM
+ XK_Arabic_meem = 0x05e5 // U+0645 ARABIC LETTER MEEM
+ XK_Arabic_noon = 0x05e6 // U+0646 ARABIC LETTER NOON
+ XK_Arabic_ha = 0x05e7 // U+0647 ARABIC LETTER HEH
+ XK_Arabic_heh = 0x05e7 // deprecated
+ XK_Arabic_waw = 0x05e8 // U+0648 ARABIC LETTER WAW
+ XK_Arabic_alefmaksura = 0x05e9 // U+0649 ARABIC LETTER ALEF MAKSURA
+ XK_Arabic_yeh = 0x05ea // U+064A ARABIC LETTER YEH
+ XK_Arabic_fathatan = 0x05eb // U+064B ARABIC FATHATAN
+ XK_Arabic_dammatan = 0x05ec // U+064C ARABIC DAMMATAN
+ XK_Arabic_kasratan = 0x05ed // U+064D ARABIC KASRATAN
+ XK_Arabic_fatha = 0x05ee // U+064E ARABIC FATHA
+ XK_Arabic_damma = 0x05ef // U+064F ARABIC DAMMA
+ XK_Arabic_kasra = 0x05f0 // U+0650 ARABIC KASRA
+ XK_Arabic_shadda = 0x05f1 // U+0651 ARABIC SHADDA
+ XK_Arabic_sukun = 0x05f2 // U+0652 ARABIC SUKUN
+ XK_Arabic_madda_above = 0x1000653 // U+0653 ARABIC MADDAH ABOVE
+ XK_Arabic_hamza_above = 0x1000654 // U+0654 ARABIC HAMZA ABOVE
+ XK_Arabic_hamza_below = 0x1000655 // U+0655 ARABIC HAMZA BELOW
+ XK_Arabic_jeh = 0x1000698 // U+0698 ARABIC LETTER JEH
+ XK_Arabic_veh = 0x10006a4 // U+06A4 ARABIC LETTER VEH
+ XK_Arabic_keheh = 0x10006a9 // U+06A9 ARABIC LETTER KEHEH
+ XK_Arabic_gaf = 0x10006af // U+06AF ARABIC LETTER GAF
+ XK_Arabic_noon_ghunna = 0x10006ba // U+06BA ARABIC LETTER NOON GHUNNA
+ XK_Arabic_heh_doachashmee = 0x10006be // U+06BE ARABIC LETTER HEH DOACHASHMEE
+ XK_Farsi_yeh = 0x10006cc // U+06CC ARABIC LETTER FARSI YEH
+ XK_Arabic_farsi_yeh = 0x10006cc // U+06CC ARABIC LETTER FARSI YEH
+ XK_Arabic_yeh_baree = 0x10006d2 // U+06D2 ARABIC LETTER YEH BARREE
+ XK_Arabic_heh_goal = 0x10006c1 // U+06C1 ARABIC LETTER HEH GOAL
+ XK_Arabic_switch = 0xff7e // Alias for mode_switch
+ XK_Cyrillic_GHE_bar = 0x1000492 // U+0492 CYRILLIC CAPITAL LETTER GHE WITH STROKE
+ XK_Cyrillic_ghe_bar = 0x1000493 // U+0493 CYRILLIC SMALL LETTER GHE WITH STROKE
+ XK_Cyrillic_ZHE_descender = 0x1000496 // U+0496 CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER
+ XK_Cyrillic_zhe_descender = 0x1000497 // U+0497 CYRILLIC SMALL LETTER ZHE WITH DESCENDER
+ XK_Cyrillic_KA_descender = 0x100049a // U+049A CYRILLIC CAPITAL LETTER KA WITH DESCENDER
+ XK_Cyrillic_ka_descender = 0x100049b // U+049B CYRILLIC SMALL LETTER KA WITH DESCENDER
+ XK_Cyrillic_KA_vertstroke = 0x100049c // U+049C CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE
+ XK_Cyrillic_ka_vertstroke = 0x100049d // U+049D CYRILLIC SMALL LETTER KA WITH VERTICAL STROKE
+ XK_Cyrillic_EN_descender = 0x10004a2 // U+04A2 CYRILLIC CAPITAL LETTER EN WITH DESCENDER
+ XK_Cyrillic_en_descender = 0x10004a3 // U+04A3 CYRILLIC SMALL LETTER EN WITH DESCENDER
+ XK_Cyrillic_U_straight = 0x10004ae // U+04AE CYRILLIC CAPITAL LETTER STRAIGHT U
+ XK_Cyrillic_u_straight = 0x10004af // U+04AF CYRILLIC SMALL LETTER STRAIGHT U
+ XK_Cyrillic_U_straight_bar = 0x10004b0 // U+04B0 CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE
+ XK_Cyrillic_u_straight_bar = 0x10004b1 // U+04B1 CYRILLIC SMALL LETTER STRAIGHT U WITH STROKE
+ XK_Cyrillic_HA_descender = 0x10004b2 // U+04B2 CYRILLIC CAPITAL LETTER HA WITH DESCENDER
+ XK_Cyrillic_ha_descender = 0x10004b3 // U+04B3 CYRILLIC SMALL LETTER HA WITH DESCENDER
+ XK_Cyrillic_CHE_descender = 0x10004b6 // U+04B6 CYRILLIC CAPITAL LETTER CHE WITH DESCENDER
+ XK_Cyrillic_che_descender = 0x10004b7 // U+04B7 CYRILLIC SMALL LETTER CHE WITH DESCENDER
+ XK_Cyrillic_CHE_vertstroke = 0x10004b8 // U+04B8 CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE
+ XK_Cyrillic_che_vertstroke = 0x10004b9 // U+04B9 CYRILLIC SMALL LETTER CHE WITH VERTICAL STROKE
+ XK_Cyrillic_SHHA = 0x10004ba // U+04BA CYRILLIC CAPITAL LETTER SHHA
+ XK_Cyrillic_shha = 0x10004bb // U+04BB CYRILLIC SMALL LETTER SHHA
+ XK_Cyrillic_SCHWA = 0x10004d8 // U+04D8 CYRILLIC CAPITAL LETTER SCHWA
+ XK_Cyrillic_schwa = 0x10004d9 // U+04D9 CYRILLIC SMALL LETTER SCHWA
+ XK_Cyrillic_I_macron = 0x10004e2 // U+04E2 CYRILLIC CAPITAL LETTER I WITH MACRON
+ XK_Cyrillic_i_macron = 0x10004e3 // U+04E3 CYRILLIC SMALL LETTER I WITH MACRON
+ XK_Cyrillic_O_bar = 0x10004e8 // U+04E8 CYRILLIC CAPITAL LETTER BARRED O
+ XK_Cyrillic_o_bar = 0x10004e9 // U+04E9 CYRILLIC SMALL LETTER BARRED O
+ XK_Cyrillic_U_macron = 0x10004ee // U+04EE CYRILLIC CAPITAL LETTER U WITH MACRON
+ XK_Cyrillic_u_macron = 0x10004ef // U+04EF CYRILLIC SMALL LETTER U WITH MACRON
+ XK_Serbian_dje = 0x06a1 // U+0452 CYRILLIC SMALL LETTER DJE
+ XK_Macedonia_gje = 0x06a2 // U+0453 CYRILLIC SMALL LETTER GJE
+ XK_Cyrillic_io = 0x06a3 // U+0451 CYRILLIC SMALL LETTER IO
+ XK_Ukrainian_ie = 0x06a4 // U+0454 CYRILLIC SMALL LETTER UKRAINIAN IE
+ XK_Ukranian_je = 0x06a4 // deprecated
+ XK_Macedonia_dse = 0x06a5 // U+0455 CYRILLIC SMALL LETTER DZE
+ XK_Ukrainian_i = 0x06a6 // U+0456 CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
+ XK_Ukranian_i = 0x06a6 // deprecated
+ XK_Ukrainian_yi = 0x06a7 // U+0457 CYRILLIC SMALL LETTER YI
+ XK_Ukranian_yi = 0x06a7 // deprecated
+ XK_Cyrillic_je = 0x06a8 // U+0458 CYRILLIC SMALL LETTER JE
+ XK_Serbian_je = 0x06a8 // deprecated
+ XK_Cyrillic_lje = 0x06a9 // U+0459 CYRILLIC SMALL LETTER LJE
+ XK_Serbian_lje = 0x06a9 // deprecated
+ XK_Cyrillic_nje = 0x06aa // U+045A CYRILLIC SMALL LETTER NJE
+ XK_Serbian_nje = 0x06aa // deprecated
+ XK_Serbian_tshe = 0x06ab // U+045B CYRILLIC SMALL LETTER TSHE
+ XK_Macedonia_kje = 0x06ac // U+045C CYRILLIC SMALL LETTER KJE
+ XK_Ukrainian_ghe_with_upturn = 0x06ad // U+0491 CYRILLIC SMALL LETTER GHE WITH UPTURN
+ XK_Byelorussian_shortu = 0x06ae // U+045E CYRILLIC SMALL LETTER SHORT U
+ XK_Cyrillic_dzhe = 0x06af // U+045F CYRILLIC SMALL LETTER DZHE
+ XK_Serbian_dze = 0x06af // deprecated
+ XK_numerosign = 0x06b0 // U+2116 NUMERO SIGN
+ XK_Serbian_DJE = 0x06b1 // U+0402 CYRILLIC CAPITAL LETTER DJE
+ XK_Macedonia_GJE = 0x06b2 // U+0403 CYRILLIC CAPITAL LETTER GJE
+ XK_Cyrillic_IO = 0x06b3 // U+0401 CYRILLIC CAPITAL LETTER IO
+ XK_Ukrainian_IE = 0x06b4 // U+0404 CYRILLIC CAPITAL LETTER UKRAINIAN IE
+ XK_Ukranian_JE = 0x06b4 // deprecated
+ XK_Macedonia_DSE = 0x06b5 // U+0405 CYRILLIC CAPITAL LETTER DZE
+ XK_Ukrainian_I = 0x06b6 // U+0406 CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
+ XK_Ukranian_I = 0x06b6 // deprecated
+ XK_Ukrainian_YI = 0x06b7 // U+0407 CYRILLIC CAPITAL LETTER YI
+ XK_Ukranian_YI = 0x06b7 // deprecated
+ XK_Cyrillic_JE = 0x06b8 // U+0408 CYRILLIC CAPITAL LETTER JE
+ XK_Serbian_JE = 0x06b8 // deprecated
+ XK_Cyrillic_LJE = 0x06b9 // U+0409 CYRILLIC CAPITAL LETTER LJE
+ XK_Serbian_LJE = 0x06b9 // deprecated
+ XK_Cyrillic_NJE = 0x06ba // U+040A CYRILLIC CAPITAL LETTER NJE
+ XK_Serbian_NJE = 0x06ba // deprecated
+ XK_Serbian_TSHE = 0x06bb // U+040B CYRILLIC CAPITAL LETTER TSHE
+ XK_Macedonia_KJE = 0x06bc // U+040C CYRILLIC CAPITAL LETTER KJE
+ XK_Ukrainian_GHE_WITH_UPTURN = 0x06bd // U+0490 CYRILLIC CAPITAL LETTER GHE WITH UPTURN
+ XK_Byelorussian_SHORTU = 0x06be // U+040E CYRILLIC CAPITAL LETTER SHORT U
+ XK_Cyrillic_DZHE = 0x06bf // U+040F CYRILLIC CAPITAL LETTER DZHE
+ XK_Serbian_DZE = 0x06bf // deprecated
+ XK_Cyrillic_yu = 0x06c0 // U+044E CYRILLIC SMALL LETTER YU
+ XK_Cyrillic_a = 0x06c1 // U+0430 CYRILLIC SMALL LETTER A
+ XK_Cyrillic_be = 0x06c2 // U+0431 CYRILLIC SMALL LETTER BE
+ XK_Cyrillic_tse = 0x06c3 // U+0446 CYRILLIC SMALL LETTER TSE
+ XK_Cyrillic_de = 0x06c4 // U+0434 CYRILLIC SMALL LETTER DE
+ XK_Cyrillic_ie = 0x06c5 // U+0435 CYRILLIC SMALL LETTER IE
+ XK_Cyrillic_ef = 0x06c6 // U+0444 CYRILLIC SMALL LETTER EF
+ XK_Cyrillic_ghe = 0x06c7 // U+0433 CYRILLIC SMALL LETTER GHE
+ XK_Cyrillic_ha = 0x06c8 // U+0445 CYRILLIC SMALL LETTER HA
+ XK_Cyrillic_i = 0x06c9 // U+0438 CYRILLIC SMALL LETTER I
+ XK_Cyrillic_shorti = 0x06ca // U+0439 CYRILLIC SMALL LETTER SHORT I
+ XK_Cyrillic_ka = 0x06cb // U+043A CYRILLIC SMALL LETTER KA
+ XK_Cyrillic_el = 0x06cc // U+043B CYRILLIC SMALL LETTER EL
+ XK_Cyrillic_em = 0x06cd // U+043C CYRILLIC SMALL LETTER EM
+ XK_Cyrillic_en = 0x06ce // U+043D CYRILLIC SMALL LETTER EN
+ XK_Cyrillic_o = 0x06cf // U+043E CYRILLIC SMALL LETTER O
+ XK_Cyrillic_pe = 0x06d0 // U+043F CYRILLIC SMALL LETTER PE
+ XK_Cyrillic_ya = 0x06d1 // U+044F CYRILLIC SMALL LETTER YA
+ XK_Cyrillic_er = 0x06d2 // U+0440 CYRILLIC SMALL LETTER ER
+ XK_Cyrillic_es = 0x06d3 // U+0441 CYRILLIC SMALL LETTER ES
+ XK_Cyrillic_te = 0x06d4 // U+0442 CYRILLIC SMALL LETTER TE
+ XK_Cyrillic_u = 0x06d5 // U+0443 CYRILLIC SMALL LETTER U
+ XK_Cyrillic_zhe = 0x06d6 // U+0436 CYRILLIC SMALL LETTER ZHE
+ XK_Cyrillic_ve = 0x06d7 // U+0432 CYRILLIC SMALL LETTER VE
+ XK_Cyrillic_softsign = 0x06d8 // U+044C CYRILLIC SMALL LETTER SOFT SIGN
+ XK_Cyrillic_yeru = 0x06d9 // U+044B CYRILLIC SMALL LETTER YERU
+ XK_Cyrillic_ze = 0x06da // U+0437 CYRILLIC SMALL LETTER ZE
+ XK_Cyrillic_sha = 0x06db // U+0448 CYRILLIC SMALL LETTER SHA
+ XK_Cyrillic_e = 0x06dc // U+044D CYRILLIC SMALL LETTER E
+ XK_Cyrillic_shcha = 0x06dd // U+0449 CYRILLIC SMALL LETTER SHCHA
+ XK_Cyrillic_che = 0x06de // U+0447 CYRILLIC SMALL LETTER CHE
+ XK_Cyrillic_hardsign = 0x06df // U+044A CYRILLIC SMALL LETTER HARD SIGN
+ XK_Cyrillic_YU = 0x06e0 // U+042E CYRILLIC CAPITAL LETTER YU
+ XK_Cyrillic_A = 0x06e1 // U+0410 CYRILLIC CAPITAL LETTER A
+ XK_Cyrillic_BE = 0x06e2 // U+0411 CYRILLIC CAPITAL LETTER BE
+ XK_Cyrillic_TSE = 0x06e3 // U+0426 CYRILLIC CAPITAL LETTER TSE
+ XK_Cyrillic_DE = 0x06e4 // U+0414 CYRILLIC CAPITAL LETTER DE
+ XK_Cyrillic_IE = 0x06e5 // U+0415 CYRILLIC CAPITAL LETTER IE
+ XK_Cyrillic_EF = 0x06e6 // U+0424 CYRILLIC CAPITAL LETTER EF
+ XK_Cyrillic_GHE = 0x06e7 // U+0413 CYRILLIC CAPITAL LETTER GHE
+ XK_Cyrillic_HA = 0x06e8 // U+0425 CYRILLIC CAPITAL LETTER HA
+ XK_Cyrillic_I = 0x06e9 // U+0418 CYRILLIC CAPITAL LETTER I
+ XK_Cyrillic_SHORTI = 0x06ea // U+0419 CYRILLIC CAPITAL LETTER SHORT I
+ XK_Cyrillic_KA = 0x06eb // U+041A CYRILLIC CAPITAL LETTER KA
+ XK_Cyrillic_EL = 0x06ec // U+041B CYRILLIC CAPITAL LETTER EL
+ XK_Cyrillic_EM = 0x06ed // U+041C CYRILLIC CAPITAL LETTER EM
+ XK_Cyrillic_EN = 0x06ee // U+041D CYRILLIC CAPITAL LETTER EN
+ XK_Cyrillic_O = 0x06ef // U+041E CYRILLIC CAPITAL LETTER O
+ XK_Cyrillic_PE = 0x06f0 // U+041F CYRILLIC CAPITAL LETTER PE
+ XK_Cyrillic_YA = 0x06f1 // U+042F CYRILLIC CAPITAL LETTER YA
+ XK_Cyrillic_ER = 0x06f2 // U+0420 CYRILLIC CAPITAL LETTER ER
+ XK_Cyrillic_ES = 0x06f3 // U+0421 CYRILLIC CAPITAL LETTER ES
+ XK_Cyrillic_TE = 0x06f4 // U+0422 CYRILLIC CAPITAL LETTER TE
+ XK_Cyrillic_U = 0x06f5 // U+0423 CYRILLIC CAPITAL LETTER U
+ XK_Cyrillic_ZHE = 0x06f6 // U+0416 CYRILLIC CAPITAL LETTER ZHE
+ XK_Cyrillic_VE = 0x06f7 // U+0412 CYRILLIC CAPITAL LETTER VE
+ XK_Cyrillic_SOFTSIGN = 0x06f8 // U+042C CYRILLIC CAPITAL LETTER SOFT SIGN
+ XK_Cyrillic_YERU = 0x06f9 // U+042B CYRILLIC CAPITAL LETTER YERU
+ XK_Cyrillic_ZE = 0x06fa // U+0417 CYRILLIC CAPITAL LETTER ZE
+ XK_Cyrillic_SHA = 0x06fb // U+0428 CYRILLIC CAPITAL LETTER SHA
+ XK_Cyrillic_E = 0x06fc // U+042D CYRILLIC CAPITAL LETTER E
+ XK_Cyrillic_SHCHA = 0x06fd // U+0429 CYRILLIC CAPITAL LETTER SHCHA
+ XK_Cyrillic_CHE = 0x06fe // U+0427 CYRILLIC CAPITAL LETTER CHE
+ XK_Cyrillic_HARDSIGN = 0x06ff // U+042A CYRILLIC CAPITAL LETTER HARD SIGN
+ XK_Greek_ALPHAaccent = 0x07a1 // U+0386 GREEK CAPITAL LETTER ALPHA WITH TONOS
+ XK_Greek_EPSILONaccent = 0x07a2 // U+0388 GREEK CAPITAL LETTER EPSILON WITH TONOS
+ XK_Greek_ETAaccent = 0x07a3 // U+0389 GREEK CAPITAL LETTER ETA WITH TONOS
+ XK_Greek_IOTAaccent = 0x07a4 // U+038A GREEK CAPITAL LETTER IOTA WITH TONOS
+ XK_Greek_IOTAdieresis = 0x07a5 // U+03AA GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
+ XK_Greek_IOTAdiaeresis = 0x07a5 // old typo
+ XK_Greek_OMICRONaccent = 0x07a7 // U+038C GREEK CAPITAL LETTER OMICRON WITH TONOS
+ XK_Greek_UPSILONaccent = 0x07a8 // U+038E GREEK CAPITAL LETTER UPSILON WITH TONOS
+ XK_Greek_UPSILONdieresis = 0x07a9 // U+03AB GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
+ XK_Greek_OMEGAaccent = 0x07ab // U+038F GREEK CAPITAL LETTER OMEGA WITH TONOS
+ XK_Greek_accentdieresis = 0x07ae // U+0385 GREEK DIALYTIKA TONOS
+ XK_Greek_horizbar = 0x07af // U+2015 HORIZONTAL BAR
+ XK_Greek_alphaaccent = 0x07b1 // U+03AC GREEK SMALL LETTER ALPHA WITH TONOS
+ XK_Greek_epsilonaccent = 0x07b2 // U+03AD GREEK SMALL LETTER EPSILON WITH TONOS
+ XK_Greek_etaaccent = 0x07b3 // U+03AE GREEK SMALL LETTER ETA WITH TONOS
+ XK_Greek_iotaaccent = 0x07b4 // U+03AF GREEK SMALL LETTER IOTA WITH TONOS
+ XK_Greek_iotadieresis = 0x07b5 // U+03CA GREEK SMALL LETTER IOTA WITH DIALYTIKA
+ XK_Greek_iotaaccentdieresis = 0x07b6 // U+0390 GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
+ XK_Greek_omicronaccent = 0x07b7 // U+03CC GREEK SMALL LETTER OMICRON WITH TONOS
+ XK_Greek_upsilonaccent = 0x07b8 // U+03CD GREEK SMALL LETTER UPSILON WITH TONOS
+ XK_Greek_upsilondieresis = 0x07b9 // U+03CB GREEK SMALL LETTER UPSILON WITH DIALYTIKA
+ XK_Greek_upsilonaccentdieresis = 0x07ba // U+03B0 GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS
+ XK_Greek_omegaaccent = 0x07bb // U+03CE GREEK SMALL LETTER OMEGA WITH TONOS
+ XK_Greek_ALPHA = 0x07c1 // U+0391 GREEK CAPITAL LETTER ALPHA
+ XK_Greek_BETA = 0x07c2 // U+0392 GREEK CAPITAL LETTER BETA
+ XK_Greek_GAMMA = 0x07c3 // U+0393 GREEK CAPITAL LETTER GAMMA
+ XK_Greek_DELTA = 0x07c4 // U+0394 GREEK CAPITAL LETTER DELTA
+ XK_Greek_EPSILON = 0x07c5 // U+0395 GREEK CAPITAL LETTER EPSILON
+ XK_Greek_ZETA = 0x07c6 // U+0396 GREEK CAPITAL LETTER ZETA
+ XK_Greek_ETA = 0x07c7 // U+0397 GREEK CAPITAL LETTER ETA
+ XK_Greek_THETA = 0x07c8 // U+0398 GREEK CAPITAL LETTER THETA
+ XK_Greek_IOTA = 0x07c9 // U+0399 GREEK CAPITAL LETTER IOTA
+ XK_Greek_KAPPA = 0x07ca // U+039A GREEK CAPITAL LETTER KAPPA
+ XK_Greek_LAMDA = 0x07cb // U+039B GREEK CAPITAL LETTER LAMDA
+ XK_Greek_LAMBDA = 0x07cb // U+039B GREEK CAPITAL LETTER LAMDA
+ XK_Greek_MU = 0x07cc // U+039C GREEK CAPITAL LETTER MU
+ XK_Greek_NU = 0x07cd // U+039D GREEK CAPITAL LETTER NU
+ XK_Greek_XI = 0x07ce // U+039E GREEK CAPITAL LETTER XI
+ XK_Greek_OMICRON = 0x07cf // U+039F GREEK CAPITAL LETTER OMICRON
+ XK_Greek_PI = 0x07d0 // U+03A0 GREEK CAPITAL LETTER PI
+ XK_Greek_RHO = 0x07d1 // U+03A1 GREEK CAPITAL LETTER RHO
+ XK_Greek_SIGMA = 0x07d2 // U+03A3 GREEK CAPITAL LETTER SIGMA
+ XK_Greek_TAU = 0x07d4 // U+03A4 GREEK CAPITAL LETTER TAU
+ XK_Greek_UPSILON = 0x07d5 // U+03A5 GREEK CAPITAL LETTER UPSILON
+ XK_Greek_PHI = 0x07d6 // U+03A6 GREEK CAPITAL LETTER PHI
+ XK_Greek_CHI = 0x07d7 // U+03A7 GREEK CAPITAL LETTER CHI
+ XK_Greek_PSI = 0x07d8 // U+03A8 GREEK CAPITAL LETTER PSI
+ XK_Greek_OMEGA = 0x07d9 // U+03A9 GREEK CAPITAL LETTER OMEGA
+ XK_Greek_alpha = 0x07e1 // U+03B1 GREEK SMALL LETTER ALPHA
+ XK_Greek_beta = 0x07e2 // U+03B2 GREEK SMALL LETTER BETA
+ XK_Greek_gamma = 0x07e3 // U+03B3 GREEK SMALL LETTER GAMMA
+ XK_Greek_delta = 0x07e4 // U+03B4 GREEK SMALL LETTER DELTA
+ XK_Greek_epsilon = 0x07e5 // U+03B5 GREEK SMALL LETTER EPSILON
+ XK_Greek_zeta = 0x07e6 // U+03B6 GREEK SMALL LETTER ZETA
+ XK_Greek_eta = 0x07e7 // U+03B7 GREEK SMALL LETTER ETA
+ XK_Greek_theta = 0x07e8 // U+03B8 GREEK SMALL LETTER THETA
+ XK_Greek_iota = 0x07e9 // U+03B9 GREEK SMALL LETTER IOTA
+ XK_Greek_kappa = 0x07ea // U+03BA GREEK SMALL LETTER KAPPA
+ XK_Greek_lamda = 0x07eb // U+03BB GREEK SMALL LETTER LAMDA
+ XK_Greek_lambda = 0x07eb // U+03BB GREEK SMALL LETTER LAMDA
+ XK_Greek_mu = 0x07ec // U+03BC GREEK SMALL LETTER MU
+ XK_Greek_nu = 0x07ed // U+03BD GREEK SMALL LETTER NU
+ XK_Greek_xi = 0x07ee // U+03BE GREEK SMALL LETTER XI
+ XK_Greek_omicron = 0x07ef // U+03BF GREEK SMALL LETTER OMICRON
+ XK_Greek_pi = 0x07f0 // U+03C0 GREEK SMALL LETTER PI
+ XK_Greek_rho = 0x07f1 // U+03C1 GREEK SMALL LETTER RHO
+ XK_Greek_sigma = 0x07f2 // U+03C3 GREEK SMALL LETTER SIGMA
+ XK_Greek_finalsmallsigma = 0x07f3 // U+03C2 GREEK SMALL LETTER FINAL SIGMA
+ XK_Greek_tau = 0x07f4 // U+03C4 GREEK SMALL LETTER TAU
+ XK_Greek_upsilon = 0x07f5 // U+03C5 GREEK SMALL LETTER UPSILON
+ XK_Greek_phi = 0x07f6 // U+03C6 GREEK SMALL LETTER PHI
+ XK_Greek_chi = 0x07f7 // U+03C7 GREEK SMALL LETTER CHI
+ XK_Greek_psi = 0x07f8 // U+03C8 GREEK SMALL LETTER PSI
+ XK_Greek_omega = 0x07f9 // U+03C9 GREEK SMALL LETTER OMEGA
+ XK_Greek_switch = 0xff7e // Alias for mode_switch
+ XK_leftradical = 0x08a1 // U+23B7 RADICAL SYMBOL BOTTOM
+ XK_topleftradical = 0x08a2 // (U+250C BOX DRAWINGS LIGHT DOWN AND RIGHT)
+ XK_horizconnector = 0x08a3 // (U+2500 BOX DRAWINGS LIGHT HORIZONTAL)
+ XK_topintegral = 0x08a4 // U+2320 TOP HALF INTEGRAL
+ XK_botintegral = 0x08a5 // U+2321 BOTTOM HALF INTEGRAL
+ XK_vertconnector = 0x08a6 // (U+2502 BOX DRAWINGS LIGHT VERTICAL)
+ XK_topleftsqbracket = 0x08a7 // U+23A1 LEFT SQUARE BRACKET UPPER CORNER
+ XK_botleftsqbracket = 0x08a8 // U+23A3 LEFT SQUARE BRACKET LOWER CORNER
+ XK_toprightsqbracket = 0x08a9 // U+23A4 RIGHT SQUARE BRACKET UPPER CORNER
+ XK_botrightsqbracket = 0x08aa // U+23A6 RIGHT SQUARE BRACKET LOWER CORNER
+ XK_topleftparens = 0x08ab // U+239B LEFT PARENTHESIS UPPER HOOK
+ XK_botleftparens = 0x08ac // U+239D LEFT PARENTHESIS LOWER HOOK
+ XK_toprightparens = 0x08ad // U+239E RIGHT PARENTHESIS UPPER HOOK
+ XK_botrightparens = 0x08ae // U+23A0 RIGHT PARENTHESIS LOWER HOOK
+ XK_leftmiddlecurlybrace = 0x08af // U+23A8 LEFT CURLY BRACKET MIDDLE PIECE
+ XK_rightmiddlecurlybrace = 0x08b0 // U+23AC RIGHT CURLY BRACKET MIDDLE PIECE
+ XK_topleftsummation = 0x08b1
+ XK_botleftsummation = 0x08b2
+ XK_topvertsummationconnector = 0x08b3
+ XK_botvertsummationconnector = 0x08b4
+ XK_toprightsummation = 0x08b5
+ XK_botrightsummation = 0x08b6
+ XK_rightmiddlesummation = 0x08b7
+ XK_lessthanequal = 0x08bc // U+2264 LESS-THAN OR EQUAL TO
+ XK_notequal = 0x08bd // U+2260 NOT EQUAL TO
+ XK_greaterthanequal = 0x08be // U+2265 GREATER-THAN OR EQUAL TO
+ XK_integral = 0x08bf // U+222B INTEGRAL
+ XK_therefore = 0x08c0 // U+2234 THEREFORE
+ XK_variation = 0x08c1 // U+221D PROPORTIONAL TO
+ XK_infinity = 0x08c2 // U+221E INFINITY
+ XK_nabla = 0x08c5 // U+2207 NABLA
+ XK_approximate = 0x08c8 // U+223C TILDE OPERATOR
+ XK_similarequal = 0x08c9 // U+2243 ASYMPTOTICALLY EQUAL TO
+ XK_ifonlyif = 0x08cd // U+21D4 LEFT RIGHT DOUBLE ARROW
+ XK_implies = 0x08ce // U+21D2 RIGHTWARDS DOUBLE ARROW
+ XK_identical = 0x08cf // U+2261 IDENTICAL TO
+ XK_radical = 0x08d6 // U+221A SQUARE ROOT
+ XK_includedin = 0x08da // U+2282 SUBSET OF
+ XK_includes = 0x08db // U+2283 SUPERSET OF
+ XK_intersection = 0x08dc // U+2229 INTERSECTION
+ XK_union = 0x08dd // U+222A UNION
+ XK_logicaland = 0x08de // U+2227 LOGICAL AND
+ XK_logicalor = 0x08df // U+2228 LOGICAL OR
+ XK_partialderivative = 0x08ef // U+2202 PARTIAL DIFFERENTIAL
+ XK_function = 0x08f6 // U+0192 LATIN SMALL LETTER F WITH HOOK
+ XK_leftarrow = 0x08fb // U+2190 LEFTWARDS ARROW
+ XK_uparrow = 0x08fc // U+2191 UPWARDS ARROW
+ XK_rightarrow = 0x08fd // U+2192 RIGHTWARDS ARROW
+ XK_downarrow = 0x08fe // U+2193 DOWNWARDS ARROW
+ XK_blank = 0x09df
+ XK_soliddiamond = 0x09e0 // U+25C6 BLACK DIAMOND
+ XK_checkerboard = 0x09e1 // U+2592 MEDIUM SHADE
+ XK_ht = 0x09e2 // U+2409 SYMBOL FOR HORIZONTAL TABULATION
+ XK_ff = 0x09e3 // U+240C SYMBOL FOR FORM FEED
+ XK_cr = 0x09e4 // U+240D SYMBOL FOR CARRIAGE RETURN
+ XK_lf = 0x09e5 // U+240A SYMBOL FOR LINE FEED
+ XK_nl = 0x09e8 // U+2424 SYMBOL FOR NEWLINE
+ XK_vt = 0x09e9 // U+240B SYMBOL FOR VERTICAL TABULATION
+ XK_lowrightcorner = 0x09ea // U+2518 BOX DRAWINGS LIGHT UP AND LEFT
+ XK_uprightcorner = 0x09eb // U+2510 BOX DRAWINGS LIGHT DOWN AND LEFT
+ XK_upleftcorner = 0x09ec // U+250C BOX DRAWINGS LIGHT DOWN AND RIGHT
+ XK_lowleftcorner = 0x09ed // U+2514 BOX DRAWINGS LIGHT UP AND RIGHT
+ XK_crossinglines = 0x09ee // U+253C BOX DRAWINGS LIGHT VERTICAL AND HORIZONTAL
+ XK_horizlinescan1 = 0x09ef // U+23BA HORIZONTAL SCAN LINE-1
+ XK_horizlinescan3 = 0x09f0 // U+23BB HORIZONTAL SCAN LINE-3
+ XK_horizlinescan5 = 0x09f1 // U+2500 BOX DRAWINGS LIGHT HORIZONTAL
+ XK_horizlinescan7 = 0x09f2 // U+23BC HORIZONTAL SCAN LINE-7
+ XK_horizlinescan9 = 0x09f3 // U+23BD HORIZONTAL SCAN LINE-9
+ XK_leftt = 0x09f4 // U+251C BOX DRAWINGS LIGHT VERTICAL AND RIGHT
+ XK_rightt = 0x09f5 // U+2524 BOX DRAWINGS LIGHT VERTICAL AND LEFT
+ XK_bott = 0x09f6 // U+2534 BOX DRAWINGS LIGHT UP AND HORIZONTAL
+ XK_topt = 0x09f7 // U+252C BOX DRAWINGS LIGHT DOWN AND HORIZONTAL
+ XK_vertbar = 0x09f8 // U+2502 BOX DRAWINGS LIGHT VERTICAL
+ XK_emspace = 0x0aa1 // U+2003 EM SPACE
+ XK_enspace = 0x0aa2 // U+2002 EN SPACE
+ XK_em3space = 0x0aa3 // U+2004 THREE-PER-EM SPACE
+ XK_em4space = 0x0aa4 // U+2005 FOUR-PER-EM SPACE
+ XK_digitspace = 0x0aa5 // U+2007 FIGURE SPACE
+ XK_punctspace = 0x0aa6 // U+2008 PUNCTUATION SPACE
+ XK_thinspace = 0x0aa7 // U+2009 THIN SPACE
+ XK_hairspace = 0x0aa8 // U+200A HAIR SPACE
+ XK_emdash = 0x0aa9 // U+2014 EM DASH
+ XK_endash = 0x0aaa // U+2013 EN DASH
+ XK_signifblank = 0x0aac // (U+2423 OPEN BOX)
+ XK_ellipsis = 0x0aae // U+2026 HORIZONTAL ELLIPSIS
+ XK_doubbaselinedot = 0x0aaf // U+2025 TWO DOT LEADER
+ XK_onethird = 0x0ab0 // U+2153 VULGAR FRACTION ONE THIRD
+ XK_twothirds = 0x0ab1 // U+2154 VULGAR FRACTION TWO THIRDS
+ XK_onefifth = 0x0ab2 // U+2155 VULGAR FRACTION ONE FIFTH
+ XK_twofifths = 0x0ab3 // U+2156 VULGAR FRACTION TWO FIFTHS
+ XK_threefifths = 0x0ab4 // U+2157 VULGAR FRACTION THREE FIFTHS
+ XK_fourfifths = 0x0ab5 // U+2158 VULGAR FRACTION FOUR FIFTHS
+ XK_onesixth = 0x0ab6 // U+2159 VULGAR FRACTION ONE SIXTH
+ XK_fivesixths = 0x0ab7 // U+215A VULGAR FRACTION FIVE SIXTHS
+ XK_careof = 0x0ab8 // U+2105 CARE OF
+ XK_figdash = 0x0abb // U+2012 FIGURE DASH
+ XK_leftanglebracket = 0x0abc // (U+27E8 MATHEMATICAL LEFT ANGLE BRACKET)
+ XK_decimalpoint = 0x0abd // (U+002E FULL STOP)
+ XK_rightanglebracket = 0x0abe // (U+27E9 MATHEMATICAL RIGHT ANGLE BRACKET)
+ XK_marker = 0x0abf
+ XK_oneeighth = 0x0ac3 // U+215B VULGAR FRACTION ONE EIGHTH
+ XK_threeeighths = 0x0ac4 // U+215C VULGAR FRACTION THREE EIGHTHS
+ XK_fiveeighths = 0x0ac5 // U+215D VULGAR FRACTION FIVE EIGHTHS
+ XK_seveneighths = 0x0ac6 // U+215E VULGAR FRACTION SEVEN EIGHTHS
+ XK_trademark = 0x0ac9 // U+2122 TRADE MARK SIGN
+ XK_signaturemark = 0x0aca // (U+2613 SALTIRE)
+ XK_trademarkincircle = 0x0acb
+ XK_leftopentriangle = 0x0acc // (U+25C1 WHITE LEFT-POINTING TRIANGLE)
+ XK_rightopentriangle = 0x0acd // (U+25B7 WHITE RIGHT-POINTING TRIANGLE)
+ XK_emopencircle = 0x0ace // (U+25CB WHITE CIRCLE)
+ XK_emopenrectangle = 0x0acf // (U+25AF WHITE VERTICAL RECTANGLE)
+ XK_leftsinglequotemark = 0x0ad0 // U+2018 LEFT SINGLE QUOTATION MARK
+ XK_rightsinglequotemark = 0x0ad1 // U+2019 RIGHT SINGLE QUOTATION MARK
+ XK_leftdoublequotemark = 0x0ad2 // U+201C LEFT DOUBLE QUOTATION MARK
+ XK_rightdoublequotemark = 0x0ad3 // U+201D RIGHT DOUBLE QUOTATION MARK
+ XK_prescription = 0x0ad4 // U+211E PRESCRIPTION TAKE
+ XK_permille = 0x0ad5 // U+2030 PER MILLE SIGN
+ XK_minutes = 0x0ad6 // U+2032 PRIME
+ XK_seconds = 0x0ad7 // U+2033 DOUBLE PRIME
+ XK_latincross = 0x0ad9 // U+271D LATIN CROSS
+ XK_hexagram = 0x0ada
+ XK_filledrectbullet = 0x0adb // (U+25AC BLACK RECTANGLE)
+ XK_filledlefttribullet = 0x0adc // (U+25C0 BLACK LEFT-POINTING TRIANGLE)
+ XK_filledrighttribullet = 0x0add // (U+25B6 BLACK RIGHT-POINTING TRIANGLE)
+ XK_emfilledcircle = 0x0ade // (U+25CF BLACK CIRCLE)
+ XK_emfilledrect = 0x0adf // (U+25AE BLACK VERTICAL RECTANGLE)
+ XK_enopencircbullet = 0x0ae0 // (U+25E6 WHITE BULLET)
+ XK_enopensquarebullet = 0x0ae1 // (U+25AB WHITE SMALL SQUARE)
+ XK_openrectbullet = 0x0ae2 // (U+25AD WHITE RECTANGLE)
+ XK_opentribulletup = 0x0ae3 // (U+25B3 WHITE UP-POINTING TRIANGLE)
+ XK_opentribulletdown = 0x0ae4 // (U+25BD WHITE DOWN-POINTING TRIANGLE)
+ XK_openstar = 0x0ae5 // (U+2606 WHITE STAR)
+ XK_enfilledcircbullet = 0x0ae6 // (U+2022 BULLET)
+ XK_enfilledsqbullet = 0x0ae7 // (U+25AA BLACK SMALL SQUARE)
+ XK_filledtribulletup = 0x0ae8 // (U+25B2 BLACK UP-POINTING TRIANGLE)
+ XK_filledtribulletdown = 0x0ae9 // (U+25BC BLACK DOWN-POINTING TRIANGLE)
+ XK_leftpointer = 0x0aea // (U+261C WHITE LEFT POINTING INDEX)
+ XK_rightpointer = 0x0aeb // (U+261E WHITE RIGHT POINTING INDEX)
+ XK_club = 0x0aec // U+2663 BLACK CLUB SUIT
+ XK_diamond = 0x0aed // U+2666 BLACK DIAMOND SUIT
+ XK_heart = 0x0aee // U+2665 BLACK HEART SUIT
+ XK_maltesecross = 0x0af0 // U+2720 MALTESE CROSS
+ XK_dagger = 0x0af1 // U+2020 DAGGER
+ XK_doubledagger = 0x0af2 // U+2021 DOUBLE DAGGER
+ XK_checkmark = 0x0af3 // U+2713 CHECK MARK
+ XK_ballotcross = 0x0af4 // U+2717 BALLOT X
+ XK_musicalsharp = 0x0af5 // U+266F MUSIC SHARP SIGN
+ XK_musicalflat = 0x0af6 // U+266D MUSIC FLAT SIGN
+ XK_malesymbol = 0x0af7 // U+2642 MALE SIGN
+ XK_femalesymbol = 0x0af8 // U+2640 FEMALE SIGN
+ XK_telephone = 0x0af9 // U+260E BLACK TELEPHONE
+ XK_telephonerecorder = 0x0afa // U+2315 TELEPHONE RECORDER
+ XK_phonographcopyright = 0x0afb // U+2117 SOUND RECORDING COPYRIGHT
+ XK_caret = 0x0afc // U+2038 CARET
+ XK_singlelowquotemark = 0x0afd // U+201A SINGLE LOW-9 QUOTATION MARK
+ XK_doublelowquotemark = 0x0afe // U+201E DOUBLE LOW-9 QUOTATION MARK
+ XK_cursor = 0x0aff
+ XK_leftcaret = 0x0ba3 // (U+003C LESS-THAN SIGN)
+ XK_rightcaret = 0x0ba6 // (U+003E GREATER-THAN SIGN)
+ XK_downcaret = 0x0ba8 // (U+2228 LOGICAL OR)
+ XK_upcaret = 0x0ba9 // (U+2227 LOGICAL AND)
+ XK_overbar = 0x0bc0 // (U+00AF MACRON)
+ XK_downtack = 0x0bc2 // U+22A4 DOWN TACK
+ XK_upshoe = 0x0bc3 // (U+2229 INTERSECTION)
+ XK_downstile = 0x0bc4 // U+230A LEFT FLOOR
+ XK_underbar = 0x0bc6 // (U+005F LOW LINE)
+ XK_jot = 0x0bca // U+2218 RING OPERATOR
+ XK_quad = 0x0bcc // U+2395 APL FUNCTIONAL SYMBOL QUAD
+ XK_uptack = 0x0bce // U+22A5 UP TACK
+ XK_circle = 0x0bcf // U+25CB WHITE CIRCLE
+ XK_upstile = 0x0bd3 // U+2308 LEFT CEILING
+ XK_downshoe = 0x0bd6 // (U+222A UNION)
+ XK_rightshoe = 0x0bd8 // (U+2283 SUPERSET OF)
+ XK_leftshoe = 0x0bda // (U+2282 SUBSET OF)
+ XK_lefttack = 0x0bdc // U+22A3 LEFT TACK
+ XK_righttack = 0x0bfc // U+22A2 RIGHT TACK
+ XK_hebrew_doublelowline = 0x0cdf // U+2017 DOUBLE LOW LINE
+ XK_hebrew_aleph = 0x0ce0 // U+05D0 HEBREW LETTER ALEF
+ XK_hebrew_bet = 0x0ce1 // U+05D1 HEBREW LETTER BET
+ XK_hebrew_beth = 0x0ce1 // deprecated
+ XK_hebrew_gimel = 0x0ce2 // U+05D2 HEBREW LETTER GIMEL
+ XK_hebrew_gimmel = 0x0ce2 // deprecated
+ XK_hebrew_dalet = 0x0ce3 // U+05D3 HEBREW LETTER DALET
+ XK_hebrew_daleth = 0x0ce3 // deprecated
+ XK_hebrew_he = 0x0ce4 // U+05D4 HEBREW LETTER HE
+ XK_hebrew_waw = 0x0ce5 // U+05D5 HEBREW LETTER VAV
+ XK_hebrew_zain = 0x0ce6 // U+05D6 HEBREW LETTER ZAYIN
+ XK_hebrew_zayin = 0x0ce6 // deprecated
+ XK_hebrew_chet = 0x0ce7 // U+05D7 HEBREW LETTER HET
+ XK_hebrew_het = 0x0ce7 // deprecated
+ XK_hebrew_tet = 0x0ce8 // U+05D8 HEBREW LETTER TET
+ XK_hebrew_teth = 0x0ce8 // deprecated
+ XK_hebrew_yod = 0x0ce9 // U+05D9 HEBREW LETTER YOD
+ XK_hebrew_finalkaph = 0x0cea // U+05DA HEBREW LETTER FINAL KAF
+ XK_hebrew_kaph = 0x0ceb // U+05DB HEBREW LETTER KAF
+ XK_hebrew_lamed = 0x0cec // U+05DC HEBREW LETTER LAMED
+ XK_hebrew_finalmem = 0x0ced // U+05DD HEBREW LETTER FINAL MEM
+ XK_hebrew_mem = 0x0cee // U+05DE HEBREW LETTER MEM
+ XK_hebrew_finalnun = 0x0cef // U+05DF HEBREW LETTER FINAL NUN
+ XK_hebrew_nun = 0x0cf0 // U+05E0 HEBREW LETTER NUN
+ XK_hebrew_samech = 0x0cf1 // U+05E1 HEBREW LETTER SAMEKH
+ XK_hebrew_samekh = 0x0cf1 // deprecated
+ XK_hebrew_ayin = 0x0cf2 // U+05E2 HEBREW LETTER AYIN
+ XK_hebrew_finalpe = 0x0cf3 // U+05E3 HEBREW LETTER FINAL PE
+ XK_hebrew_pe = 0x0cf4 // U+05E4 HEBREW LETTER PE
+ XK_hebrew_finalzade = 0x0cf5 // U+05E5 HEBREW LETTER FINAL TSADI
+ XK_hebrew_finalzadi = 0x0cf5 // deprecated
+ XK_hebrew_zade = 0x0cf6 // U+05E6 HEBREW LETTER TSADI
+ XK_hebrew_zadi = 0x0cf6 // deprecated
+ XK_hebrew_qoph = 0x0cf7 // U+05E7 HEBREW LETTER QOF
+ XK_hebrew_kuf = 0x0cf7 // deprecated
+ XK_hebrew_resh = 0x0cf8 // U+05E8 HEBREW LETTER RESH
+ XK_hebrew_shin = 0x0cf9 // U+05E9 HEBREW LETTER SHIN
+ XK_hebrew_taw = 0x0cfa // U+05EA HEBREW LETTER TAV
+ XK_hebrew_taf = 0x0cfa // deprecated
+ XK_Hebrew_switch = 0xff7e // Alias for mode_switch
+ XK_Thai_kokai = 0x0da1 // U+0E01 THAI CHARACTER KO KAI
+ XK_Thai_khokhai = 0x0da2 // U+0E02 THAI CHARACTER KHO KHAI
+ XK_Thai_khokhuat = 0x0da3 // U+0E03 THAI CHARACTER KHO KHUAT
+ XK_Thai_khokhwai = 0x0da4 // U+0E04 THAI CHARACTER KHO KHWAI
+ XK_Thai_khokhon = 0x0da5 // U+0E05 THAI CHARACTER KHO KHON
+ XK_Thai_khorakhang = 0x0da6 // U+0E06 THAI CHARACTER KHO RAKHANG
+ XK_Thai_ngongu = 0x0da7 // U+0E07 THAI CHARACTER NGO NGU
+ XK_Thai_chochan = 0x0da8 // U+0E08 THAI CHARACTER CHO CHAN
+ XK_Thai_choching = 0x0da9 // U+0E09 THAI CHARACTER CHO CHING
+ XK_Thai_chochang = 0x0daa // U+0E0A THAI CHARACTER CHO CHANG
+ XK_Thai_soso = 0x0dab // U+0E0B THAI CHARACTER SO SO
+ XK_Thai_chochoe = 0x0dac // U+0E0C THAI CHARACTER CHO CHOE
+ XK_Thai_yoying = 0x0dad // U+0E0D THAI CHARACTER YO YING
+ XK_Thai_dochada = 0x0dae // U+0E0E THAI CHARACTER DO CHADA
+ XK_Thai_topatak = 0x0daf // U+0E0F THAI CHARACTER TO PATAK
+ XK_Thai_thothan = 0x0db0 // U+0E10 THAI CHARACTER THO THAN
+ XK_Thai_thonangmontho = 0x0db1 // U+0E11 THAI CHARACTER THO NANGMONTHO
+ XK_Thai_thophuthao = 0x0db2 // U+0E12 THAI CHARACTER THO PHUTHAO
+ XK_Thai_nonen = 0x0db3 // U+0E13 THAI CHARACTER NO NEN
+ XK_Thai_dodek = 0x0db4 // U+0E14 THAI CHARACTER DO DEK
+ XK_Thai_totao = 0x0db5 // U+0E15 THAI CHARACTER TO TAO
+ XK_Thai_thothung = 0x0db6 // U+0E16 THAI CHARACTER THO THUNG
+ XK_Thai_thothahan = 0x0db7 // U+0E17 THAI CHARACTER THO THAHAN
+ XK_Thai_thothong = 0x0db8 // U+0E18 THAI CHARACTER THO THONG
+ XK_Thai_nonu = 0x0db9 // U+0E19 THAI CHARACTER NO NU
+ XK_Thai_bobaimai = 0x0dba // U+0E1A THAI CHARACTER BO BAIMAI
+ XK_Thai_popla = 0x0dbb // U+0E1B THAI CHARACTER PO PLA
+ XK_Thai_phophung = 0x0dbc // U+0E1C THAI CHARACTER PHO PHUNG
+ XK_Thai_fofa = 0x0dbd // U+0E1D THAI CHARACTER FO FA
+ XK_Thai_phophan = 0x0dbe // U+0E1E THAI CHARACTER PHO PHAN
+ XK_Thai_fofan = 0x0dbf // U+0E1F THAI CHARACTER FO FAN
+ XK_Thai_phosamphao = 0x0dc0 // U+0E20 THAI CHARACTER PHO SAMPHAO
+ XK_Thai_moma = 0x0dc1 // U+0E21 THAI CHARACTER MO MA
+ XK_Thai_yoyak = 0x0dc2 // U+0E22 THAI CHARACTER YO YAK
+ XK_Thai_rorua = 0x0dc3 // U+0E23 THAI CHARACTER RO RUA
+ XK_Thai_ru = 0x0dc4 // U+0E24 THAI CHARACTER RU
+ XK_Thai_loling = 0x0dc5 // U+0E25 THAI CHARACTER LO LING
+ XK_Thai_lu = 0x0dc6 // U+0E26 THAI CHARACTER LU
+ XK_Thai_wowaen = 0x0dc7 // U+0E27 THAI CHARACTER WO WAEN
+ XK_Thai_sosala = 0x0dc8 // U+0E28 THAI CHARACTER SO SALA
+ XK_Thai_sorusi = 0x0dc9 // U+0E29 THAI CHARACTER SO RUSI
+ XK_Thai_sosua = 0x0dca // U+0E2A THAI CHARACTER SO SUA
+ XK_Thai_hohip = 0x0dcb // U+0E2B THAI CHARACTER HO HIP
+ XK_Thai_lochula = 0x0dcc // U+0E2C THAI CHARACTER LO CHULA
+ XK_Thai_oang = 0x0dcd // U+0E2D THAI CHARACTER O ANG
+ XK_Thai_honokhuk = 0x0dce // U+0E2E THAI CHARACTER HO NOKHUK
+ XK_Thai_paiyannoi = 0x0dcf // U+0E2F THAI CHARACTER PAIYANNOI
+ XK_Thai_saraa = 0x0dd0 // U+0E30 THAI CHARACTER SARA A
+ XK_Thai_maihanakat = 0x0dd1 // U+0E31 THAI CHARACTER MAI HAN-AKAT
+ XK_Thai_saraaa = 0x0dd2 // U+0E32 THAI CHARACTER SARA AA
+ XK_Thai_saraam = 0x0dd3 // U+0E33 THAI CHARACTER SARA AM
+ XK_Thai_sarai = 0x0dd4 // U+0E34 THAI CHARACTER SARA I
+ XK_Thai_saraii = 0x0dd5 // U+0E35 THAI CHARACTER SARA II
+ XK_Thai_saraue = 0x0dd6 // U+0E36 THAI CHARACTER SARA UE
+ XK_Thai_sarauee = 0x0dd7 // U+0E37 THAI CHARACTER SARA UEE
+ XK_Thai_sarau = 0x0dd8 // U+0E38 THAI CHARACTER SARA U
+ XK_Thai_sarauu = 0x0dd9 // U+0E39 THAI CHARACTER SARA UU
+ XK_Thai_phinthu = 0x0dda // U+0E3A THAI CHARACTER PHINTHU
+ XK_Thai_maihanakat_maitho = 0x0dde
+ XK_Thai_baht = 0x0ddf // U+0E3F THAI CURRENCY SYMBOL BAHT
+ XK_Thai_sarae = 0x0de0 // U+0E40 THAI CHARACTER SARA E
+ XK_Thai_saraae = 0x0de1 // U+0E41 THAI CHARACTER SARA AE
+ XK_Thai_sarao = 0x0de2 // U+0E42 THAI CHARACTER SARA O
+ XK_Thai_saraaimaimuan = 0x0de3 // U+0E43 THAI CHARACTER SARA AI MAIMUAN
+ XK_Thai_saraaimaimalai = 0x0de4 // U+0E44 THAI CHARACTER SARA AI MAIMALAI
+ XK_Thai_lakkhangyao = 0x0de5 // U+0E45 THAI CHARACTER LAKKHANGYAO
+ XK_Thai_maiyamok = 0x0de6 // U+0E46 THAI CHARACTER MAIYAMOK
+ XK_Thai_maitaikhu = 0x0de7 // U+0E47 THAI CHARACTER MAITAIKHU
+ XK_Thai_maiek = 0x0de8 // U+0E48 THAI CHARACTER MAI EK
+ XK_Thai_maitho = 0x0de9 // U+0E49 THAI CHARACTER MAI THO
+ XK_Thai_maitri = 0x0dea // U+0E4A THAI CHARACTER MAI TRI
+ XK_Thai_maichattawa = 0x0deb // U+0E4B THAI CHARACTER MAI CHATTAWA
+ XK_Thai_thanthakhat = 0x0dec // U+0E4C THAI CHARACTER THANTHAKHAT
+ XK_Thai_nikhahit = 0x0ded // U+0E4D THAI CHARACTER NIKHAHIT
+ XK_Thai_leksun = 0x0df0 // U+0E50 THAI DIGIT ZERO
+ XK_Thai_leknung = 0x0df1 // U+0E51 THAI DIGIT ONE
+ XK_Thai_leksong = 0x0df2 // U+0E52 THAI DIGIT TWO
+ XK_Thai_leksam = 0x0df3 // U+0E53 THAI DIGIT THREE
+ XK_Thai_leksi = 0x0df4 // U+0E54 THAI DIGIT FOUR
+ XK_Thai_lekha = 0x0df5 // U+0E55 THAI DIGIT FIVE
+ XK_Thai_lekhok = 0x0df6 // U+0E56 THAI DIGIT SIX
+ XK_Thai_lekchet = 0x0df7 // U+0E57 THAI DIGIT SEVEN
+ XK_Thai_lekpaet = 0x0df8 // U+0E58 THAI DIGIT EIGHT
+ XK_Thai_lekkao = 0x0df9 // U+0E59 THAI DIGIT NINE
+ XK_Hangul = 0xff31 // Hangul start/stop(toggle)
+ XK_Hangul_Start = 0xff32 // Hangul start
+ XK_Hangul_End = 0xff33 // Hangul end, English start
+ XK_Hangul_Hanja = 0xff34 // Start Hangul->Hanja Conversion
+ XK_Hangul_Jamo = 0xff35 // Hangul Jamo mode
+ XK_Hangul_Romaja = 0xff36 // Hangul Romaja mode
+ XK_Hangul_Codeinput = 0xff37 // Hangul code input mode
+ XK_Hangul_Jeonja = 0xff38 // Jeonja mode
+ XK_Hangul_Banja = 0xff39 // Banja mode
+ XK_Hangul_PreHanja = 0xff3a // Pre Hanja conversion
+ XK_Hangul_PostHanja = 0xff3b // Post Hanja conversion
+ XK_Hangul_SingleCandidate = 0xff3c // Single candidate
+ XK_Hangul_MultipleCandidate = 0xff3d // Multiple candidate
+ XK_Hangul_PreviousCandidate = 0xff3e // Previous candidate
+ XK_Hangul_Special = 0xff3f // Special symbols
+ XK_Hangul_switch = 0xff7e // Alias for mode_switch
+ XK_Hangul_Kiyeog = 0x0ea1
+ XK_Hangul_SsangKiyeog = 0x0ea2
+ XK_Hangul_KiyeogSios = 0x0ea3
+ XK_Hangul_Nieun = 0x0ea4
+ XK_Hangul_NieunJieuj = 0x0ea5
+ XK_Hangul_NieunHieuh = 0x0ea6
+ XK_Hangul_Dikeud = 0x0ea7
+ XK_Hangul_SsangDikeud = 0x0ea8
+ XK_Hangul_Rieul = 0x0ea9
+ XK_Hangul_RieulKiyeog = 0x0eaa
+ XK_Hangul_RieulMieum = 0x0eab
+ XK_Hangul_RieulPieub = 0x0eac
+ XK_Hangul_RieulSios = 0x0ead
+ XK_Hangul_RieulTieut = 0x0eae
+ XK_Hangul_RieulPhieuf = 0x0eaf
+ XK_Hangul_RieulHieuh = 0x0eb0
+ XK_Hangul_Mieum = 0x0eb1
+ XK_Hangul_Pieub = 0x0eb2
+ XK_Hangul_SsangPieub = 0x0eb3
+ XK_Hangul_PieubSios = 0x0eb4
+ XK_Hangul_Sios = 0x0eb5
+ XK_Hangul_SsangSios = 0x0eb6
+ XK_Hangul_Ieung = 0x0eb7
+ XK_Hangul_Jieuj = 0x0eb8
+ XK_Hangul_SsangJieuj = 0x0eb9
+ XK_Hangul_Cieuc = 0x0eba
+ XK_Hangul_Khieuq = 0x0ebb
+ XK_Hangul_Tieut = 0x0ebc
+ XK_Hangul_Phieuf = 0x0ebd
+ XK_Hangul_Hieuh = 0x0ebe
+ XK_Hangul_A = 0x0ebf
+ XK_Hangul_AE = 0x0ec0
+ XK_Hangul_YA = 0x0ec1
+ XK_Hangul_YAE = 0x0ec2
+ XK_Hangul_EO = 0x0ec3
+ XK_Hangul_E = 0x0ec4
+ XK_Hangul_YEO = 0x0ec5
+ XK_Hangul_YE = 0x0ec6
+ XK_Hangul_O = 0x0ec7
+ XK_Hangul_WA = 0x0ec8
+ XK_Hangul_WAE = 0x0ec9
+ XK_Hangul_OE = 0x0eca
+ XK_Hangul_YO = 0x0ecb
+ XK_Hangul_U = 0x0ecc
+ XK_Hangul_WEO = 0x0ecd
+ XK_Hangul_WE = 0x0ece
+ XK_Hangul_WI = 0x0ecf
+ XK_Hangul_YU = 0x0ed0
+ XK_Hangul_EU = 0x0ed1
+ XK_Hangul_YI = 0x0ed2
+ XK_Hangul_I = 0x0ed3
+ XK_Hangul_J_Kiyeog = 0x0ed4
+ XK_Hangul_J_SsangKiyeog = 0x0ed5
+ XK_Hangul_J_KiyeogSios = 0x0ed6
+ XK_Hangul_J_Nieun = 0x0ed7
+ XK_Hangul_J_NieunJieuj = 0x0ed8
+ XK_Hangul_J_NieunHieuh = 0x0ed9
+ XK_Hangul_J_Dikeud = 0x0eda
+ XK_Hangul_J_Rieul = 0x0edb
+ XK_Hangul_J_RieulKiyeog = 0x0edc
+ XK_Hangul_J_RieulMieum = 0x0edd
+ XK_Hangul_J_RieulPieub = 0x0ede
+ XK_Hangul_J_RieulSios = 0x0edf
+ XK_Hangul_J_RieulTieut = 0x0ee0
+ XK_Hangul_J_RieulPhieuf = 0x0ee1
+ XK_Hangul_J_RieulHieuh = 0x0ee2
+ XK_Hangul_J_Mieum = 0x0ee3
+ XK_Hangul_J_Pieub = 0x0ee4
+ XK_Hangul_J_PieubSios = 0x0ee5
+ XK_Hangul_J_Sios = 0x0ee6
+ XK_Hangul_J_SsangSios = 0x0ee7
+ XK_Hangul_J_Ieung = 0x0ee8
+ XK_Hangul_J_Jieuj = 0x0ee9
+ XK_Hangul_J_Cieuc = 0x0eea
+ XK_Hangul_J_Khieuq = 0x0eeb
+ XK_Hangul_J_Tieut = 0x0eec
+ XK_Hangul_J_Phieuf = 0x0eed
+ XK_Hangul_J_Hieuh = 0x0eee
+ XK_Hangul_RieulYeorinHieuh = 0x0eef
+ XK_Hangul_SunkyeongeumMieum = 0x0ef0
+ XK_Hangul_SunkyeongeumPieub = 0x0ef1
+ XK_Hangul_PanSios = 0x0ef2
+ XK_Hangul_KkogjiDalrinIeung = 0x0ef3
+ XK_Hangul_SunkyeongeumPhieuf = 0x0ef4
+ XK_Hangul_YeorinHieuh = 0x0ef5
+ XK_Hangul_AraeA = 0x0ef6
+ XK_Hangul_AraeAE = 0x0ef7
+ XK_Hangul_J_PanSios = 0x0ef8
+ XK_Hangul_J_KkogjiDalrinIeung = 0x0ef9
+ XK_Hangul_J_YeorinHieuh = 0x0efa
+ XK_Korean_Won = 0x0eff // (U+20A9 WON SIGN)
+ XK_Armenian_ligature_ew = 0x1000587 // U+0587 ARMENIAN SMALL LIGATURE ECH YIWN
+ XK_Armenian_full_stop = 0x1000589 // U+0589 ARMENIAN FULL STOP
+ XK_Armenian_verjaket = 0x1000589 // U+0589 ARMENIAN FULL STOP
+ XK_Armenian_separation_mark = 0x100055d // U+055D ARMENIAN COMMA
+ XK_Armenian_but = 0x100055d // U+055D ARMENIAN COMMA
+ XK_Armenian_hyphen = 0x100058a // U+058A ARMENIAN HYPHEN
+ XK_Armenian_yentamna = 0x100058a // U+058A ARMENIAN HYPHEN
+ XK_Armenian_exclam = 0x100055c // U+055C ARMENIAN EXCLAMATION MARK
+ XK_Armenian_amanak = 0x100055c // U+055C ARMENIAN EXCLAMATION MARK
+ XK_Armenian_accent = 0x100055b // U+055B ARMENIAN EMPHASIS MARK
+ XK_Armenian_shesht = 0x100055b // U+055B ARMENIAN EMPHASIS MARK
+ XK_Armenian_question = 0x100055e // U+055E ARMENIAN QUESTION MARK
+ XK_Armenian_paruyk = 0x100055e // U+055E ARMENIAN QUESTION MARK
+ XK_Armenian_AYB = 0x1000531 // U+0531 ARMENIAN CAPITAL LETTER AYB
+ XK_Armenian_ayb = 0x1000561 // U+0561 ARMENIAN SMALL LETTER AYB
+ XK_Armenian_BEN = 0x1000532 // U+0532 ARMENIAN CAPITAL LETTER BEN
+ XK_Armenian_ben = 0x1000562 // U+0562 ARMENIAN SMALL LETTER BEN
+ XK_Armenian_GIM = 0x1000533 // U+0533 ARMENIAN CAPITAL LETTER GIM
+ XK_Armenian_gim = 0x1000563 // U+0563 ARMENIAN SMALL LETTER GIM
+ XK_Armenian_DA = 0x1000534 // U+0534 ARMENIAN CAPITAL LETTER DA
+ XK_Armenian_da = 0x1000564 // U+0564 ARMENIAN SMALL LETTER DA
+ XK_Armenian_YECH = 0x1000535 // U+0535 ARMENIAN CAPITAL LETTER ECH
+ XK_Armenian_yech = 0x1000565 // U+0565 ARMENIAN SMALL LETTER ECH
+ XK_Armenian_ZA = 0x1000536 // U+0536 ARMENIAN CAPITAL LETTER ZA
+ XK_Armenian_za = 0x1000566 // U+0566 ARMENIAN SMALL LETTER ZA
+ XK_Armenian_E = 0x1000537 // U+0537 ARMENIAN CAPITAL LETTER EH
+ XK_Armenian_e = 0x1000567 // U+0567 ARMENIAN SMALL LETTER EH
+ XK_Armenian_AT = 0x1000538 // U+0538 ARMENIAN CAPITAL LETTER ET
+ XK_Armenian_at = 0x1000568 // U+0568 ARMENIAN SMALL LETTER ET
+ XK_Armenian_TO = 0x1000539 // U+0539 ARMENIAN CAPITAL LETTER TO
+ XK_Armenian_to = 0x1000569 // U+0569 ARMENIAN SMALL LETTER TO
+ XK_Armenian_ZHE = 0x100053a // U+053A ARMENIAN CAPITAL LETTER ZHE
+ XK_Armenian_zhe = 0x100056a // U+056A ARMENIAN SMALL LETTER ZHE
+ XK_Armenian_INI = 0x100053b // U+053B ARMENIAN CAPITAL LETTER INI
+ XK_Armenian_ini = 0x100056b // U+056B ARMENIAN SMALL LETTER INI
+ XK_Armenian_LYUN = 0x100053c // U+053C ARMENIAN CAPITAL LETTER LIWN
+ XK_Armenian_lyun = 0x100056c // U+056C ARMENIAN SMALL LETTER LIWN
+ XK_Armenian_KHE = 0x100053d // U+053D ARMENIAN CAPITAL LETTER XEH
+ XK_Armenian_khe = 0x100056d // U+056D ARMENIAN SMALL LETTER XEH
+ XK_Armenian_TSA = 0x100053e // U+053E ARMENIAN CAPITAL LETTER CA
+ XK_Armenian_tsa = 0x100056e // U+056E ARMENIAN SMALL LETTER CA
+ XK_Armenian_KEN = 0x100053f // U+053F ARMENIAN CAPITAL LETTER KEN
+ XK_Armenian_ken = 0x100056f // U+056F ARMENIAN SMALL LETTER KEN
+ XK_Armenian_HO = 0x1000540 // U+0540 ARMENIAN CAPITAL LETTER HO
+ XK_Armenian_ho = 0x1000570 // U+0570 ARMENIAN SMALL LETTER HO
+ XK_Armenian_DZA = 0x1000541 // U+0541 ARMENIAN CAPITAL LETTER JA
+ XK_Armenian_dza = 0x1000571 // U+0571 ARMENIAN SMALL LETTER JA
+ XK_Armenian_GHAT = 0x1000542 // U+0542 ARMENIAN CAPITAL LETTER GHAD
+ XK_Armenian_ghat = 0x1000572 // U+0572 ARMENIAN SMALL LETTER GHAD
+ XK_Armenian_TCHE = 0x1000543 // U+0543 ARMENIAN CAPITAL LETTER CHEH
+ XK_Armenian_tche = 0x1000573 // U+0573 ARMENIAN SMALL LETTER CHEH
+ XK_Armenian_MEN = 0x1000544 // U+0544 ARMENIAN CAPITAL LETTER MEN
+ XK_Armenian_men = 0x1000574 // U+0574 ARMENIAN SMALL LETTER MEN
+ XK_Armenian_HI = 0x1000545 // U+0545 ARMENIAN CAPITAL LETTER YI
+ XK_Armenian_hi = 0x1000575 // U+0575 ARMENIAN SMALL LETTER YI
+ XK_Armenian_NU = 0x1000546 // U+0546 ARMENIAN CAPITAL LETTER NOW
+ XK_Armenian_nu = 0x1000576 // U+0576 ARMENIAN SMALL LETTER NOW
+ XK_Armenian_SHA = 0x1000547 // U+0547 ARMENIAN CAPITAL LETTER SHA
+ XK_Armenian_sha = 0x1000577 // U+0577 ARMENIAN SMALL LETTER SHA
+ XK_Armenian_VO = 0x1000548 // U+0548 ARMENIAN CAPITAL LETTER VO
+ XK_Armenian_vo = 0x1000578 // U+0578 ARMENIAN SMALL LETTER VO
+ XK_Armenian_CHA = 0x1000549 // U+0549 ARMENIAN CAPITAL LETTER CHA
+ XK_Armenian_cha = 0x1000579 // U+0579 ARMENIAN SMALL LETTER CHA
+ XK_Armenian_PE = 0x100054a // U+054A ARMENIAN CAPITAL LETTER PEH
+ XK_Armenian_pe = 0x100057a // U+057A ARMENIAN SMALL LETTER PEH
+ XK_Armenian_JE = 0x100054b // U+054B ARMENIAN CAPITAL LETTER JHEH
+ XK_Armenian_je = 0x100057b // U+057B ARMENIAN SMALL LETTER JHEH
+ XK_Armenian_RA = 0x100054c // U+054C ARMENIAN CAPITAL LETTER RA
+ XK_Armenian_ra = 0x100057c // U+057C ARMENIAN SMALL LETTER RA
+ XK_Armenian_SE = 0x100054d // U+054D ARMENIAN CAPITAL LETTER SEH
+ XK_Armenian_se = 0x100057d // U+057D ARMENIAN SMALL LETTER SEH
+ XK_Armenian_VEV = 0x100054e // U+054E ARMENIAN CAPITAL LETTER VEW
+ XK_Armenian_vev = 0x100057e // U+057E ARMENIAN SMALL LETTER VEW
+ XK_Armenian_TYUN = 0x100054f // U+054F ARMENIAN CAPITAL LETTER TIWN
+ XK_Armenian_tyun = 0x100057f // U+057F ARMENIAN SMALL LETTER TIWN
+ XK_Armenian_RE = 0x1000550 // U+0550 ARMENIAN CAPITAL LETTER REH
+ XK_Armenian_re = 0x1000580 // U+0580 ARMENIAN SMALL LETTER REH
+ XK_Armenian_TSO = 0x1000551 // U+0551 ARMENIAN CAPITAL LETTER CO
+ XK_Armenian_tso = 0x1000581 // U+0581 ARMENIAN SMALL LETTER CO
+ XK_Armenian_VYUN = 0x1000552 // U+0552 ARMENIAN CAPITAL LETTER YIWN
+ XK_Armenian_vyun = 0x1000582 // U+0582 ARMENIAN SMALL LETTER YIWN
+ XK_Armenian_PYUR = 0x1000553 // U+0553 ARMENIAN CAPITAL LETTER PIWR
+ XK_Armenian_pyur = 0x1000583 // U+0583 ARMENIAN SMALL LETTER PIWR
+ XK_Armenian_KE = 0x1000554 // U+0554 ARMENIAN CAPITAL LETTER KEH
+ XK_Armenian_ke = 0x1000584 // U+0584 ARMENIAN SMALL LETTER KEH
+ XK_Armenian_O = 0x1000555 // U+0555 ARMENIAN CAPITAL LETTER OH
+ XK_Armenian_o = 0x1000585 // U+0585 ARMENIAN SMALL LETTER OH
+ XK_Armenian_FE = 0x1000556 // U+0556 ARMENIAN CAPITAL LETTER FEH
+ XK_Armenian_fe = 0x1000586 // U+0586 ARMENIAN SMALL LETTER FEH
+ XK_Armenian_apostrophe = 0x100055a // U+055A ARMENIAN APOSTROPHE
+ XK_Georgian_an = 0x10010d0 // U+10D0 GEORGIAN LETTER AN
+ XK_Georgian_ban = 0x10010d1 // U+10D1 GEORGIAN LETTER BAN
+ XK_Georgian_gan = 0x10010d2 // U+10D2 GEORGIAN LETTER GAN
+ XK_Georgian_don = 0x10010d3 // U+10D3 GEORGIAN LETTER DON
+ XK_Georgian_en = 0x10010d4 // U+10D4 GEORGIAN LETTER EN
+ XK_Georgian_vin = 0x10010d5 // U+10D5 GEORGIAN LETTER VIN
+ XK_Georgian_zen = 0x10010d6 // U+10D6 GEORGIAN LETTER ZEN
+ XK_Georgian_tan = 0x10010d7 // U+10D7 GEORGIAN LETTER TAN
+ XK_Georgian_in = 0x10010d8 // U+10D8 GEORGIAN LETTER IN
+ XK_Georgian_kan = 0x10010d9 // U+10D9 GEORGIAN LETTER KAN
+ XK_Georgian_las = 0x10010da // U+10DA GEORGIAN LETTER LAS
+ XK_Georgian_man = 0x10010db // U+10DB GEORGIAN LETTER MAN
+ XK_Georgian_nar = 0x10010dc // U+10DC GEORGIAN LETTER NAR
+ XK_Georgian_on = 0x10010dd // U+10DD GEORGIAN LETTER ON
+ XK_Georgian_par = 0x10010de // U+10DE GEORGIAN LETTER PAR
+ XK_Georgian_zhar = 0x10010df // U+10DF GEORGIAN LETTER ZHAR
+ XK_Georgian_rae = 0x10010e0 // U+10E0 GEORGIAN LETTER RAE
+ XK_Georgian_san = 0x10010e1 // U+10E1 GEORGIAN LETTER SAN
+ XK_Georgian_tar = 0x10010e2 // U+10E2 GEORGIAN LETTER TAR
+ XK_Georgian_un = 0x10010e3 // U+10E3 GEORGIAN LETTER UN
+ XK_Georgian_phar = 0x10010e4 // U+10E4 GEORGIAN LETTER PHAR
+ XK_Georgian_khar = 0x10010e5 // U+10E5 GEORGIAN LETTER KHAR
+ XK_Georgian_ghan = 0x10010e6 // U+10E6 GEORGIAN LETTER GHAN
+ XK_Georgian_qar = 0x10010e7 // U+10E7 GEORGIAN LETTER QAR
+ XK_Georgian_shin = 0x10010e8 // U+10E8 GEORGIAN LETTER SHIN
+ XK_Georgian_chin = 0x10010e9 // U+10E9 GEORGIAN LETTER CHIN
+ XK_Georgian_can = 0x10010ea // U+10EA GEORGIAN LETTER CAN
+ XK_Georgian_jil = 0x10010eb // U+10EB GEORGIAN LETTER JIL
+ XK_Georgian_cil = 0x10010ec // U+10EC GEORGIAN LETTER CIL
+ XK_Georgian_char = 0x10010ed // U+10ED GEORGIAN LETTER CHAR
+ XK_Georgian_xan = 0x10010ee // U+10EE GEORGIAN LETTER XAN
+ XK_Georgian_jhan = 0x10010ef // U+10EF GEORGIAN LETTER JHAN
+ XK_Georgian_hae = 0x10010f0 // U+10F0 GEORGIAN LETTER HAE
+ XK_Georgian_he = 0x10010f1 // U+10F1 GEORGIAN LETTER HE
+ XK_Georgian_hie = 0x10010f2 // U+10F2 GEORGIAN LETTER HIE
+ XK_Georgian_we = 0x10010f3 // U+10F3 GEORGIAN LETTER WE
+ XK_Georgian_har = 0x10010f4 // U+10F4 GEORGIAN LETTER HAR
+ XK_Georgian_hoe = 0x10010f5 // U+10F5 GEORGIAN LETTER HOE
+ XK_Georgian_fi = 0x10010f6 // U+10F6 GEORGIAN LETTER FI
+ XK_Xabovedot = 0x1001e8a // U+1E8A LATIN CAPITAL LETTER X WITH DOT ABOVE
+ XK_Ibreve = 0x100012c // U+012C LATIN CAPITAL LETTER I WITH BREVE
+ XK_Zstroke = 0x10001b5 // U+01B5 LATIN CAPITAL LETTER Z WITH STROKE
+ XK_Gcaron = 0x10001e6 // U+01E6 LATIN CAPITAL LETTER G WITH CARON
+ XK_Ocaron = 0x10001d1 // U+01D2 LATIN CAPITAL LETTER O WITH CARON
+ XK_Obarred = 0x100019f // U+019F LATIN CAPITAL LETTER O WITH MIDDLE TILDE
+ XK_xabovedot = 0x1001e8b // U+1E8B LATIN SMALL LETTER X WITH DOT ABOVE
+ XK_ibreve = 0x100012d // U+012D LATIN SMALL LETTER I WITH BREVE
+ XK_zstroke = 0x10001b6 // U+01B6 LATIN SMALL LETTER Z WITH STROKE
+ XK_gcaron = 0x10001e7 // U+01E7 LATIN SMALL LETTER G WITH CARON
+ XK_ocaron = 0x10001d2 // U+01D2 LATIN SMALL LETTER O WITH CARON
+ XK_obarred = 0x1000275 // U+0275 LATIN SMALL LETTER BARRED O
+ XK_SCHWA = 0x100018f // U+018F LATIN CAPITAL LETTER SCHWA
+ XK_schwa = 0x1000259 // U+0259 LATIN SMALL LETTER SCHWA
+ XK_EZH = 0x10001b7 // U+01B7 LATIN CAPITAL LETTER EZH
+ XK_ezh = 0x1000292 // U+0292 LATIN SMALL LETTER EZH
+ XK_Lbelowdot = 0x1001e36 // U+1E36 LATIN CAPITAL LETTER L WITH DOT BELOW
+ XK_lbelowdot = 0x1001e37 // U+1E37 LATIN SMALL LETTER L WITH DOT BELOW
+ XK_Abelowdot = 0x1001ea0 // U+1EA0 LATIN CAPITAL LETTER A WITH DOT BELOW
+ XK_abelowdot = 0x1001ea1 // U+1EA1 LATIN SMALL LETTER A WITH DOT BELOW
+ XK_Ahook = 0x1001ea2 // U+1EA2 LATIN CAPITAL LETTER A WITH HOOK ABOVE
+ XK_ahook = 0x1001ea3 // U+1EA3 LATIN SMALL LETTER A WITH HOOK ABOVE
+ XK_Acircumflexacute = 0x1001ea4 // U+1EA4 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE
+ XK_acircumflexacute = 0x1001ea5 // U+1EA5 LATIN SMALL LETTER A WITH CIRCUMFLEX AND ACUTE
+ XK_Acircumflexgrave = 0x1001ea6 // U+1EA6 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE
+ XK_acircumflexgrave = 0x1001ea7 // U+1EA7 LATIN SMALL LETTER A WITH CIRCUMFLEX AND GRAVE
+ XK_Acircumflexhook = 0x1001ea8 // U+1EA8 LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_acircumflexhook = 0x1001ea9 // U+1EA9 LATIN SMALL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_Acircumflextilde = 0x1001eaa // U+1EAA LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE
+ XK_acircumflextilde = 0x1001eab // U+1EAB LATIN SMALL LETTER A WITH CIRCUMFLEX AND TILDE
+ XK_Acircumflexbelowdot = 0x1001eac // U+1EAC LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+ XK_acircumflexbelowdot = 0x1001ead // U+1EAD LATIN SMALL LETTER A WITH CIRCUMFLEX AND DOT BELOW
+ XK_Abreveacute = 0x1001eae // U+1EAE LATIN CAPITAL LETTER A WITH BREVE AND ACUTE
+ XK_abreveacute = 0x1001eaf // U+1EAF LATIN SMALL LETTER A WITH BREVE AND ACUTE
+ XK_Abrevegrave = 0x1001eb0 // U+1EB0 LATIN CAPITAL LETTER A WITH BREVE AND GRAVE
+ XK_abrevegrave = 0x1001eb1 // U+1EB1 LATIN SMALL LETTER A WITH BREVE AND GRAVE
+ XK_Abrevehook = 0x1001eb2 // U+1EB2 LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE
+ XK_abrevehook = 0x1001eb3 // U+1EB3 LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE
+ XK_Abrevetilde = 0x1001eb4 // U+1EB4 LATIN CAPITAL LETTER A WITH BREVE AND TILDE
+ XK_abrevetilde = 0x1001eb5 // U+1EB5 LATIN SMALL LETTER A WITH BREVE AND TILDE
+ XK_Abrevebelowdot = 0x1001eb6 // U+1EB6 LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW
+ XK_abrevebelowdot = 0x1001eb7 // U+1EB7 LATIN SMALL LETTER A WITH BREVE AND DOT BELOW
+ XK_Ebelowdot = 0x1001eb8 // U+1EB8 LATIN CAPITAL LETTER E WITH DOT BELOW
+ XK_ebelowdot = 0x1001eb9 // U+1EB9 LATIN SMALL LETTER E WITH DOT BELOW
+ XK_Ehook = 0x1001eba // U+1EBA LATIN CAPITAL LETTER E WITH HOOK ABOVE
+ XK_ehook = 0x1001ebb // U+1EBB LATIN SMALL LETTER E WITH HOOK ABOVE
+ XK_Etilde = 0x1001ebc // U+1EBC LATIN CAPITAL LETTER E WITH TILDE
+ XK_etilde = 0x1001ebd // U+1EBD LATIN SMALL LETTER E WITH TILDE
+ XK_Ecircumflexacute = 0x1001ebe // U+1EBE LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE
+ XK_ecircumflexacute = 0x1001ebf // U+1EBF LATIN SMALL LETTER E WITH CIRCUMFLEX AND ACUTE
+ XK_Ecircumflexgrave = 0x1001ec0 // U+1EC0 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE
+ XK_ecircumflexgrave = 0x1001ec1 // U+1EC1 LATIN SMALL LETTER E WITH CIRCUMFLEX AND GRAVE
+ XK_Ecircumflexhook = 0x1001ec2 // U+1EC2 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_ecircumflexhook = 0x1001ec3 // U+1EC3 LATIN SMALL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_Ecircumflextilde = 0x1001ec4 // U+1EC4 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE
+ XK_ecircumflextilde = 0x1001ec5 // U+1EC5 LATIN SMALL LETTER E WITH CIRCUMFLEX AND TILDE
+ XK_Ecircumflexbelowdot = 0x1001ec6 // U+1EC6 LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+ XK_ecircumflexbelowdot = 0x1001ec7 // U+1EC7 LATIN SMALL LETTER E WITH CIRCUMFLEX AND DOT BELOW
+ XK_Ihook = 0x1001ec8 // U+1EC8 LATIN CAPITAL LETTER I WITH HOOK ABOVE
+ XK_ihook = 0x1001ec9 // U+1EC9 LATIN SMALL LETTER I WITH HOOK ABOVE
+ XK_Ibelowdot = 0x1001eca // U+1ECA LATIN CAPITAL LETTER I WITH DOT BELOW
+ XK_ibelowdot = 0x1001ecb // U+1ECB LATIN SMALL LETTER I WITH DOT BELOW
+ XK_Obelowdot = 0x1001ecc // U+1ECC LATIN CAPITAL LETTER O WITH DOT BELOW
+ XK_obelowdot = 0x1001ecd // U+1ECD LATIN SMALL LETTER O WITH DOT BELOW
+ XK_Ohook = 0x1001ece // U+1ECE LATIN CAPITAL LETTER O WITH HOOK ABOVE
+ XK_ohook = 0x1001ecf // U+1ECF LATIN SMALL LETTER O WITH HOOK ABOVE
+ XK_Ocircumflexacute = 0x1001ed0 // U+1ED0 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE
+ XK_ocircumflexacute = 0x1001ed1 // U+1ED1 LATIN SMALL LETTER O WITH CIRCUMFLEX AND ACUTE
+ XK_Ocircumflexgrave = 0x1001ed2 // U+1ED2 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE
+ XK_ocircumflexgrave = 0x1001ed3 // U+1ED3 LATIN SMALL LETTER O WITH CIRCUMFLEX AND GRAVE
+ XK_Ocircumflexhook = 0x1001ed4 // U+1ED4 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_ocircumflexhook = 0x1001ed5 // U+1ED5 LATIN SMALL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE
+ XK_Ocircumflextilde = 0x1001ed6 // U+1ED6 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE
+ XK_ocircumflextilde = 0x1001ed7 // U+1ED7 LATIN SMALL LETTER O WITH CIRCUMFLEX AND TILDE
+ XK_Ocircumflexbelowdot = 0x1001ed8 // U+1ED8 LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+ XK_ocircumflexbelowdot = 0x1001ed9 // U+1ED9 LATIN SMALL LETTER O WITH CIRCUMFLEX AND DOT BELOW
+ XK_Ohornacute = 0x1001eda // U+1EDA LATIN CAPITAL LETTER O WITH HORN AND ACUTE
+ XK_ohornacute = 0x1001edb // U+1EDB LATIN SMALL LETTER O WITH HORN AND ACUTE
+ XK_Ohorngrave = 0x1001edc // U+1EDC LATIN CAPITAL LETTER O WITH HORN AND GRAVE
+ XK_ohorngrave = 0x1001edd // U+1EDD LATIN SMALL LETTER O WITH HORN AND GRAVE
+ XK_Ohornhook = 0x1001ede // U+1EDE LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE
+ XK_ohornhook = 0x1001edf // U+1EDF LATIN SMALL LETTER O WITH HORN AND HOOK ABOVE
+ XK_Ohorntilde = 0x1001ee0 // U+1EE0 LATIN CAPITAL LETTER O WITH HORN AND TILDE
+ XK_ohorntilde = 0x1001ee1 // U+1EE1 LATIN SMALL LETTER O WITH HORN AND TILDE
+ XK_Ohornbelowdot = 0x1001ee2 // U+1EE2 LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW
+ XK_ohornbelowdot = 0x1001ee3 // U+1EE3 LATIN SMALL LETTER O WITH HORN AND DOT BELOW
+ XK_Ubelowdot = 0x1001ee4 // U+1EE4 LATIN CAPITAL LETTER U WITH DOT BELOW
+ XK_ubelowdot = 0x1001ee5 // U+1EE5 LATIN SMALL LETTER U WITH DOT BELOW
+ XK_Uhook = 0x1001ee6 // U+1EE6 LATIN CAPITAL LETTER U WITH HOOK ABOVE
+ XK_uhook = 0x1001ee7 // U+1EE7 LATIN SMALL LETTER U WITH HOOK ABOVE
+ XK_Uhornacute = 0x1001ee8 // U+1EE8 LATIN CAPITAL LETTER U WITH HORN AND ACUTE
+ XK_uhornacute = 0x1001ee9 // U+1EE9 LATIN SMALL LETTER U WITH HORN AND ACUTE
+ XK_Uhorngrave = 0x1001eea // U+1EEA LATIN CAPITAL LETTER U WITH HORN AND GRAVE
+ XK_uhorngrave = 0x1001eeb // U+1EEB LATIN SMALL LETTER U WITH HORN AND GRAVE
+ XK_Uhornhook = 0x1001eec // U+1EEC LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE
+ XK_uhornhook = 0x1001eed // U+1EED LATIN SMALL LETTER U WITH HORN AND HOOK ABOVE
+ XK_Uhorntilde = 0x1001eee // U+1EEE LATIN CAPITAL LETTER U WITH HORN AND TILDE
+ XK_uhorntilde = 0x1001eef // U+1EEF LATIN SMALL LETTER U WITH HORN AND TILDE
+ XK_Uhornbelowdot = 0x1001ef0 // U+1EF0 LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW
+ XK_uhornbelowdot = 0x1001ef1 // U+1EF1 LATIN SMALL LETTER U WITH HORN AND DOT BELOW
+ XK_Ybelowdot = 0x1001ef4 // U+1EF4 LATIN CAPITAL LETTER Y WITH DOT BELOW
+ XK_ybelowdot = 0x1001ef5 // U+1EF5 LATIN SMALL LETTER Y WITH DOT BELOW
+ XK_Yhook = 0x1001ef6 // U+1EF6 LATIN CAPITAL LETTER Y WITH HOOK ABOVE
+ XK_yhook = 0x1001ef7 // U+1EF7 LATIN SMALL LETTER Y WITH HOOK ABOVE
+ XK_Ytilde = 0x1001ef8 // U+1EF8 LATIN CAPITAL LETTER Y WITH TILDE
+ XK_ytilde = 0x1001ef9 // U+1EF9 LATIN SMALL LETTER Y WITH TILDE
+ XK_Ohorn = 0x10001a0 // U+01A0 LATIN CAPITAL LETTER O WITH HORN
+ XK_ohorn = 0x10001a1 // U+01A1 LATIN SMALL LETTER O WITH HORN
+ XK_Uhorn = 0x10001af // U+01AF LATIN CAPITAL LETTER U WITH HORN
+ XK_uhorn = 0x10001b0 // U+01B0 LATIN SMALL LETTER U WITH HORN
+ XK_EcuSign = 0x10020a0 // U+20A0 EURO-CURRENCY SIGN
+ XK_ColonSign = 0x10020a1 // U+20A1 COLON SIGN
+ XK_CruzeiroSign = 0x10020a2 // U+20A2 CRUZEIRO SIGN
+ XK_FFrancSign = 0x10020a3 // U+20A3 FRENCH FRANC SIGN
+ XK_LiraSign = 0x10020a4 // U+20A4 LIRA SIGN
+ XK_MillSign = 0x10020a5 // U+20A5 MILL SIGN
+ XK_NairaSign = 0x10020a6 // U+20A6 NAIRA SIGN
+ XK_PesetaSign = 0x10020a7 // U+20A7 PESETA SIGN
+ XK_RupeeSign = 0x10020a8 // U+20A8 RUPEE SIGN
+ XK_WonSign = 0x10020a9 // U+20A9 WON SIGN
+ XK_NewSheqelSign = 0x10020aa // U+20AA NEW SHEQEL SIGN
+ XK_DongSign = 0x10020ab // U+20AB DONG SIGN
+ XK_EuroSign = 0x20ac // U+20AC EURO SIGN
+ XK_zerosuperior = 0x1002070 // U+2070 SUPERSCRIPT ZERO
+ XK_foursuperior = 0x1002074 // U+2074 SUPERSCRIPT FOUR
+ XK_fivesuperior = 0x1002075 // U+2075 SUPERSCRIPT FIVE
+ XK_sixsuperior = 0x1002076 // U+2076 SUPERSCRIPT SIX
+ XK_sevensuperior = 0x1002077 // U+2077 SUPERSCRIPT SEVEN
+ XK_eightsuperior = 0x1002078 // U+2078 SUPERSCRIPT EIGHT
+ XK_ninesuperior = 0x1002079 // U+2079 SUPERSCRIPT NINE
+ XK_zerosubscript = 0x1002080 // U+2080 SUBSCRIPT ZERO
+ XK_onesubscript = 0x1002081 // U+2081 SUBSCRIPT ONE
+ XK_twosubscript = 0x1002082 // U+2082 SUBSCRIPT TWO
+ XK_threesubscript = 0x1002083 // U+2083 SUBSCRIPT THREE
+ XK_foursubscript = 0x1002084 // U+2084 SUBSCRIPT FOUR
+ XK_fivesubscript = 0x1002085 // U+2085 SUBSCRIPT FIVE
+ XK_sixsubscript = 0x1002086 // U+2086 SUBSCRIPT SIX
+ XK_sevensubscript = 0x1002087 // U+2087 SUBSCRIPT SEVEN
+ XK_eightsubscript = 0x1002088 // U+2088 SUBSCRIPT EIGHT
+ XK_ninesubscript = 0x1002089 // U+2089 SUBSCRIPT NINE
+ XK_partdifferential = 0x1002202 // U+2202 PARTIAL DIFFERENTIAL
+ XK_emptyset = 0x1002205 // U+2205 NULL SET
+ XK_elementof = 0x1002208 // U+2208 ELEMENT OF
+ XK_notelementof = 0x1002209 // U+2209 NOT AN ELEMENT OF
+ XK_containsas = 0x100220b // U+220B CONTAINS AS MEMBER
+ XK_squareroot = 0x100221a // U+221A SQUARE ROOT
+ XK_cuberoot = 0x100221b // U+221B CUBE ROOT
+ XK_fourthroot = 0x100221c // U+221C FOURTH ROOT
+ XK_dintegral = 0x100222c // U+222C DOUBLE INTEGRAL
+ XK_tintegral = 0x100222d // U+222D TRIPLE INTEGRAL
+ XK_because = 0x1002235 // U+2235 BECAUSE
+ XK_approxeq = 0x1002248 // U+2245 ALMOST EQUAL TO
+ XK_notapproxeq = 0x1002247 // U+2247 NOT ALMOST EQUAL TO
+ XK_notidentical = 0x1002262 // U+2262 NOT IDENTICAL TO
+ XK_stricteq = 0x1002263 // U+2263 STRICTLY EQUIVALENT TO
+ XK_braille_dot_1 = 0xfff1
+ XK_braille_dot_2 = 0xfff2
+ XK_braille_dot_3 = 0xfff3
+ XK_braille_dot_4 = 0xfff4
+ XK_braille_dot_5 = 0xfff5
+ XK_braille_dot_6 = 0xfff6
+ XK_braille_dot_7 = 0xfff7
+ XK_braille_dot_8 = 0xfff8
+ XK_braille_dot_9 = 0xfff9
+ XK_braille_dot_10 = 0xfffa
+ XK_braille_blank = 0x1002800 // U+2800 BRAILLE PATTERN BLANK
+ XK_braille_dots_1 = 0x1002801 // U+2801 BRAILLE PATTERN DOTS-1
+ XK_braille_dots_2 = 0x1002802 // U+2802 BRAILLE PATTERN DOTS-2
+ XK_braille_dots_12 = 0x1002803 // U+2803 BRAILLE PATTERN DOTS-12
+ XK_braille_dots_3 = 0x1002804 // U+2804 BRAILLE PATTERN DOTS-3
+ XK_braille_dots_13 = 0x1002805 // U+2805 BRAILLE PATTERN DOTS-13
+ XK_braille_dots_23 = 0x1002806 // U+2806 BRAILLE PATTERN DOTS-23
+ XK_braille_dots_123 = 0x1002807 // U+2807 BRAILLE PATTERN DOTS-123
+ XK_braille_dots_4 = 0x1002808 // U+2808 BRAILLE PATTERN DOTS-4
+ XK_braille_dots_14 = 0x1002809 // U+2809 BRAILLE PATTERN DOTS-14
+ XK_braille_dots_24 = 0x100280a // U+280a BRAILLE PATTERN DOTS-24
+ XK_braille_dots_124 = 0x100280b // U+280b BRAILLE PATTERN DOTS-124
+ XK_braille_dots_34 = 0x100280c // U+280c BRAILLE PATTERN DOTS-34
+ XK_braille_dots_134 = 0x100280d // U+280d BRAILLE PATTERN DOTS-134
+ XK_braille_dots_234 = 0x100280e // U+280e BRAILLE PATTERN DOTS-234
+ XK_braille_dots_1234 = 0x100280f // U+280f BRAILLE PATTERN DOTS-1234
+ XK_braille_dots_5 = 0x1002810 // U+2810 BRAILLE PATTERN DOTS-5
+ XK_braille_dots_15 = 0x1002811 // U+2811 BRAILLE PATTERN DOTS-15
+ XK_braille_dots_25 = 0x1002812 // U+2812 BRAILLE PATTERN DOTS-25
+ XK_braille_dots_125 = 0x1002813 // U+2813 BRAILLE PATTERN DOTS-125
+ XK_braille_dots_35 = 0x1002814 // U+2814 BRAILLE PATTERN DOTS-35
+ XK_braille_dots_135 = 0x1002815 // U+2815 BRAILLE PATTERN DOTS-135
+ XK_braille_dots_235 = 0x1002816 // U+2816 BRAILLE PATTERN DOTS-235
+ XK_braille_dots_1235 = 0x1002817 // U+2817 BRAILLE PATTERN DOTS-1235
+ XK_braille_dots_45 = 0x1002818 // U+2818 BRAILLE PATTERN DOTS-45
+ XK_braille_dots_145 = 0x1002819 // U+2819 BRAILLE PATTERN DOTS-145
+ XK_braille_dots_245 = 0x100281a // U+281a BRAILLE PATTERN DOTS-245
+ XK_braille_dots_1245 = 0x100281b // U+281b BRAILLE PATTERN DOTS-1245
+ XK_braille_dots_345 = 0x100281c // U+281c BRAILLE PATTERN DOTS-345
+ XK_braille_dots_1345 = 0x100281d // U+281d BRAILLE PATTERN DOTS-1345
+ XK_braille_dots_2345 = 0x100281e // U+281e BRAILLE PATTERN DOTS-2345
+ XK_braille_dots_12345 = 0x100281f // U+281f BRAILLE PATTERN DOTS-12345
+ XK_braille_dots_6 = 0x1002820 // U+2820 BRAILLE PATTERN DOTS-6
+ XK_braille_dots_16 = 0x1002821 // U+2821 BRAILLE PATTERN DOTS-16
+ XK_braille_dots_26 = 0x1002822 // U+2822 BRAILLE PATTERN DOTS-26
+ XK_braille_dots_126 = 0x1002823 // U+2823 BRAILLE PATTERN DOTS-126
+ XK_braille_dots_36 = 0x1002824 // U+2824 BRAILLE PATTERN DOTS-36
+ XK_braille_dots_136 = 0x1002825 // U+2825 BRAILLE PATTERN DOTS-136
+ XK_braille_dots_236 = 0x1002826 // U+2826 BRAILLE PATTERN DOTS-236
+ XK_braille_dots_1236 = 0x1002827 // U+2827 BRAILLE PATTERN DOTS-1236
+ XK_braille_dots_46 = 0x1002828 // U+2828 BRAILLE PATTERN DOTS-46
+ XK_braille_dots_146 = 0x1002829 // U+2829 BRAILLE PATTERN DOTS-146
+ XK_braille_dots_246 = 0x100282a // U+282a BRAILLE PATTERN DOTS-246
+ XK_braille_dots_1246 = 0x100282b // U+282b BRAILLE PATTERN DOTS-1246
+ XK_braille_dots_346 = 0x100282c // U+282c BRAILLE PATTERN DOTS-346
+ XK_braille_dots_1346 = 0x100282d // U+282d BRAILLE PATTERN DOTS-1346
+ XK_braille_dots_2346 = 0x100282e // U+282e BRAILLE PATTERN DOTS-2346
+ XK_braille_dots_12346 = 0x100282f // U+282f BRAILLE PATTERN DOTS-12346
+ XK_braille_dots_56 = 0x1002830 // U+2830 BRAILLE PATTERN DOTS-56
+ XK_braille_dots_156 = 0x1002831 // U+2831 BRAILLE PATTERN DOTS-156
+ XK_braille_dots_256 = 0x1002832 // U+2832 BRAILLE PATTERN DOTS-256
+ XK_braille_dots_1256 = 0x1002833 // U+2833 BRAILLE PATTERN DOTS-1256
+ XK_braille_dots_356 = 0x1002834 // U+2834 BRAILLE PATTERN DOTS-356
+ XK_braille_dots_1356 = 0x1002835 // U+2835 BRAILLE PATTERN DOTS-1356
+ XK_braille_dots_2356 = 0x1002836 // U+2836 BRAILLE PATTERN DOTS-2356
+ XK_braille_dots_12356 = 0x1002837 // U+2837 BRAILLE PATTERN DOTS-12356
+ XK_braille_dots_456 = 0x1002838 // U+2838 BRAILLE PATTERN DOTS-456
+ XK_braille_dots_1456 = 0x1002839 // U+2839 BRAILLE PATTERN DOTS-1456
+ XK_braille_dots_2456 = 0x100283a // U+283a BRAILLE PATTERN DOTS-2456
+ XK_braille_dots_12456 = 0x100283b // U+283b BRAILLE PATTERN DOTS-12456
+ XK_braille_dots_3456 = 0x100283c // U+283c BRAILLE PATTERN DOTS-3456
+ XK_braille_dots_13456 = 0x100283d // U+283d BRAILLE PATTERN DOTS-13456
+ XK_braille_dots_23456 = 0x100283e // U+283e BRAILLE PATTERN DOTS-23456
+ XK_braille_dots_123456 = 0x100283f // U+283f BRAILLE PATTERN DOTS-123456
+ XK_braille_dots_7 = 0x1002840 // U+2840 BRAILLE PATTERN DOTS-7
+ XK_braille_dots_17 = 0x1002841 // U+2841 BRAILLE PATTERN DOTS-17
+ XK_braille_dots_27 = 0x1002842 // U+2842 BRAILLE PATTERN DOTS-27
+ XK_braille_dots_127 = 0x1002843 // U+2843 BRAILLE PATTERN DOTS-127
+ XK_braille_dots_37 = 0x1002844 // U+2844 BRAILLE PATTERN DOTS-37
+ XK_braille_dots_137 = 0x1002845 // U+2845 BRAILLE PATTERN DOTS-137
+ XK_braille_dots_237 = 0x1002846 // U+2846 BRAILLE PATTERN DOTS-237
+ XK_braille_dots_1237 = 0x1002847 // U+2847 BRAILLE PATTERN DOTS-1237
+ XK_braille_dots_47 = 0x1002848 // U+2848 BRAILLE PATTERN DOTS-47
+ XK_braille_dots_147 = 0x1002849 // U+2849 BRAILLE PATTERN DOTS-147
+ XK_braille_dots_247 = 0x100284a // U+284a BRAILLE PATTERN DOTS-247
+ XK_braille_dots_1247 = 0x100284b // U+284b BRAILLE PATTERN DOTS-1247
+ XK_braille_dots_347 = 0x100284c // U+284c BRAILLE PATTERN DOTS-347
+ XK_braille_dots_1347 = 0x100284d // U+284d BRAILLE PATTERN DOTS-1347
+ XK_braille_dots_2347 = 0x100284e // U+284e BRAILLE PATTERN DOTS-2347
+ XK_braille_dots_12347 = 0x100284f // U+284f BRAILLE PATTERN DOTS-12347
+ XK_braille_dots_57 = 0x1002850 // U+2850 BRAILLE PATTERN DOTS-57
+ XK_braille_dots_157 = 0x1002851 // U+2851 BRAILLE PATTERN DOTS-157
+ XK_braille_dots_257 = 0x1002852 // U+2852 BRAILLE PATTERN DOTS-257
+ XK_braille_dots_1257 = 0x1002853 // U+2853 BRAILLE PATTERN DOTS-1257
+ XK_braille_dots_357 = 0x1002854 // U+2854 BRAILLE PATTERN DOTS-357
+ XK_braille_dots_1357 = 0x1002855 // U+2855 BRAILLE PATTERN DOTS-1357
+ XK_braille_dots_2357 = 0x1002856 // U+2856 BRAILLE PATTERN DOTS-2357
+ XK_braille_dots_12357 = 0x1002857 // U+2857 BRAILLE PATTERN DOTS-12357
+ XK_braille_dots_457 = 0x1002858 // U+2858 BRAILLE PATTERN DOTS-457
+ XK_braille_dots_1457 = 0x1002859 // U+2859 BRAILLE PATTERN DOTS-1457
+ XK_braille_dots_2457 = 0x100285a // U+285a BRAILLE PATTERN DOTS-2457
+ XK_braille_dots_12457 = 0x100285b // U+285b BRAILLE PATTERN DOTS-12457
+ XK_braille_dots_3457 = 0x100285c // U+285c BRAILLE PATTERN DOTS-3457
+ XK_braille_dots_13457 = 0x100285d // U+285d BRAILLE PATTERN DOTS-13457
+ XK_braille_dots_23457 = 0x100285e // U+285e BRAILLE PATTERN DOTS-23457
+ XK_braille_dots_123457 = 0x100285f // U+285f BRAILLE PATTERN DOTS-123457
+ XK_braille_dots_67 = 0x1002860 // U+2860 BRAILLE PATTERN DOTS-67
+ XK_braille_dots_167 = 0x1002861 // U+2861 BRAILLE PATTERN DOTS-167
+ XK_braille_dots_267 = 0x1002862 // U+2862 BRAILLE PATTERN DOTS-267
+ XK_braille_dots_1267 = 0x1002863 // U+2863 BRAILLE PATTERN DOTS-1267
+ XK_braille_dots_367 = 0x1002864 // U+2864 BRAILLE PATTERN DOTS-367
+ XK_braille_dots_1367 = 0x1002865 // U+2865 BRAILLE PATTERN DOTS-1367
+ XK_braille_dots_2367 = 0x1002866 // U+2866 BRAILLE PATTERN DOTS-2367
+ XK_braille_dots_12367 = 0x1002867 // U+2867 BRAILLE PATTERN DOTS-12367
+ XK_braille_dots_467 = 0x1002868 // U+2868 BRAILLE PATTERN DOTS-467
+ XK_braille_dots_1467 = 0x1002869 // U+2869 BRAILLE PATTERN DOTS-1467
+ XK_braille_dots_2467 = 0x100286a // U+286a BRAILLE PATTERN DOTS-2467
+ XK_braille_dots_12467 = 0x100286b // U+286b BRAILLE PATTERN DOTS-12467
+ XK_braille_dots_3467 = 0x100286c // U+286c BRAILLE PATTERN DOTS-3467
+ XK_braille_dots_13467 = 0x100286d // U+286d BRAILLE PATTERN DOTS-13467
+ XK_braille_dots_23467 = 0x100286e // U+286e BRAILLE PATTERN DOTS-23467
+ XK_braille_dots_123467 = 0x100286f // U+286f BRAILLE PATTERN DOTS-123467
+ XK_braille_dots_567 = 0x1002870 // U+2870 BRAILLE PATTERN DOTS-567
+ XK_braille_dots_1567 = 0x1002871 // U+2871 BRAILLE PATTERN DOTS-1567
+ XK_braille_dots_2567 = 0x1002872 // U+2872 BRAILLE PATTERN DOTS-2567
+ XK_braille_dots_12567 = 0x1002873 // U+2873 BRAILLE PATTERN DOTS-12567
+ XK_braille_dots_3567 = 0x1002874 // U+2874 BRAILLE PATTERN DOTS-3567
+ XK_braille_dots_13567 = 0x1002875 // U+2875 BRAILLE PATTERN DOTS-13567
+ XK_braille_dots_23567 = 0x1002876 // U+2876 BRAILLE PATTERN DOTS-23567
+ XK_braille_dots_123567 = 0x1002877 // U+2877 BRAILLE PATTERN DOTS-123567
+ XK_braille_dots_4567 = 0x1002878 // U+2878 BRAILLE PATTERN DOTS-4567
+ XK_braille_dots_14567 = 0x1002879 // U+2879 BRAILLE PATTERN DOTS-14567
+ XK_braille_dots_24567 = 0x100287a // U+287a BRAILLE PATTERN DOTS-24567
+ XK_braille_dots_124567 = 0x100287b // U+287b BRAILLE PATTERN DOTS-124567
+ XK_braille_dots_34567 = 0x100287c // U+287c BRAILLE PATTERN DOTS-34567
+ XK_braille_dots_134567 = 0x100287d // U+287d BRAILLE PATTERN DOTS-134567
+ XK_braille_dots_234567 = 0x100287e // U+287e BRAILLE PATTERN DOTS-234567
+ XK_braille_dots_1234567 = 0x100287f // U+287f BRAILLE PATTERN DOTS-1234567
+ XK_braille_dots_8 = 0x1002880 // U+2880 BRAILLE PATTERN DOTS-8
+ XK_braille_dots_18 = 0x1002881 // U+2881 BRAILLE PATTERN DOTS-18
+ XK_braille_dots_28 = 0x1002882 // U+2882 BRAILLE PATTERN DOTS-28
+ XK_braille_dots_128 = 0x1002883 // U+2883 BRAILLE PATTERN DOTS-128
+ XK_braille_dots_38 = 0x1002884 // U+2884 BRAILLE PATTERN DOTS-38
+ XK_braille_dots_138 = 0x1002885 // U+2885 BRAILLE PATTERN DOTS-138
+ XK_braille_dots_238 = 0x1002886 // U+2886 BRAILLE PATTERN DOTS-238
+ XK_braille_dots_1238 = 0x1002887 // U+2887 BRAILLE PATTERN DOTS-1238
+ XK_braille_dots_48 = 0x1002888 // U+2888 BRAILLE PATTERN DOTS-48
+ XK_braille_dots_148 = 0x1002889 // U+2889 BRAILLE PATTERN DOTS-148
+ XK_braille_dots_248 = 0x100288a // U+288a BRAILLE PATTERN DOTS-248
+ XK_braille_dots_1248 = 0x100288b // U+288b BRAILLE PATTERN DOTS-1248
+ XK_braille_dots_348 = 0x100288c // U+288c BRAILLE PATTERN DOTS-348
+ XK_braille_dots_1348 = 0x100288d // U+288d BRAILLE PATTERN DOTS-1348
+ XK_braille_dots_2348 = 0x100288e // U+288e BRAILLE PATTERN DOTS-2348
+ XK_braille_dots_12348 = 0x100288f // U+288f BRAILLE PATTERN DOTS-12348
+ XK_braille_dots_58 = 0x1002890 // U+2890 BRAILLE PATTERN DOTS-58
+ XK_braille_dots_158 = 0x1002891 // U+2891 BRAILLE PATTERN DOTS-158
+ XK_braille_dots_258 = 0x1002892 // U+2892 BRAILLE PATTERN DOTS-258
+ XK_braille_dots_1258 = 0x1002893 // U+2893 BRAILLE PATTERN DOTS-1258
+ XK_braille_dots_358 = 0x1002894 // U+2894 BRAILLE PATTERN DOTS-358
+ XK_braille_dots_1358 = 0x1002895 // U+2895 BRAILLE PATTERN DOTS-1358
+ XK_braille_dots_2358 = 0x1002896 // U+2896 BRAILLE PATTERN DOTS-2358
+ XK_braille_dots_12358 = 0x1002897 // U+2897 BRAILLE PATTERN DOTS-12358
+ XK_braille_dots_458 = 0x1002898 // U+2898 BRAILLE PATTERN DOTS-458
+ XK_braille_dots_1458 = 0x1002899 // U+2899 BRAILLE PATTERN DOTS-1458
+ XK_braille_dots_2458 = 0x100289a // U+289a BRAILLE PATTERN DOTS-2458
+ XK_braille_dots_12458 = 0x100289b // U+289b BRAILLE PATTERN DOTS-12458
+ XK_braille_dots_3458 = 0x100289c // U+289c BRAILLE PATTERN DOTS-3458
+ XK_braille_dots_13458 = 0x100289d // U+289d BRAILLE PATTERN DOTS-13458
+ XK_braille_dots_23458 = 0x100289e // U+289e BRAILLE PATTERN DOTS-23458
+ XK_braille_dots_123458 = 0x100289f // U+289f BRAILLE PATTERN DOTS-123458
+ XK_braille_dots_68 = 0x10028a0 // U+28a0 BRAILLE PATTERN DOTS-68
+ XK_braille_dots_168 = 0x10028a1 // U+28a1 BRAILLE PATTERN DOTS-168
+ XK_braille_dots_268 = 0x10028a2 // U+28a2 BRAILLE PATTERN DOTS-268
+ XK_braille_dots_1268 = 0x10028a3 // U+28a3 BRAILLE PATTERN DOTS-1268
+ XK_braille_dots_368 = 0x10028a4 // U+28a4 BRAILLE PATTERN DOTS-368
+ XK_braille_dots_1368 = 0x10028a5 // U+28a5 BRAILLE PATTERN DOTS-1368
+ XK_braille_dots_2368 = 0x10028a6 // U+28a6 BRAILLE PATTERN DOTS-2368
+ XK_braille_dots_12368 = 0x10028a7 // U+28a7 BRAILLE PATTERN DOTS-12368
+ XK_braille_dots_468 = 0x10028a8 // U+28a8 BRAILLE PATTERN DOTS-468
+ XK_braille_dots_1468 = 0x10028a9 // U+28a9 BRAILLE PATTERN DOTS-1468
+ XK_braille_dots_2468 = 0x10028aa // U+28aa BRAILLE PATTERN DOTS-2468
+ XK_braille_dots_12468 = 0x10028ab // U+28ab BRAILLE PATTERN DOTS-12468
+ XK_braille_dots_3468 = 0x10028ac // U+28ac BRAILLE PATTERN DOTS-3468
+ XK_braille_dots_13468 = 0x10028ad // U+28ad BRAILLE PATTERN DOTS-13468
+ XK_braille_dots_23468 = 0x10028ae // U+28ae BRAILLE PATTERN DOTS-23468
+ XK_braille_dots_123468 = 0x10028af // U+28af BRAILLE PATTERN DOTS-123468
+ XK_braille_dots_568 = 0x10028b0 // U+28b0 BRAILLE PATTERN DOTS-568
+ XK_braille_dots_1568 = 0x10028b1 // U+28b1 BRAILLE PATTERN DOTS-1568
+ XK_braille_dots_2568 = 0x10028b2 // U+28b2 BRAILLE PATTERN DOTS-2568
+ XK_braille_dots_12568 = 0x10028b3 // U+28b3 BRAILLE PATTERN DOTS-12568
+ XK_braille_dots_3568 = 0x10028b4 // U+28b4 BRAILLE PATTERN DOTS-3568
+ XK_braille_dots_13568 = 0x10028b5 // U+28b5 BRAILLE PATTERN DOTS-13568
+ XK_braille_dots_23568 = 0x10028b6 // U+28b6 BRAILLE PATTERN DOTS-23568
+ XK_braille_dots_123568 = 0x10028b7 // U+28b7 BRAILLE PATTERN DOTS-123568
+ XK_braille_dots_4568 = 0x10028b8 // U+28b8 BRAILLE PATTERN DOTS-4568
+ XK_braille_dots_14568 = 0x10028b9 // U+28b9 BRAILLE PATTERN DOTS-14568
+ XK_braille_dots_24568 = 0x10028ba // U+28ba BRAILLE PATTERN DOTS-24568
+ XK_braille_dots_124568 = 0x10028bb // U+28bb BRAILLE PATTERN DOTS-124568
+ XK_braille_dots_34568 = 0x10028bc // U+28bc BRAILLE PATTERN DOTS-34568
+ XK_braille_dots_134568 = 0x10028bd // U+28bd BRAILLE PATTERN DOTS-134568
+ XK_braille_dots_234568 = 0x10028be // U+28be BRAILLE PATTERN DOTS-234568
+ XK_braille_dots_1234568 = 0x10028bf // U+28bf BRAILLE PATTERN DOTS-1234568
+ XK_braille_dots_78 = 0x10028c0 // U+28c0 BRAILLE PATTERN DOTS-78
+ XK_braille_dots_178 = 0x10028c1 // U+28c1 BRAILLE PATTERN DOTS-178
+ XK_braille_dots_278 = 0x10028c2 // U+28c2 BRAILLE PATTERN DOTS-278
+ XK_braille_dots_1278 = 0x10028c3 // U+28c3 BRAILLE PATTERN DOTS-1278
+ XK_braille_dots_378 = 0x10028c4 // U+28c4 BRAILLE PATTERN DOTS-378
+ XK_braille_dots_1378 = 0x10028c5 // U+28c5 BRAILLE PATTERN DOTS-1378
+ XK_braille_dots_2378 = 0x10028c6 // U+28c6 BRAILLE PATTERN DOTS-2378
+ XK_braille_dots_12378 = 0x10028c7 // U+28c7 BRAILLE PATTERN DOTS-12378
+ XK_braille_dots_478 = 0x10028c8 // U+28c8 BRAILLE PATTERN DOTS-478
+ XK_braille_dots_1478 = 0x10028c9 // U+28c9 BRAILLE PATTERN DOTS-1478
+ XK_braille_dots_2478 = 0x10028ca // U+28ca BRAILLE PATTERN DOTS-2478
+ XK_braille_dots_12478 = 0x10028cb // U+28cb BRAILLE PATTERN DOTS-12478
+ XK_braille_dots_3478 = 0x10028cc // U+28cc BRAILLE PATTERN DOTS-3478
+ XK_braille_dots_13478 = 0x10028cd // U+28cd BRAILLE PATTERN DOTS-13478
+ XK_braille_dots_23478 = 0x10028ce // U+28ce BRAILLE PATTERN DOTS-23478
+ XK_braille_dots_123478 = 0x10028cf // U+28cf BRAILLE PATTERN DOTS-123478
+ XK_braille_dots_578 = 0x10028d0 // U+28d0 BRAILLE PATTERN DOTS-578
+ XK_braille_dots_1578 = 0x10028d1 // U+28d1 BRAILLE PATTERN DOTS-1578
+ XK_braille_dots_2578 = 0x10028d2 // U+28d2 BRAILLE PATTERN DOTS-2578
+ XK_braille_dots_12578 = 0x10028d3 // U+28d3 BRAILLE PATTERN DOTS-12578
+ XK_braille_dots_3578 = 0x10028d4 // U+28d4 BRAILLE PATTERN DOTS-3578
+ XK_braille_dots_13578 = 0x10028d5 // U+28d5 BRAILLE PATTERN DOTS-13578
+ XK_braille_dots_23578 = 0x10028d6 // U+28d6 BRAILLE PATTERN DOTS-23578
+ XK_braille_dots_123578 = 0x10028d7 // U+28d7 BRAILLE PATTERN DOTS-123578
+ XK_braille_dots_4578 = 0x10028d8 // U+28d8 BRAILLE PATTERN DOTS-4578
+ XK_braille_dots_14578 = 0x10028d9 // U+28d9 BRAILLE PATTERN DOTS-14578
+ XK_braille_dots_24578 = 0x10028da // U+28da BRAILLE PATTERN DOTS-24578
+ XK_braille_dots_124578 = 0x10028db // U+28db BRAILLE PATTERN DOTS-124578
+ XK_braille_dots_34578 = 0x10028dc // U+28dc BRAILLE PATTERN DOTS-34578
+ XK_braille_dots_134578 = 0x10028dd // U+28dd BRAILLE PATTERN DOTS-134578
+ XK_braille_dots_234578 = 0x10028de // U+28de BRAILLE PATTERN DOTS-234578
+ XK_braille_dots_1234578 = 0x10028df // U+28df BRAILLE PATTERN DOTS-1234578
+ XK_braille_dots_678 = 0x10028e0 // U+28e0 BRAILLE PATTERN DOTS-678
+ XK_braille_dots_1678 = 0x10028e1 // U+28e1 BRAILLE PATTERN DOTS-1678
+ XK_braille_dots_2678 = 0x10028e2 // U+28e2 BRAILLE PATTERN DOTS-2678
+ XK_braille_dots_12678 = 0x10028e3 // U+28e3 BRAILLE PATTERN DOTS-12678
+ XK_braille_dots_3678 = 0x10028e4 // U+28e4 BRAILLE PATTERN DOTS-3678
+ XK_braille_dots_13678 = 0x10028e5 // U+28e5 BRAILLE PATTERN DOTS-13678
+ XK_braille_dots_23678 = 0x10028e6 // U+28e6 BRAILLE PATTERN DOTS-23678
+ XK_braille_dots_123678 = 0x10028e7 // U+28e7 BRAILLE PATTERN DOTS-123678
+ XK_braille_dots_4678 = 0x10028e8 // U+28e8 BRAILLE PATTERN DOTS-4678
+ XK_braille_dots_14678 = 0x10028e9 // U+28e9 BRAILLE PATTERN DOTS-14678
+ XK_braille_dots_24678 = 0x10028ea // U+28ea BRAILLE PATTERN DOTS-24678
+ XK_braille_dots_124678 = 0x10028eb // U+28eb BRAILLE PATTERN DOTS-124678
+ XK_braille_dots_34678 = 0x10028ec // U+28ec BRAILLE PATTERN DOTS-34678
+ XK_braille_dots_134678 = 0x10028ed // U+28ed BRAILLE PATTERN DOTS-134678
+ XK_braille_dots_234678 = 0x10028ee // U+28ee BRAILLE PATTERN DOTS-234678
+ XK_braille_dots_1234678 = 0x10028ef // U+28ef BRAILLE PATTERN DOTS-1234678
+ XK_braille_dots_5678 = 0x10028f0 // U+28f0 BRAILLE PATTERN DOTS-5678
+ XK_braille_dots_15678 = 0x10028f1 // U+28f1 BRAILLE PATTERN DOTS-15678
+ XK_braille_dots_25678 = 0x10028f2 // U+28f2 BRAILLE PATTERN DOTS-25678
+ XK_braille_dots_125678 = 0x10028f3 // U+28f3 BRAILLE PATTERN DOTS-125678
+ XK_braille_dots_35678 = 0x10028f4 // U+28f4 BRAILLE PATTERN DOTS-35678
+ XK_braille_dots_135678 = 0x10028f5 // U+28f5 BRAILLE PATTERN DOTS-135678
+ XK_braille_dots_235678 = 0x10028f6 // U+28f6 BRAILLE PATTERN DOTS-235678
+ XK_braille_dots_1235678 = 0x10028f7 // U+28f7 BRAILLE PATTERN DOTS-1235678
+ XK_braille_dots_45678 = 0x10028f8 // U+28f8 BRAILLE PATTERN DOTS-45678
+ XK_braille_dots_145678 = 0x10028f9 // U+28f9 BRAILLE PATTERN DOTS-145678
+ XK_braille_dots_245678 = 0x10028fa // U+28fa BRAILLE PATTERN DOTS-245678
+ XK_braille_dots_1245678 = 0x10028fb // U+28fb BRAILLE PATTERN DOTS-1245678
+ XK_braille_dots_345678 = 0x10028fc // U+28fc BRAILLE PATTERN DOTS-345678
+ XK_braille_dots_1345678 = 0x10028fd // U+28fd BRAILLE PATTERN DOTS-1345678
+ XK_braille_dots_2345678 = 0x10028fe // U+28fe BRAILLE PATTERN DOTS-2345678
+ XK_braille_dots_12345678 = 0x10028ff // U+28ff BRAILLE PATTERN DOTS-12345678
+ XK_Sinh_ng = 0x1000d82 // U+0D82 SINHALA ANUSVARAYA
+ XK_Sinh_h2 = 0x1000d83 // U+0D83 SINHALA VISARGAYA
+ XK_Sinh_a = 0x1000d85 // U+0D85 SINHALA AYANNA
+ XK_Sinh_aa = 0x1000d86 // U+0D86 SINHALA AAYANNA
+ XK_Sinh_ae = 0x1000d87 // U+0D87 SINHALA AEYANNA
+ XK_Sinh_aee = 0x1000d88 // U+0D88 SINHALA AEEYANNA
+ XK_Sinh_i = 0x1000d89 // U+0D89 SINHALA IYANNA
+ XK_Sinh_ii = 0x1000d8a // U+0D8A SINHALA IIYANNA
+ XK_Sinh_u = 0x1000d8b // U+0D8B SINHALA UYANNA
+ XK_Sinh_uu = 0x1000d8c // U+0D8C SINHALA UUYANNA
+ XK_Sinh_ri = 0x1000d8d // U+0D8D SINHALA IRUYANNA
+ XK_Sinh_rii = 0x1000d8e // U+0D8E SINHALA IRUUYANNA
+ XK_Sinh_lu = 0x1000d8f // U+0D8F SINHALA ILUYANNA
+ XK_Sinh_luu = 0x1000d90 // U+0D90 SINHALA ILUUYANNA
+ XK_Sinh_e = 0x1000d91 // U+0D91 SINHALA EYANNA
+ XK_Sinh_ee = 0x1000d92 // U+0D92 SINHALA EEYANNA
+ XK_Sinh_ai = 0x1000d93 // U+0D93 SINHALA AIYANNA
+ XK_Sinh_o = 0x1000d94 // U+0D94 SINHALA OYANNA
+ XK_Sinh_oo = 0x1000d95 // U+0D95 SINHALA OOYANNA
+ XK_Sinh_au = 0x1000d96 // U+0D96 SINHALA AUYANNA
+ XK_Sinh_ka = 0x1000d9a // U+0D9A SINHALA KAYANNA
+ XK_Sinh_kha = 0x1000d9b // U+0D9B SINHALA MAHA. KAYANNA
+ XK_Sinh_ga = 0x1000d9c // U+0D9C SINHALA GAYANNA
+ XK_Sinh_gha = 0x1000d9d // U+0D9D SINHALA MAHA. GAYANNA
+ XK_Sinh_ng2 = 0x1000d9e // U+0D9E SINHALA KANTAJA NAASIKYAYA
+ XK_Sinh_nga = 0x1000d9f // U+0D9F SINHALA SANYAKA GAYANNA
+ XK_Sinh_ca = 0x1000da0 // U+0DA0 SINHALA CAYANNA
+ XK_Sinh_cha = 0x1000da1 // U+0DA1 SINHALA MAHA. CAYANNA
+ XK_Sinh_ja = 0x1000da2 // U+0DA2 SINHALA JAYANNA
+ XK_Sinh_jha = 0x1000da3 // U+0DA3 SINHALA MAHA. JAYANNA
+ XK_Sinh_nya = 0x1000da4 // U+0DA4 SINHALA TAALUJA NAASIKYAYA
+ XK_Sinh_jnya = 0x1000da5 // U+0DA5 SINHALA TAALUJA SANYOOGA NAASIKYAYA
+ XK_Sinh_nja = 0x1000da6 // U+0DA6 SINHALA SANYAKA JAYANNA
+ XK_Sinh_tta = 0x1000da7 // U+0DA7 SINHALA TTAYANNA
+ XK_Sinh_ttha = 0x1000da8 // U+0DA8 SINHALA MAHA. TTAYANNA
+ XK_Sinh_dda = 0x1000da9 // U+0DA9 SINHALA DDAYANNA
+ XK_Sinh_ddha = 0x1000daa // U+0DAA SINHALA MAHA. DDAYANNA
+ XK_Sinh_nna = 0x1000dab // U+0DAB SINHALA MUURDHAJA NAYANNA
+ XK_Sinh_ndda = 0x1000dac // U+0DAC SINHALA SANYAKA DDAYANNA
+ XK_Sinh_tha = 0x1000dad // U+0DAD SINHALA TAYANNA
+ XK_Sinh_thha = 0x1000dae // U+0DAE SINHALA MAHA. TAYANNA
+ XK_Sinh_dha = 0x1000daf // U+0DAF SINHALA DAYANNA
+ XK_Sinh_dhha = 0x1000db0 // U+0DB0 SINHALA MAHA. DAYANNA
+ XK_Sinh_na = 0x1000db1 // U+0DB1 SINHALA DANTAJA NAYANNA
+ XK_Sinh_ndha = 0x1000db3 // U+0DB3 SINHALA SANYAKA DAYANNA
+ XK_Sinh_pa = 0x1000db4 // U+0DB4 SINHALA PAYANNA
+ XK_Sinh_pha = 0x1000db5 // U+0DB5 SINHALA MAHA. PAYANNA
+ XK_Sinh_ba = 0x1000db6 // U+0DB6 SINHALA BAYANNA
+ XK_Sinh_bha = 0x1000db7 // U+0DB7 SINHALA MAHA. BAYANNA
+ XK_Sinh_ma = 0x1000db8 // U+0DB8 SINHALA MAYANNA
+ XK_Sinh_mba = 0x1000db9 // U+0DB9 SINHALA AMBA BAYANNA
+ XK_Sinh_ya = 0x1000dba // U+0DBA SINHALA YAYANNA
+ XK_Sinh_ra = 0x1000dbb // U+0DBB SINHALA RAYANNA
+ XK_Sinh_la = 0x1000dbd // U+0DBD SINHALA DANTAJA LAYANNA
+ XK_Sinh_va = 0x1000dc0 // U+0DC0 SINHALA VAYANNA
+ XK_Sinh_sha = 0x1000dc1 // U+0DC1 SINHALA TAALUJA SAYANNA
+ XK_Sinh_ssha = 0x1000dc2 // U+0DC2 SINHALA MUURDHAJA SAYANNA
+ XK_Sinh_sa = 0x1000dc3 // U+0DC3 SINHALA DANTAJA SAYANNA
+ XK_Sinh_ha = 0x1000dc4 // U+0DC4 SINHALA HAYANNA
+ XK_Sinh_lla = 0x1000dc5 // U+0DC5 SINHALA MUURDHAJA LAYANNA
+ XK_Sinh_fa = 0x1000dc6 // U+0DC6 SINHALA FAYANNA
+ XK_Sinh_al = 0x1000dca // U+0DCA SINHALA AL-LAKUNA
+ XK_Sinh_aa2 = 0x1000dcf // U+0DCF SINHALA AELA-PILLA
+ XK_Sinh_ae2 = 0x1000dd0 // U+0DD0 SINHALA AEDA-PILLA
+ XK_Sinh_aee2 = 0x1000dd1 // U+0DD1 SINHALA DIGA AEDA-PILLA
+ XK_Sinh_i2 = 0x1000dd2 // U+0DD2 SINHALA IS-PILLA
+ XK_Sinh_ii2 = 0x1000dd3 // U+0DD3 SINHALA DIGA IS-PILLA
+ XK_Sinh_u2 = 0x1000dd4 // U+0DD4 SINHALA PAA-PILLA
+ XK_Sinh_uu2 = 0x1000dd6 // U+0DD6 SINHALA DIGA PAA-PILLA
+ XK_Sinh_ru2 = 0x1000dd8 // U+0DD8 SINHALA GAETTA-PILLA
+ XK_Sinh_e2 = 0x1000dd9 // U+0DD9 SINHALA KOMBUVA
+ XK_Sinh_ee2 = 0x1000dda // U+0DDA SINHALA DIGA KOMBUVA
+ XK_Sinh_ai2 = 0x1000ddb // U+0DDB SINHALA KOMBU DEKA
+ XK_Sinh_o2 = 0x1000ddc // U+0DDC SINHALA KOMBUVA HAA AELA-PILLA
+ XK_Sinh_oo2 = 0x1000ddd // U+0DDD SINHALA KOMBUVA HAA DIGA AELA-PILLA
+ XK_Sinh_au2 = 0x1000dde // U+0DDE SINHALA KOMBUVA HAA GAYANUKITTA
+ XK_Sinh_lu2 = 0x1000ddf // U+0DDF SINHALA GAYANUKITTA
+ XK_Sinh_ruu2 = 0x1000df2 // U+0DF2 SINHALA DIGA GAETTA-PILLA
+ XK_Sinh_luu2 = 0x1000df3 // U+0DF3 SINHALA DIGA GAYANUKITTA
+ XK_Sinh_kunddaliya = 0x1000df4 // U+0DF4 SINHALA KUNDDALIYA
+ XF86XK_ModeLock = 0x1008ff01 // Mode Switch Lock
+ XF86XK_MonBrightnessUp = 0x1008ff02 // Monitor/panel brightness
+ XF86XK_MonBrightnessDown = 0x1008ff03 // Monitor/panel brightness
+ XF86XK_KbdLightOnOff = 0x1008ff04 // Keyboards may be lit
+ XF86XK_KbdBrightnessUp = 0x1008ff05 // Keyboards may be lit
+ XF86XK_KbdBrightnessDown = 0x1008ff06 // Keyboards may be lit
+ XF86XK_Standby = 0x1008ff10 // System into standby mode
+ XF86XK_AudioLowerVolume = 0x1008ff11 // Volume control down
+ XF86XK_AudioMute = 0x1008ff12 // Mute sound from the system
+ XF86XK_AudioRaiseVolume = 0x1008ff13 // Volume control up
+ XF86XK_AudioPlay = 0x1008ff14 // Start playing of audio >
+ XF86XK_AudioStop = 0x1008ff15 // Stop playing audio
+ XF86XK_AudioPrev = 0x1008ff16 // Previous track
+ XF86XK_AudioNext = 0x1008ff17 // Next track
+ XF86XK_HomePage = 0x1008ff18 // Display user's home page
+ XF86XK_Mail = 0x1008ff19 // Invoke user's mail program
+ XF86XK_Start = 0x1008ff1a // Start application
+ XF86XK_Search = 0x1008ff1b // Search
+ XF86XK_AudioRecord = 0x1008ff1c // Record audio application
+ XF86XK_Calculator = 0x1008ff1d // Invoke calculator program
+ XF86XK_Memo = 0x1008ff1e // Invoke Memo taking program
+ XF86XK_ToDoList = 0x1008ff1f // Invoke To Do List program
+ XF86XK_Calendar = 0x1008ff20 // Invoke Calendar program
+ XF86XK_PowerDown = 0x1008ff21 // Deep sleep the system
+ XF86XK_ContrastAdjust = 0x1008ff22 // Adjust screen contrast
+ XF86XK_RockerUp = 0x1008ff23 // Rocker switches exist up
+ XF86XK_RockerDown = 0x1008ff24 // and down
+ XF86XK_RockerEnter = 0x1008ff25 // and let you press them
+ XF86XK_Back = 0x1008ff26 // Like back on a browser
+ XF86XK_Forward = 0x1008ff27 // Like forward on a browser
+ XF86XK_Stop = 0x1008ff28 // Stop current operation
+ XF86XK_Refresh = 0x1008ff29 // Refresh the page
+ XF86XK_PowerOff = 0x1008ff2a // Power off system entirely
+ XF86XK_WakeUp = 0x1008ff2b // Wake up system from sleep
+ XF86XK_Eject = 0x1008ff2c // Eject device (e.g. DVD)
+ XF86XK_ScreenSaver = 0x1008ff2d // Invoke screensaver
+ XF86XK_WWW = 0x1008ff2e // Invoke web browser
+ XF86XK_Sleep = 0x1008ff2f // Put system to sleep
+ XF86XK_Favorites = 0x1008ff30 // Show favorite locations
+ XF86XK_AudioPause = 0x1008ff31 // Pause audio playing
+ XF86XK_AudioMedia = 0x1008ff32 // Launch media collection app
+ XF86XK_MyComputer = 0x1008ff33 // Display "My Computer" window
+ XF86XK_VendorHome = 0x1008ff34 // Display vendor home web site
+ XF86XK_LightBulb = 0x1008ff35 // Light bulb keys exist
+ XF86XK_Shop = 0x1008ff36 // Display shopping web site
+ XF86XK_History = 0x1008ff37 // Show history of web surfing
+ XF86XK_OpenURL = 0x1008ff38 // Open selected URL
+ XF86XK_AddFavorite = 0x1008ff39 // Add URL to favorites list
+ XF86XK_HotLinks = 0x1008ff3a // Show "hot" links
+ XF86XK_BrightnessAdjust = 0x1008ff3b // Invoke brightness adj. UI
+ XF86XK_Finance = 0x1008ff3c // Display financial site
+ XF86XK_Community = 0x1008ff3d // Display user's community
+ XF86XK_AudioRewind = 0x1008ff3e // "rewind" audio track
+ XF86XK_BackForward = 0x1008ff3f // ???
+ XF86XK_Launch0 = 0x1008ff40 // Launch Application
+ XF86XK_Launch1 = 0x1008ff41 // Launch Application
+ XF86XK_Launch2 = 0x1008ff42 // Launch Application
+ XF86XK_Launch3 = 0x1008ff43 // Launch Application
+ XF86XK_Launch4 = 0x1008ff44 // Launch Application
+ XF86XK_Launch5 = 0x1008ff45 // Launch Application
+ XF86XK_Launch6 = 0x1008ff46 // Launch Application
+ XF86XK_Launch7 = 0x1008ff47 // Launch Application
+ XF86XK_Launch8 = 0x1008ff48 // Launch Application
+ XF86XK_Launch9 = 0x1008ff49 // Launch Application
+ XF86XK_LaunchA = 0x1008ff4a // Launch Application
+ XF86XK_LaunchB = 0x1008ff4b // Launch Application
+ XF86XK_LaunchC = 0x1008ff4c // Launch Application
+ XF86XK_LaunchD = 0x1008ff4d // Launch Application
+ XF86XK_LaunchE = 0x1008ff4e // Launch Application
+ XF86XK_LaunchF = 0x1008ff4f // Launch Application
+ XF86XK_ApplicationLeft = 0x1008ff50 // switch to application, left
+ XF86XK_ApplicationRight = 0x1008ff51 // switch to application, right
+ XF86XK_Book = 0x1008ff52 // Launch bookreader
+ XF86XK_CD = 0x1008ff53 // Launch CD/DVD player
+ XF86XK_Calculater = 0x1008ff54 // Launch Calculater
+ XF86XK_Clear = 0x1008ff55 // Clear window, screen
+ XF86XK_Close = 0x1008ff56 // Close window
+ XF86XK_Copy = 0x1008ff57 // Copy selection
+ XF86XK_Cut = 0x1008ff58 // Cut selection
+ XF86XK_Display = 0x1008ff59 // Output switch key
+ XF86XK_DOS = 0x1008ff5a // Launch DOS (emulation)
+ XF86XK_Documents = 0x1008ff5b // Open documents window
+ XF86XK_Excel = 0x1008ff5c // Launch spread sheet
+ XF86XK_Explorer = 0x1008ff5d // Launch file explorer
+ XF86XK_Game = 0x1008ff5e // Launch game
+ XF86XK_Go = 0x1008ff5f // Go to URL
+ XF86XK_iTouch = 0x1008ff60 // Logitch iTouch- don't use
+ XF86XK_LogOff = 0x1008ff61 // Log off system
+ XF86XK_Market = 0x1008ff62 // ??
+ XF86XK_Meeting = 0x1008ff63 // enter meeting in calendar
+ XF86XK_MenuKB = 0x1008ff65 // distingush keyboard from PB
+ XF86XK_MenuPB = 0x1008ff66 // distinuish PB from keyboard
+ XF86XK_MySites = 0x1008ff67 // Favourites
+ XF86XK_New = 0x1008ff68 // New (folder, document...
+ XF86XK_News = 0x1008ff69 // News
+ XF86XK_OfficeHome = 0x1008ff6a // Office home (old Staroffice)
+ XF86XK_Open = 0x1008ff6b // Open
+ XF86XK_Option = 0x1008ff6c // ??
+ XF86XK_Paste = 0x1008ff6d // Paste
+ XF86XK_Phone = 0x1008ff6e // Launch phone; dial number
+ XF86XK_Q = 0x1008ff70 // Compaq's Q - don't use
+ XF86XK_Reply = 0x1008ff72 // Reply e.g., mail
+ XF86XK_Reload = 0x1008ff73 // Reload web page, file, etc.
+ XF86XK_RotateWindows = 0x1008ff74 // Rotate windows e.g. xrandr
+ XF86XK_RotationPB = 0x1008ff75 // don't use
+ XF86XK_RotationKB = 0x1008ff76 // don't use
+ XF86XK_Save = 0x1008ff77 // Save (file, document, state
+ XF86XK_ScrollUp = 0x1008ff78 // Scroll window/contents up
+ XF86XK_ScrollDown = 0x1008ff79 // Scrool window/contentd down
+ XF86XK_ScrollClick = 0x1008ff7a // Use XKB mousekeys instead
+ XF86XK_Send = 0x1008ff7b // Send mail, file, object
+ XF86XK_Spell = 0x1008ff7c // Spell checker
+ XF86XK_SplitScreen = 0x1008ff7d // Split window or screen
+ XF86XK_Support = 0x1008ff7e // Get support (??)
+ XF86XK_TaskPane = 0x1008ff7f // Show tasks
+ XF86XK_Terminal = 0x1008ff80 // Launch terminal emulator
+ XF86XK_Tools = 0x1008ff81 // toolbox of desktop/app.
+ XF86XK_Travel = 0x1008ff82 // ??
+ XF86XK_UserPB = 0x1008ff84 // ??
+ XF86XK_User1KB = 0x1008ff85 // ??
+ XF86XK_User2KB = 0x1008ff86 // ??
+ XF86XK_Video = 0x1008ff87 // Launch video player
+ XF86XK_WheelButton = 0x1008ff88 // button from a mouse wheel
+ XF86XK_Word = 0x1008ff89 // Launch word processor
+ XF86XK_Xfer = 0x1008ff8a
+ XF86XK_ZoomIn = 0x1008ff8b // zoom in view, map, etc.
+ XF86XK_ZoomOut = 0x1008ff8c // zoom out view, map, etc.
+ XF86XK_Away = 0x1008ff8d // mark yourself as away
+ XF86XK_Messenger = 0x1008ff8e // as in instant messaging
+ XF86XK_WebCam = 0x1008ff8f // Launch web camera app.
+ XF86XK_MailForward = 0x1008ff90 // Forward in mail
+ XF86XK_Pictures = 0x1008ff91 // Show pictures
+ XF86XK_Music = 0x1008ff92 // Launch music application
+ XF86XK_Battery = 0x1008ff93 // Display battery information
+ XF86XK_Bluetooth = 0x1008ff94 // Enable/disable Bluetooth
+ XF86XK_WLAN = 0x1008ff95 // Enable/disable WLAN
+ XF86XK_UWB = 0x1008ff96 // Enable/disable UWB
+ XF86XK_AudioForward = 0x1008ff97 // fast-forward audio track
+ XF86XK_AudioRepeat = 0x1008ff98 // toggle repeat mode
+ XF86XK_AudioRandomPlay = 0x1008ff99 // toggle shuffle mode
+ XF86XK_Subtitle = 0x1008ff9a // cycle through subtitle
+ XF86XK_AudioCycleTrack = 0x1008ff9b // cycle through audio tracks
+ XF86XK_CycleAngle = 0x1008ff9c // cycle through angles
+ XF86XK_FrameBack = 0x1008ff9d // video: go one frame back
+ XF86XK_FrameForward = 0x1008ff9e // video: go one frame forward
+ XF86XK_Time = 0x1008ff9f // display, or shows an entry for time seeking
+ XF86XK_Select = 0x1008ffa0 // Select button on joypads and remotes
+ XF86XK_View = 0x1008ffa1 // Show a view options/properties
+ XF86XK_TopMenu = 0x1008ffa2 // Go to a top-level menu in a video
+ XF86XK_Red = 0x1008ffa3 // Red button
+ XF86XK_Green = 0x1008ffa4 // Green button
+ XF86XK_Yellow = 0x1008ffa5 // Yellow button
+ XF86XK_Blue = 0x1008ffa6 // Blue button
+ XF86XK_Suspend = 0x1008ffa7 // Sleep to RAM
+ XF86XK_Hibernate = 0x1008ffa8 // Sleep to disk
+ XF86XK_TouchpadToggle = 0x1008ffa9 // Toggle between touchpad/trackstick
+ XF86XK_TouchpadOn = 0x1008ffb0 // The touchpad got switched on
+ XF86XK_TouchpadOff = 0x1008ffb1 // The touchpad got switched off
+ XF86XK_AudioMicMute = 0x1008ffb2 // Mute the Mic from the system
+ XF86XK_Keyboard = 0x1008ffb3 // User defined keyboard related action
+ XF86XK_WWAN = 0x1008ffb4 // Toggle WWAN (LTE, UMTS, etc.) radio
+ XF86XK_RFKill = 0x1008ffb5 // Toggle radios on/off
+ XF86XK_AudioPreset = 0x1008ffb6 // Select equalizer preset, e.g. theatre-mode
+ XF86XK_Switch_VT_1 = 0x1008fe01
+ XF86XK_Switch_VT_2 = 0x1008fe02
+ XF86XK_Switch_VT_3 = 0x1008fe03
+ XF86XK_Switch_VT_4 = 0x1008fe04
+ XF86XK_Switch_VT_5 = 0x1008fe05
+ XF86XK_Switch_VT_6 = 0x1008fe06
+ XF86XK_Switch_VT_7 = 0x1008fe07
+ XF86XK_Switch_VT_8 = 0x1008fe08
+ XF86XK_Switch_VT_9 = 0x1008fe09
+ XF86XK_Switch_VT_10 = 0x1008fe0a
+ XF86XK_Switch_VT_11 = 0x1008fe0b
+ XF86XK_Switch_VT_12 = 0x1008fe0c
+ XF86XK_Ungrab = 0x1008fe20 // force ungrab
+ XF86XK_ClearGrab = 0x1008fe21 // kill application with grab
+ XF86XK_Next_VMode = 0x1008fe22 // next video mode available
+ XF86XK_Prev_VMode = 0x1008fe23 // prev. video mode available
+ XF86XK_LogWindowTree = 0x1008fe24 // print window tree to log
+ XF86XK_LogGrabInfo = 0x1008fe25 // print all active grabs to log
+)
+
+// KeysymToName maps X11 keysym constants to their names
+var KeysymToName = map[xproto.Keysym]string{
+ XF86XK_AddFavorite: "XF86AddFavorite",
+ XF86XK_ApplicationLeft: "XF86ApplicationLeft",
+ XF86XK_ApplicationRight: "XF86ApplicationRight",
+ XF86XK_AudioCycleTrack: "XF86AudioCycleTrack",
+ XF86XK_AudioForward: "XF86AudioForward",
+ XF86XK_AudioLowerVolume: "XF86AudioLowerVolume",
+ XF86XK_AudioMedia: "XF86AudioMedia",
+ XF86XK_AudioMicMute: "XF86AudioMicMute",
+ XF86XK_AudioMute: "XF86AudioMute",
+ XF86XK_AudioNext: "XF86AudioNext",
+ XF86XK_AudioPause: "XF86AudioPause",
+ XF86XK_AudioPlay: "XF86AudioPlay",
+ XF86XK_AudioPreset: "XF86AudioPreset",
+ XF86XK_AudioPrev: "XF86AudioPrev",
+ XF86XK_AudioRaiseVolume: "XF86AudioRaiseVolume",
+ XF86XK_AudioRandomPlay: "XF86AudioRandomPlay",
+ XF86XK_AudioRecord: "XF86AudioRecord",
+ XF86XK_AudioRepeat: "XF86AudioRepeat",
+ XF86XK_AudioRewind: "XF86AudioRewind",
+ XF86XK_AudioStop: "XF86AudioStop",
+ XF86XK_Away: "XF86Away",
+ XF86XK_Back: "XF86Back",
+ XF86XK_BackForward: "XF86BackForward",
+ XF86XK_Battery: "XF86Battery",
+ XF86XK_Blue: "XF86Blue",
+ XF86XK_Bluetooth: "XF86Bluetooth",
+ XF86XK_Book: "XF86Book",
+ XF86XK_BrightnessAdjust: "XF86BrightnessAdjust",
+ XF86XK_CD: "XF86CD",
+ XF86XK_Calculater: "XF86Calculater",
+ XF86XK_Calculator: "XF86Calculator",
+ XF86XK_Calendar: "XF86Calendar",
+ XF86XK_Clear: "XF86Clear",
+ XF86XK_ClearGrab: "XF86ClearGrab",
+ XF86XK_Close: "XF86Close",
+ XF86XK_Community: "XF86Community",
+ XF86XK_ContrastAdjust: "XF86ContrastAdjust",
+ XF86XK_Copy: "XF86Copy",
+ XF86XK_Cut: "XF86Cut",
+ XF86XK_CycleAngle: "XF86CycleAngle",
+ XF86XK_DOS: "XF86DOS",
+ XF86XK_Display: "XF86Display",
+ XF86XK_Documents: "XF86Documents",
+ XF86XK_Eject: "XF86Eject",
+ XF86XK_Excel: "XF86Excel",
+ XF86XK_Explorer: "XF86Explorer",
+ XF86XK_Favorites: "XF86Favorites",
+ XF86XK_Finance: "XF86Finance",
+ XF86XK_Forward: "XF86Forward",
+ XF86XK_FrameBack: "XF86FrameBack",
+ XF86XK_FrameForward: "XF86FrameForward",
+ XF86XK_Game: "XF86Game",
+ XF86XK_Go: "XF86Go",
+ XF86XK_Green: "XF86Green",
+ XF86XK_Hibernate: "XF86Hibernate",
+ XF86XK_History: "XF86History",
+ XF86XK_HomePage: "XF86HomePage",
+ XF86XK_HotLinks: "XF86HotLinks",
+ XF86XK_KbdBrightnessDown: "XF86KbdBrightnessDown",
+ XF86XK_KbdBrightnessUp: "XF86KbdBrightnessUp",
+ XF86XK_KbdLightOnOff: "XF86KbdLightOnOff",
+ XF86XK_Keyboard: "XF86Keyboard",
+ XF86XK_Launch0: "XF86Launch0",
+ XF86XK_Launch1: "XF86Launch1",
+ XF86XK_Launch2: "XF86Launch2",
+ XF86XK_Launch3: "XF86Launch3",
+ XF86XK_Launch4: "XF86Launch4",
+ XF86XK_Launch5: "XF86Launch5",
+ XF86XK_Launch6: "XF86Launch6",
+ XF86XK_Launch7: "XF86Launch7",
+ XF86XK_Launch8: "XF86Launch8",
+ XF86XK_Launch9: "XF86Launch9",
+ XF86XK_LaunchA: "XF86LaunchA",
+ XF86XK_LaunchB: "XF86LaunchB",
+ XF86XK_LaunchC: "XF86LaunchC",
+ XF86XK_LaunchD: "XF86LaunchD",
+ XF86XK_LaunchE: "XF86LaunchE",
+ XF86XK_LaunchF: "XF86LaunchF",
+ XF86XK_LightBulb: "XF86LightBulb",
+ XF86XK_LogGrabInfo: "XF86LogGrabInfo",
+ XF86XK_LogOff: "XF86LogOff",
+ XF86XK_LogWindowTree: "XF86LogWindowTree",
+ XF86XK_Mail: "XF86Mail",
+ XF86XK_MailForward: "XF86MailForward",
+ XF86XK_Market: "XF86Market",
+ XF86XK_Meeting: "XF86Meeting",
+ XF86XK_Memo: "XF86Memo",
+ XF86XK_MenuKB: "XF86MenuKB",
+ XF86XK_MenuPB: "XF86MenuPB",
+ XF86XK_Messenger: "XF86Messenger",
+ XF86XK_ModeLock: "XF86ModeLock",
+ XF86XK_MonBrightnessDown: "XF86MonBrightnessDown",
+ XF86XK_MonBrightnessUp: "XF86MonBrightnessUp",
+ XF86XK_Music: "XF86Music",
+ XF86XK_MyComputer: "XF86MyComputer",
+ XF86XK_MySites: "XF86MySites",
+ XF86XK_New: "XF86New",
+ XF86XK_News: "XF86News",
+ XF86XK_Next_VMode: "XF86Next_VMode",
+ XF86XK_OfficeHome: "XF86OfficeHome",
+ XF86XK_Open: "XF86Open",
+ XF86XK_OpenURL: "XF86OpenURL",
+ XF86XK_Option: "XF86Option",
+ XF86XK_Paste: "XF86Paste",
+ XF86XK_Phone: "XF86Phone",
+ XF86XK_Pictures: "XF86Pictures",
+ XF86XK_PowerDown: "XF86PowerDown",
+ XF86XK_PowerOff: "XF86PowerOff",
+ XF86XK_Prev_VMode: "XF86Prev_VMode",
+ XF86XK_Q: "XF86Q",
+ XF86XK_RFKill: "XF86RFKill",
+ XF86XK_Red: "XF86Red",
+ XF86XK_Refresh: "XF86Refresh",
+ XF86XK_Reload: "XF86Reload",
+ XF86XK_Reply: "XF86Reply",
+ XF86XK_RockerDown: "XF86RockerDown",
+ XF86XK_RockerEnter: "XF86RockerEnter",
+ XF86XK_RockerUp: "XF86RockerUp",
+ XF86XK_RotateWindows: "XF86RotateWindows",
+ XF86XK_RotationKB: "XF86RotationKB",
+ XF86XK_RotationPB: "XF86RotationPB",
+ XF86XK_Save: "XF86Save",
+ XF86XK_ScreenSaver: "XF86ScreenSaver",
+ XF86XK_ScrollClick: "XF86ScrollClick",
+ XF86XK_ScrollDown: "XF86ScrollDown",
+ XF86XK_ScrollUp: "XF86ScrollUp",
+ XF86XK_Search: "XF86Search",
+ XF86XK_Select: "XF86Select",
+ XF86XK_Send: "XF86Send",
+ XF86XK_Shop: "XF86Shop",
+ XF86XK_Sleep: "XF86Sleep",
+ XF86XK_Spell: "XF86Spell",
+ XF86XK_SplitScreen: "XF86SplitScreen",
+ XF86XK_Standby: "XF86Standby",
+ XF86XK_Start: "XF86Start",
+ XF86XK_Stop: "XF86Stop",
+ XF86XK_Subtitle: "XF86Subtitle",
+ XF86XK_Support: "XF86Support",
+ XF86XK_Suspend: "XF86Suspend",
+ XF86XK_Switch_VT_1: "XF86Switch_VT_1",
+ XF86XK_Switch_VT_10: "XF86Switch_VT_10",
+ XF86XK_Switch_VT_11: "XF86Switch_VT_11",
+ XF86XK_Switch_VT_12: "XF86Switch_VT_12",
+ XF86XK_Switch_VT_2: "XF86Switch_VT_2",
+ XF86XK_Switch_VT_3: "XF86Switch_VT_3",
+ XF86XK_Switch_VT_4: "XF86Switch_VT_4",
+ XF86XK_Switch_VT_5: "XF86Switch_VT_5",
+ XF86XK_Switch_VT_6: "XF86Switch_VT_6",
+ XF86XK_Switch_VT_7: "XF86Switch_VT_7",
+ XF86XK_Switch_VT_8: "XF86Switch_VT_8",
+ XF86XK_Switch_VT_9: "XF86Switch_VT_9",
+ XF86XK_TaskPane: "XF86TaskPane",
+ XF86XK_Terminal: "XF86Terminal",
+ XF86XK_Time: "XF86Time",
+ XF86XK_ToDoList: "XF86ToDoList",
+ XF86XK_Tools: "XF86Tools",
+ XF86XK_TopMenu: "XF86TopMenu",
+ XF86XK_TouchpadOff: "XF86TouchpadOff",
+ XF86XK_TouchpadOn: "XF86TouchpadOn",
+ XF86XK_TouchpadToggle: "XF86TouchpadToggle",
+ XF86XK_Travel: "XF86Travel",
+ XF86XK_UWB: "XF86UWB",
+ XF86XK_Ungrab: "XF86Ungrab",
+ XF86XK_User1KB: "XF86User1KB",
+ XF86XK_User2KB: "XF86User2KB",
+ XF86XK_UserPB: "XF86UserPB",
+ XF86XK_VendorHome: "XF86VendorHome",
+ XF86XK_Video: "XF86Video",
+ XF86XK_View: "XF86View",
+ XF86XK_WLAN: "XF86WLAN",
+ XF86XK_WWAN: "XF86WWAN",
+ XF86XK_WWW: "XF86WWW",
+ XF86XK_WakeUp: "XF86WakeUp",
+ XF86XK_WebCam: "XF86WebCam",
+ XF86XK_WheelButton: "XF86WheelButton",
+ XF86XK_Word: "XF86Word",
+ XF86XK_Xfer: "XF86Xfer",
+ XF86XK_Yellow: "XF86Yellow",
+ XF86XK_ZoomIn: "XF86ZoomIn",
+ XF86XK_ZoomOut: "XF86ZoomOut",
+ XF86XK_iTouch: "XF86iTouch",
+ XK_0: "0",
+ XK_1: "1",
+ XK_2: "2",
+ XK_3: "3",
+ XK_3270_AltCursor: "3270_AltCursor",
+ XK_3270_Attn: "3270_Attn",
+ XK_3270_BackTab: "3270_BackTab",
+ XK_3270_ChangeScreen: "3270_ChangeScreen",
+ XK_3270_Copy: "3270_Copy",
+ XK_3270_CursorBlink: "3270_CursorBlink",
+ XK_3270_CursorSelect: "3270_CursorSelect",
+ XK_3270_DeleteWord: "3270_DeleteWord",
+ XK_3270_Duplicate: "3270_Duplicate",
+ XK_3270_Enter: "3270_Enter",
+ XK_3270_EraseEOF: "3270_EraseEOF",
+ XK_3270_EraseInput: "3270_EraseInput",
+ XK_3270_ExSelect: "3270_ExSelect",
+ XK_3270_FieldMark: "3270_FieldMark",
+ XK_3270_Ident: "3270_Ident",
+ XK_3270_Jump: "3270_Jump",
+ XK_3270_KeyClick: "3270_KeyClick",
+ XK_3270_Left2: "3270_Left2",
+ XK_3270_PA1: "3270_PA1",
+ XK_3270_PA2: "3270_PA2",
+ XK_3270_PA3: "3270_PA3",
+ XK_3270_Play: "3270_Play",
+ XK_3270_PrintScreen: "3270_PrintScreen",
+ XK_3270_Quit: "3270_Quit",
+ XK_3270_Record: "3270_Record",
+ XK_3270_Reset: "3270_Reset",
+ XK_3270_Right2: "3270_Right2",
+ XK_3270_Rule: "3270_Rule",
+ XK_3270_Setup: "3270_Setup",
+ XK_3270_Test: "3270_Test",
+ XK_4: "4",
+ XK_5: "5",
+ XK_6: "6",
+ XK_7: "7",
+ XK_8: "8",
+ XK_9: "9",
+ XK_A: "A",
+ XK_AE: "AE",
+ XK_Aacute: "Aacute",
+ XK_Abelowdot: "Abelowdot",
+ XK_Abreve: "Abreve",
+ XK_Abreveacute: "Abreveacute",
+ XK_Abrevebelowdot: "Abrevebelowdot",
+ XK_Abrevegrave: "Abrevegrave",
+ XK_Abrevehook: "Abrevehook",
+ XK_Abrevetilde: "Abrevetilde",
+ XK_AccessX_Enable: "AccessX_Enable",
+ XK_AccessX_Feedback_Enable: "AccessX_Feedback_Enable",
+ XK_Acircumflex: "Acircumflex",
+ XK_Acircumflexacute: "Acircumflexacute",
+ XK_Acircumflexbelowdot: "Acircumflexbelowdot",
+ XK_Acircumflexgrave: "Acircumflexgrave",
+ XK_Acircumflexhook: "Acircumflexhook",
+ XK_Acircumflextilde: "Acircumflextilde",
+ XK_Adiaeresis: "Adiaeresis",
+ XK_Agrave: "Agrave",
+ XK_Ahook: "Ahook",
+ XK_Alt_L: "Alt_L",
+ XK_Alt_R: "Alt_R",
+ XK_Amacron: "Amacron",
+ XK_Aogonek: "Aogonek",
+ XK_Arabic_0: "Arabic_0",
+ XK_Arabic_1: "Arabic_1",
+ XK_Arabic_2: "Arabic_2",
+ XK_Arabic_3: "Arabic_3",
+ XK_Arabic_4: "Arabic_4",
+ XK_Arabic_5: "Arabic_5",
+ XK_Arabic_6: "Arabic_6",
+ XK_Arabic_7: "Arabic_7",
+ XK_Arabic_8: "Arabic_8",
+ XK_Arabic_9: "Arabic_9",
+ XK_Arabic_ain: "Arabic_ain",
+ XK_Arabic_alef: "Arabic_alef",
+ XK_Arabic_alefmaksura: "Arabic_alefmaksura",
+ XK_Arabic_beh: "Arabic_beh",
+ XK_Arabic_comma: "Arabic_comma",
+ XK_Arabic_dad: "Arabic_dad",
+ XK_Arabic_dal: "Arabic_dal",
+ XK_Arabic_damma: "Arabic_damma",
+ XK_Arabic_dammatan: "Arabic_dammatan",
+ XK_Arabic_ddal: "Arabic_ddal",
+ XK_Arabic_fatha: "Arabic_fatha",
+ XK_Arabic_fathatan: "Arabic_fathatan",
+ XK_Arabic_feh: "Arabic_feh",
+ XK_Arabic_fullstop: "Arabic_fullstop",
+ XK_Arabic_gaf: "Arabic_gaf",
+ XK_Arabic_ghain: "Arabic_ghain",
+ XK_Arabic_ha: "Arabic_ha",
+ XK_Arabic_hah: "Arabic_hah",
+ XK_Arabic_hamza: "Arabic_hamza",
+ XK_Arabic_hamza_above: "Arabic_hamza_above",
+ XK_Arabic_hamza_below: "Arabic_hamza_below",
+ XK_Arabic_hamzaonalef: "Arabic_hamzaonalef",
+ XK_Arabic_hamzaonwaw: "Arabic_hamzaonwaw",
+ XK_Arabic_hamzaonyeh: "Arabic_hamzaonyeh",
+ XK_Arabic_hamzaunderalef: "Arabic_hamzaunderalef",
+ XK_Arabic_heh_doachashmee: "Arabic_heh_doachashmee",
+ XK_Arabic_heh_goal: "Arabic_heh_goal",
+ XK_Arabic_jeem: "Arabic_jeem",
+ XK_Arabic_jeh: "Arabic_jeh",
+ XK_Arabic_kaf: "Arabic_kaf",
+ XK_Arabic_kasra: "Arabic_kasra",
+ XK_Arabic_kasratan: "Arabic_kasratan",
+ XK_Arabic_keheh: "Arabic_keheh",
+ XK_Arabic_khah: "Arabic_khah",
+ XK_Arabic_lam: "Arabic_lam",
+ XK_Arabic_madda_above: "Arabic_madda_above",
+ XK_Arabic_maddaonalef: "Arabic_maddaonalef",
+ XK_Arabic_meem: "Arabic_meem",
+ XK_Arabic_noon: "Arabic_noon",
+ XK_Arabic_noon_ghunna: "Arabic_noon_ghunna",
+ XK_Arabic_peh: "Arabic_peh",
+ XK_Arabic_percent: "Arabic_percent",
+ XK_Arabic_qaf: "Arabic_qaf",
+ XK_Arabic_question_mark: "Arabic_question_mark",
+ XK_Arabic_ra: "Arabic_ra",
+ XK_Arabic_rreh: "Arabic_rreh",
+ XK_Arabic_sad: "Arabic_sad",
+ XK_Arabic_seen: "Arabic_seen",
+ XK_Arabic_semicolon: "Arabic_semicolon",
+ XK_Arabic_shadda: "Arabic_shadda",
+ XK_Arabic_sheen: "Arabic_sheen",
+ XK_Arabic_sukun: "Arabic_sukun",
+ XK_Arabic_superscript_alef: "Arabic_superscript_alef",
+ XK_Arabic_tah: "Arabic_tah",
+ XK_Arabic_tatweel: "Arabic_tatweel",
+ XK_Arabic_tcheh: "Arabic_tcheh",
+ XK_Arabic_teh: "Arabic_teh",
+ XK_Arabic_tehmarbuta: "Arabic_tehmarbuta",
+ XK_Arabic_thal: "Arabic_thal",
+ XK_Arabic_theh: "Arabic_theh",
+ XK_Arabic_tteh: "Arabic_tteh",
+ XK_Arabic_veh: "Arabic_veh",
+ XK_Arabic_waw: "Arabic_waw",
+ XK_Arabic_yeh: "Arabic_yeh",
+ XK_Arabic_yeh_baree: "Arabic_yeh_baree",
+ XK_Arabic_zah: "Arabic_zah",
+ XK_Arabic_zain: "Arabic_zain",
+ XK_Aring: "Aring",
+ XK_Armenian_AT: "Armenian_AT",
+ XK_Armenian_AYB: "Armenian_AYB",
+ XK_Armenian_BEN: "Armenian_BEN",
+ XK_Armenian_CHA: "Armenian_CHA",
+ XK_Armenian_DA: "Armenian_DA",
+ XK_Armenian_DZA: "Armenian_DZA",
+ XK_Armenian_E: "Armenian_E",
+ XK_Armenian_FE: "Armenian_FE",
+ XK_Armenian_GHAT: "Armenian_GHAT",
+ XK_Armenian_GIM: "Armenian_GIM",
+ XK_Armenian_HI: "Armenian_HI",
+ XK_Armenian_HO: "Armenian_HO",
+ XK_Armenian_INI: "Armenian_INI",
+ XK_Armenian_JE: "Armenian_JE",
+ XK_Armenian_KE: "Armenian_KE",
+ XK_Armenian_KEN: "Armenian_KEN",
+ XK_Armenian_KHE: "Armenian_KHE",
+ XK_Armenian_LYUN: "Armenian_LYUN",
+ XK_Armenian_MEN: "Armenian_MEN",
+ XK_Armenian_NU: "Armenian_NU",
+ XK_Armenian_O: "Armenian_O",
+ XK_Armenian_PE: "Armenian_PE",
+ XK_Armenian_PYUR: "Armenian_PYUR",
+ XK_Armenian_RA: "Armenian_RA",
+ XK_Armenian_RE: "Armenian_RE",
+ XK_Armenian_SE: "Armenian_SE",
+ XK_Armenian_SHA: "Armenian_SHA",
+ XK_Armenian_TCHE: "Armenian_TCHE",
+ XK_Armenian_TO: "Armenian_TO",
+ XK_Armenian_TSA: "Armenian_TSA",
+ XK_Armenian_TSO: "Armenian_TSO",
+ XK_Armenian_TYUN: "Armenian_TYUN",
+ XK_Armenian_VEV: "Armenian_VEV",
+ XK_Armenian_VO: "Armenian_VO",
+ XK_Armenian_VYUN: "Armenian_VYUN",
+ XK_Armenian_YECH: "Armenian_YECH",
+ XK_Armenian_ZA: "Armenian_ZA",
+ XK_Armenian_ZHE: "Armenian_ZHE",
+ XK_Armenian_accent: "Armenian_accent",
+ XK_Armenian_apostrophe: "Armenian_apostrophe",
+ XK_Armenian_at: "Armenian_at",
+ XK_Armenian_ayb: "Armenian_ayb",
+ XK_Armenian_ben: "Armenian_ben",
+ XK_Armenian_cha: "Armenian_cha",
+ XK_Armenian_da: "Armenian_da",
+ XK_Armenian_dza: "Armenian_dza",
+ XK_Armenian_e: "Armenian_e",
+ XK_Armenian_exclam: "Armenian_exclam",
+ XK_Armenian_fe: "Armenian_fe",
+ XK_Armenian_full_stop: "Armenian_full_stop",
+ XK_Armenian_ghat: "Armenian_ghat",
+ XK_Armenian_gim: "Armenian_gim",
+ XK_Armenian_hi: "Armenian_hi",
+ XK_Armenian_ho: "Armenian_ho",
+ XK_Armenian_hyphen: "Armenian_hyphen",
+ XK_Armenian_ini: "Armenian_ini",
+ XK_Armenian_je: "Armenian_je",
+ XK_Armenian_ke: "Armenian_ke",
+ XK_Armenian_ken: "Armenian_ken",
+ XK_Armenian_khe: "Armenian_khe",
+ XK_Armenian_ligature_ew: "Armenian_ligature_ew",
+ XK_Armenian_lyun: "Armenian_lyun",
+ XK_Armenian_men: "Armenian_men",
+ XK_Armenian_nu: "Armenian_nu",
+ XK_Armenian_o: "Armenian_o",
+ XK_Armenian_pe: "Armenian_pe",
+ XK_Armenian_pyur: "Armenian_pyur",
+ XK_Armenian_question: "Armenian_question",
+ XK_Armenian_ra: "Armenian_ra",
+ XK_Armenian_re: "Armenian_re",
+ XK_Armenian_se: "Armenian_se",
+ XK_Armenian_separation_mark: "Armenian_separation_mark",
+ XK_Armenian_sha: "Armenian_sha",
+ XK_Armenian_tche: "Armenian_tche",
+ XK_Armenian_to: "Armenian_to",
+ XK_Armenian_tsa: "Armenian_tsa",
+ XK_Armenian_tso: "Armenian_tso",
+ XK_Armenian_tyun: "Armenian_tyun",
+ XK_Armenian_vev: "Armenian_vev",
+ XK_Armenian_vo: "Armenian_vo",
+ XK_Armenian_vyun: "Armenian_vyun",
+ XK_Armenian_yech: "Armenian_yech",
+ XK_Armenian_za: "Armenian_za",
+ XK_Armenian_zhe: "Armenian_zhe",
+ XK_Atilde: "Atilde",
+ XK_AudibleBell_Enable: "AudibleBell_Enable",
+ XK_B: "B",
+ XK_Babovedot: "Babovedot",
+ XK_BackSpace: "BackSpace",
+ XK_Begin: "Begin",
+ XK_BounceKeys_Enable: "BounceKeys_Enable",
+ XK_Break: "Break",
+ XK_Byelorussian_SHORTU: "Byelorussian_SHORTU",
+ XK_Byelorussian_shortu: "Byelorussian_shortu",
+ XK_C: "C",
+ XK_CH: "CH",
+ XK_C_H: "C_H",
+ XK_C_h: "C_h",
+ XK_Cabovedot: "Cabovedot",
+ XK_Cacute: "Cacute",
+ XK_Cancel: "Cancel",
+ XK_Caps_Lock: "Caps_Lock",
+ XK_Ccaron: "Ccaron",
+ XK_Ccedilla: "Ccedilla",
+ XK_Ccircumflex: "Ccircumflex",
+ XK_Ch: "Ch",
+ XK_Clear: "Clear",
+ XK_Codeinput: "Codeinput",
+ XK_ColonSign: "ColonSign",
+ XK_Control_L: "Control_L",
+ XK_Control_R: "Control_R",
+ XK_CruzeiroSign: "CruzeiroSign",
+ XK_Cyrillic_A: "Cyrillic_A",
+ XK_Cyrillic_BE: "Cyrillic_BE",
+ XK_Cyrillic_CHE: "Cyrillic_CHE",
+ XK_Cyrillic_CHE_descender: "Cyrillic_CHE_descender",
+ XK_Cyrillic_CHE_vertstroke: "Cyrillic_CHE_vertstroke",
+ XK_Cyrillic_DE: "Cyrillic_DE",
+ XK_Cyrillic_DZHE: "Cyrillic_DZHE",
+ XK_Cyrillic_E: "Cyrillic_E",
+ XK_Cyrillic_EF: "Cyrillic_EF",
+ XK_Cyrillic_EL: "Cyrillic_EL",
+ XK_Cyrillic_EM: "Cyrillic_EM",
+ XK_Cyrillic_EN: "Cyrillic_EN",
+ XK_Cyrillic_EN_descender: "Cyrillic_EN_descender",
+ XK_Cyrillic_ER: "Cyrillic_ER",
+ XK_Cyrillic_ES: "Cyrillic_ES",
+ XK_Cyrillic_GHE: "Cyrillic_GHE",
+ XK_Cyrillic_GHE_bar: "Cyrillic_GHE_bar",
+ XK_Cyrillic_HA: "Cyrillic_HA",
+ XK_Cyrillic_HARDSIGN: "Cyrillic_HARDSIGN",
+ XK_Cyrillic_HA_descender: "Cyrillic_HA_descender",
+ XK_Cyrillic_I: "Cyrillic_I",
+ XK_Cyrillic_IE: "Cyrillic_IE",
+ XK_Cyrillic_IO: "Cyrillic_IO",
+ XK_Cyrillic_I_macron: "Cyrillic_I_macron",
+ XK_Cyrillic_JE: "Cyrillic_JE",
+ XK_Cyrillic_KA: "Cyrillic_KA",
+ XK_Cyrillic_KA_descender: "Cyrillic_KA_descender",
+ XK_Cyrillic_KA_vertstroke: "Cyrillic_KA_vertstroke",
+ XK_Cyrillic_LJE: "Cyrillic_LJE",
+ XK_Cyrillic_NJE: "Cyrillic_NJE",
+ XK_Cyrillic_O: "Cyrillic_O",
+ XK_Cyrillic_O_bar: "Cyrillic_O_bar",
+ XK_Cyrillic_PE: "Cyrillic_PE",
+ XK_Cyrillic_SCHWA: "Cyrillic_SCHWA",
+ XK_Cyrillic_SHA: "Cyrillic_SHA",
+ XK_Cyrillic_SHCHA: "Cyrillic_SHCHA",
+ XK_Cyrillic_SHHA: "Cyrillic_SHHA",
+ XK_Cyrillic_SHORTI: "Cyrillic_SHORTI",
+ XK_Cyrillic_SOFTSIGN: "Cyrillic_SOFTSIGN",
+ XK_Cyrillic_TE: "Cyrillic_TE",
+ XK_Cyrillic_TSE: "Cyrillic_TSE",
+ XK_Cyrillic_U: "Cyrillic_U",
+ XK_Cyrillic_U_macron: "Cyrillic_U_macron",
+ XK_Cyrillic_U_straight: "Cyrillic_U_straight",
+ XK_Cyrillic_U_straight_bar: "Cyrillic_U_straight_bar",
+ XK_Cyrillic_VE: "Cyrillic_VE",
+ XK_Cyrillic_YA: "Cyrillic_YA",
+ XK_Cyrillic_YERU: "Cyrillic_YERU",
+ XK_Cyrillic_YU: "Cyrillic_YU",
+ XK_Cyrillic_ZE: "Cyrillic_ZE",
+ XK_Cyrillic_ZHE: "Cyrillic_ZHE",
+ XK_Cyrillic_ZHE_descender: "Cyrillic_ZHE_descender",
+ XK_Cyrillic_a: "Cyrillic_a",
+ XK_Cyrillic_be: "Cyrillic_be",
+ XK_Cyrillic_che: "Cyrillic_che",
+ XK_Cyrillic_che_descender: "Cyrillic_che_descender",
+ XK_Cyrillic_che_vertstroke: "Cyrillic_che_vertstroke",
+ XK_Cyrillic_de: "Cyrillic_de",
+ XK_Cyrillic_dzhe: "Cyrillic_dzhe",
+ XK_Cyrillic_e: "Cyrillic_e",
+ XK_Cyrillic_ef: "Cyrillic_ef",
+ XK_Cyrillic_el: "Cyrillic_el",
+ XK_Cyrillic_em: "Cyrillic_em",
+ XK_Cyrillic_en: "Cyrillic_en",
+ XK_Cyrillic_en_descender: "Cyrillic_en_descender",
+ XK_Cyrillic_er: "Cyrillic_er",
+ XK_Cyrillic_es: "Cyrillic_es",
+ XK_Cyrillic_ghe: "Cyrillic_ghe",
+ XK_Cyrillic_ghe_bar: "Cyrillic_ghe_bar",
+ XK_Cyrillic_ha: "Cyrillic_ha",
+ XK_Cyrillic_ha_descender: "Cyrillic_ha_descender",
+ XK_Cyrillic_hardsign: "Cyrillic_hardsign",
+ XK_Cyrillic_i: "Cyrillic_i",
+ XK_Cyrillic_i_macron: "Cyrillic_i_macron",
+ XK_Cyrillic_ie: "Cyrillic_ie",
+ XK_Cyrillic_io: "Cyrillic_io",
+ XK_Cyrillic_je: "Cyrillic_je",
+ XK_Cyrillic_ka: "Cyrillic_ka",
+ XK_Cyrillic_ka_descender: "Cyrillic_ka_descender",
+ XK_Cyrillic_ka_vertstroke: "Cyrillic_ka_vertstroke",
+ XK_Cyrillic_lje: "Cyrillic_lje",
+ XK_Cyrillic_nje: "Cyrillic_nje",
+ XK_Cyrillic_o: "Cyrillic_o",
+ XK_Cyrillic_o_bar: "Cyrillic_o_bar",
+ XK_Cyrillic_pe: "Cyrillic_pe",
+ XK_Cyrillic_schwa: "Cyrillic_schwa",
+ XK_Cyrillic_sha: "Cyrillic_sha",
+ XK_Cyrillic_shcha: "Cyrillic_shcha",
+ XK_Cyrillic_shha: "Cyrillic_shha",
+ XK_Cyrillic_shorti: "Cyrillic_shorti",
+ XK_Cyrillic_softsign: "Cyrillic_softsign",
+ XK_Cyrillic_te: "Cyrillic_te",
+ XK_Cyrillic_tse: "Cyrillic_tse",
+ XK_Cyrillic_u: "Cyrillic_u",
+ XK_Cyrillic_u_macron: "Cyrillic_u_macron",
+ XK_Cyrillic_u_straight: "Cyrillic_u_straight",
+ XK_Cyrillic_u_straight_bar: "Cyrillic_u_straight_bar",
+ XK_Cyrillic_ve: "Cyrillic_ve",
+ XK_Cyrillic_ya: "Cyrillic_ya",
+ XK_Cyrillic_yeru: "Cyrillic_yeru",
+ XK_Cyrillic_yu: "Cyrillic_yu",
+ XK_Cyrillic_ze: "Cyrillic_ze",
+ XK_Cyrillic_zhe: "Cyrillic_zhe",
+ XK_Cyrillic_zhe_descender: "Cyrillic_zhe_descender",
+ XK_D: "D",
+ XK_Dabovedot: "Dabovedot",
+ XK_Dcaron: "Dcaron",
+ XK_Delete: "Delete",
+ XK_DongSign: "DongSign",
+ XK_Down: "Down",
+ XK_Dstroke: "Dstroke",
+ XK_E: "E",
+ XK_ENG: "ENG",
+ XK_ETH: "ETH",
+ XK_EZH: "EZH",
+ XK_Eabovedot: "Eabovedot",
+ XK_Eacute: "Eacute",
+ XK_Ebelowdot: "Ebelowdot",
+ XK_Ecaron: "Ecaron",
+ XK_Ecircumflex: "Ecircumflex",
+ XK_Ecircumflexacute: "Ecircumflexacute",
+ XK_Ecircumflexbelowdot: "Ecircumflexbelowdot",
+ XK_Ecircumflexgrave: "Ecircumflexgrave",
+ XK_Ecircumflexhook: "Ecircumflexhook",
+ XK_Ecircumflextilde: "Ecircumflextilde",
+ XK_EcuSign: "EcuSign",
+ XK_Ediaeresis: "Ediaeresis",
+ XK_Egrave: "Egrave",
+ XK_Ehook: "Ehook",
+ XK_Eisu_Shift: "Eisu_Shift",
+ XK_Eisu_toggle: "Eisu_toggle",
+ XK_Emacron: "Emacron",
+ XK_End: "End",
+ XK_Eogonek: "Eogonek",
+ XK_Escape: "Escape",
+ XK_Etilde: "Etilde",
+ XK_EuroSign: "EuroSign",
+ XK_Execute: "Execute",
+ XK_F: "F",
+ XK_F1: "F1",
+ XK_F10: "F10",
+ XK_F11: "F11",
+ XK_F12: "F12",
+ XK_F13: "F13",
+ XK_F14: "F14",
+ XK_F15: "F15",
+ XK_F16: "F16",
+ XK_F17: "F17",
+ XK_F18: "F18",
+ XK_F19: "F19",
+ XK_F2: "F2",
+ XK_F20: "F20",
+ XK_F21: "F21",
+ XK_F22: "F22",
+ XK_F23: "F23",
+ XK_F24: "F24",
+ XK_F25: "F25",
+ XK_F26: "F26",
+ XK_F27: "F27",
+ XK_F28: "F28",
+ XK_F29: "F29",
+ XK_F3: "F3",
+ XK_F30: "F30",
+ XK_F31: "F31",
+ XK_F32: "F32",
+ XK_F33: "F33",
+ XK_F34: "F34",
+ XK_F35: "F35",
+ XK_F4: "F4",
+ XK_F5: "F5",
+ XK_F6: "F6",
+ XK_F7: "F7",
+ XK_F8: "F8",
+ XK_F9: "F9",
+ XK_FFrancSign: "FFrancSign",
+ XK_Fabovedot: "Fabovedot",
+ XK_Farsi_0: "Farsi_0",
+ XK_Farsi_1: "Farsi_1",
+ XK_Farsi_2: "Farsi_2",
+ XK_Farsi_3: "Farsi_3",
+ XK_Farsi_4: "Farsi_4",
+ XK_Farsi_5: "Farsi_5",
+ XK_Farsi_6: "Farsi_6",
+ XK_Farsi_7: "Farsi_7",
+ XK_Farsi_8: "Farsi_8",
+ XK_Farsi_9: "Farsi_9",
+ XK_Farsi_yeh: "Farsi_yeh",
+ XK_Find: "Find",
+ XK_First_Virtual_Screen: "First_Virtual_Screen",
+ XK_G: "G",
+ XK_Gabovedot: "Gabovedot",
+ XK_Gbreve: "Gbreve",
+ XK_Gcaron: "Gcaron",
+ XK_Gcedilla: "Gcedilla",
+ XK_Gcircumflex: "Gcircumflex",
+ XK_Georgian_an: "Georgian_an",
+ XK_Georgian_ban: "Georgian_ban",
+ XK_Georgian_can: "Georgian_can",
+ XK_Georgian_char: "Georgian_char",
+ XK_Georgian_chin: "Georgian_chin",
+ XK_Georgian_cil: "Georgian_cil",
+ XK_Georgian_don: "Georgian_don",
+ XK_Georgian_en: "Georgian_en",
+ XK_Georgian_fi: "Georgian_fi",
+ XK_Georgian_gan: "Georgian_gan",
+ XK_Georgian_ghan: "Georgian_ghan",
+ XK_Georgian_hae: "Georgian_hae",
+ XK_Georgian_har: "Georgian_har",
+ XK_Georgian_he: "Georgian_he",
+ XK_Georgian_hie: "Georgian_hie",
+ XK_Georgian_hoe: "Georgian_hoe",
+ XK_Georgian_in: "Georgian_in",
+ XK_Georgian_jhan: "Georgian_jhan",
+ XK_Georgian_jil: "Georgian_jil",
+ XK_Georgian_kan: "Georgian_kan",
+ XK_Georgian_khar: "Georgian_khar",
+ XK_Georgian_las: "Georgian_las",
+ XK_Georgian_man: "Georgian_man",
+ XK_Georgian_nar: "Georgian_nar",
+ XK_Georgian_on: "Georgian_on",
+ XK_Georgian_par: "Georgian_par",
+ XK_Georgian_phar: "Georgian_phar",
+ XK_Georgian_qar: "Georgian_qar",
+ XK_Georgian_rae: "Georgian_rae",
+ XK_Georgian_san: "Georgian_san",
+ XK_Georgian_shin: "Georgian_shin",
+ XK_Georgian_tan: "Georgian_tan",
+ XK_Georgian_tar: "Georgian_tar",
+ XK_Georgian_un: "Georgian_un",
+ XK_Georgian_vin: "Georgian_vin",
+ XK_Georgian_we: "Georgian_we",
+ XK_Georgian_xan: "Georgian_xan",
+ XK_Georgian_zen: "Georgian_zen",
+ XK_Georgian_zhar: "Georgian_zhar",
+ XK_Greek_ALPHA: "Greek_ALPHA",
+ XK_Greek_ALPHAaccent: "Greek_ALPHAaccent",
+ XK_Greek_BETA: "Greek_BETA",
+ XK_Greek_CHI: "Greek_CHI",
+ XK_Greek_DELTA: "Greek_DELTA",
+ XK_Greek_EPSILON: "Greek_EPSILON",
+ XK_Greek_EPSILONaccent: "Greek_EPSILONaccent",
+ XK_Greek_ETA: "Greek_ETA",
+ XK_Greek_ETAaccent: "Greek_ETAaccent",
+ XK_Greek_GAMMA: "Greek_GAMMA",
+ XK_Greek_IOTA: "Greek_IOTA",
+ XK_Greek_IOTAaccent: "Greek_IOTAaccent",
+ XK_Greek_IOTAdieresis: "Greek_IOTAdieresis",
+ XK_Greek_KAPPA: "Greek_KAPPA",
+ XK_Greek_LAMDA: "Greek_LAMDA",
+ XK_Greek_MU: "Greek_MU",
+ XK_Greek_NU: "Greek_NU",
+ XK_Greek_OMEGA: "Greek_OMEGA",
+ XK_Greek_OMEGAaccent: "Greek_OMEGAaccent",
+ XK_Greek_OMICRON: "Greek_OMICRON",
+ XK_Greek_OMICRONaccent: "Greek_OMICRONaccent",
+ XK_Greek_PHI: "Greek_PHI",
+ XK_Greek_PI: "Greek_PI",
+ XK_Greek_PSI: "Greek_PSI",
+ XK_Greek_RHO: "Greek_RHO",
+ XK_Greek_SIGMA: "Greek_SIGMA",
+ XK_Greek_TAU: "Greek_TAU",
+ XK_Greek_THETA: "Greek_THETA",
+ XK_Greek_UPSILON: "Greek_UPSILON",
+ XK_Greek_UPSILONaccent: "Greek_UPSILONaccent",
+ XK_Greek_UPSILONdieresis: "Greek_UPSILONdieresis",
+ XK_Greek_XI: "Greek_XI",
+ XK_Greek_ZETA: "Greek_ZETA",
+ XK_Greek_accentdieresis: "Greek_accentdieresis",
+ XK_Greek_alpha: "Greek_alpha",
+ XK_Greek_alphaaccent: "Greek_alphaaccent",
+ XK_Greek_beta: "Greek_beta",
+ XK_Greek_chi: "Greek_chi",
+ XK_Greek_delta: "Greek_delta",
+ XK_Greek_epsilon: "Greek_epsilon",
+ XK_Greek_epsilonaccent: "Greek_epsilonaccent",
+ XK_Greek_eta: "Greek_eta",
+ XK_Greek_etaaccent: "Greek_etaaccent",
+ XK_Greek_finalsmallsigma: "Greek_finalsmallsigma",
+ XK_Greek_gamma: "Greek_gamma",
+ XK_Greek_horizbar: "Greek_horizbar",
+ XK_Greek_iota: "Greek_iota",
+ XK_Greek_iotaaccent: "Greek_iotaaccent",
+ XK_Greek_iotaaccentdieresis: "Greek_iotaaccentdieresis",
+ XK_Greek_iotadieresis: "Greek_iotadieresis",
+ XK_Greek_kappa: "Greek_kappa",
+ XK_Greek_lamda: "Greek_lamda",
+ XK_Greek_mu: "Greek_mu",
+ XK_Greek_nu: "Greek_nu",
+ XK_Greek_omega: "Greek_omega",
+ XK_Greek_omegaaccent: "Greek_omegaaccent",
+ XK_Greek_omicron: "Greek_omicron",
+ XK_Greek_omicronaccent: "Greek_omicronaccent",
+ XK_Greek_phi: "Greek_phi",
+ XK_Greek_pi: "Greek_pi",
+ XK_Greek_psi: "Greek_psi",
+ XK_Greek_rho: "Greek_rho",
+ XK_Greek_sigma: "Greek_sigma",
+ XK_Greek_tau: "Greek_tau",
+ XK_Greek_theta: "Greek_theta",
+ XK_Greek_upsilon: "Greek_upsilon",
+ XK_Greek_upsilonaccent: "Greek_upsilonaccent",
+ XK_Greek_upsilonaccentdieresis: "Greek_upsilonaccentdieresis",
+ XK_Greek_upsilondieresis: "Greek_upsilondieresis",
+ XK_Greek_xi: "Greek_xi",
+ XK_Greek_zeta: "Greek_zeta",
+ XK_H: "H",
+ XK_Hangul: "Hangul",
+ XK_Hangul_A: "Hangul_A",
+ XK_Hangul_AE: "Hangul_AE",
+ XK_Hangul_AraeA: "Hangul_AraeA",
+ XK_Hangul_AraeAE: "Hangul_AraeAE",
+ XK_Hangul_Banja: "Hangul_Banja",
+ XK_Hangul_Cieuc: "Hangul_Cieuc",
+ XK_Hangul_Dikeud: "Hangul_Dikeud",
+ XK_Hangul_E: "Hangul_E",
+ XK_Hangul_EO: "Hangul_EO",
+ XK_Hangul_EU: "Hangul_EU",
+ XK_Hangul_End: "Hangul_End",
+ XK_Hangul_Hanja: "Hangul_Hanja",
+ XK_Hangul_Hieuh: "Hangul_Hieuh",
+ XK_Hangul_I: "Hangul_I",
+ XK_Hangul_Ieung: "Hangul_Ieung",
+ XK_Hangul_J_Cieuc: "Hangul_J_Cieuc",
+ XK_Hangul_J_Dikeud: "Hangul_J_Dikeud",
+ XK_Hangul_J_Hieuh: "Hangul_J_Hieuh",
+ XK_Hangul_J_Ieung: "Hangul_J_Ieung",
+ XK_Hangul_J_Jieuj: "Hangul_J_Jieuj",
+ XK_Hangul_J_Khieuq: "Hangul_J_Khieuq",
+ XK_Hangul_J_Kiyeog: "Hangul_J_Kiyeog",
+ XK_Hangul_J_KiyeogSios: "Hangul_J_KiyeogSios",
+ XK_Hangul_J_KkogjiDalrinIeung: "Hangul_J_KkogjiDalrinIeung",
+ XK_Hangul_J_Mieum: "Hangul_J_Mieum",
+ XK_Hangul_J_Nieun: "Hangul_J_Nieun",
+ XK_Hangul_J_NieunHieuh: "Hangul_J_NieunHieuh",
+ XK_Hangul_J_NieunJieuj: "Hangul_J_NieunJieuj",
+ XK_Hangul_J_PanSios: "Hangul_J_PanSios",
+ XK_Hangul_J_Phieuf: "Hangul_J_Phieuf",
+ XK_Hangul_J_Pieub: "Hangul_J_Pieub",
+ XK_Hangul_J_PieubSios: "Hangul_J_PieubSios",
+ XK_Hangul_J_Rieul: "Hangul_J_Rieul",
+ XK_Hangul_J_RieulHieuh: "Hangul_J_RieulHieuh",
+ XK_Hangul_J_RieulKiyeog: "Hangul_J_RieulKiyeog",
+ XK_Hangul_J_RieulMieum: "Hangul_J_RieulMieum",
+ XK_Hangul_J_RieulPhieuf: "Hangul_J_RieulPhieuf",
+ XK_Hangul_J_RieulPieub: "Hangul_J_RieulPieub",
+ XK_Hangul_J_RieulSios: "Hangul_J_RieulSios",
+ XK_Hangul_J_RieulTieut: "Hangul_J_RieulTieut",
+ XK_Hangul_J_Sios: "Hangul_J_Sios",
+ XK_Hangul_J_SsangKiyeog: "Hangul_J_SsangKiyeog",
+ XK_Hangul_J_SsangSios: "Hangul_J_SsangSios",
+ XK_Hangul_J_Tieut: "Hangul_J_Tieut",
+ XK_Hangul_J_YeorinHieuh: "Hangul_J_YeorinHieuh",
+ XK_Hangul_Jamo: "Hangul_Jamo",
+ XK_Hangul_Jeonja: "Hangul_Jeonja",
+ XK_Hangul_Jieuj: "Hangul_Jieuj",
+ XK_Hangul_Khieuq: "Hangul_Khieuq",
+ XK_Hangul_Kiyeog: "Hangul_Kiyeog",
+ XK_Hangul_KiyeogSios: "Hangul_KiyeogSios",
+ XK_Hangul_KkogjiDalrinIeung: "Hangul_KkogjiDalrinIeung",
+ XK_Hangul_Mieum: "Hangul_Mieum",
+ XK_Hangul_Nieun: "Hangul_Nieun",
+ XK_Hangul_NieunHieuh: "Hangul_NieunHieuh",
+ XK_Hangul_NieunJieuj: "Hangul_NieunJieuj",
+ XK_Hangul_O: "Hangul_O",
+ XK_Hangul_OE: "Hangul_OE",
+ XK_Hangul_PanSios: "Hangul_PanSios",
+ XK_Hangul_Phieuf: "Hangul_Phieuf",
+ XK_Hangul_Pieub: "Hangul_Pieub",
+ XK_Hangul_PieubSios: "Hangul_PieubSios",
+ XK_Hangul_PostHanja: "Hangul_PostHanja",
+ XK_Hangul_PreHanja: "Hangul_PreHanja",
+ XK_Hangul_Rieul: "Hangul_Rieul",
+ XK_Hangul_RieulHieuh: "Hangul_RieulHieuh",
+ XK_Hangul_RieulKiyeog: "Hangul_RieulKiyeog",
+ XK_Hangul_RieulMieum: "Hangul_RieulMieum",
+ XK_Hangul_RieulPhieuf: "Hangul_RieulPhieuf",
+ XK_Hangul_RieulPieub: "Hangul_RieulPieub",
+ XK_Hangul_RieulSios: "Hangul_RieulSios",
+ XK_Hangul_RieulTieut: "Hangul_RieulTieut",
+ XK_Hangul_RieulYeorinHieuh: "Hangul_RieulYeorinHieuh",
+ XK_Hangul_Romaja: "Hangul_Romaja",
+ XK_Hangul_Sios: "Hangul_Sios",
+ XK_Hangul_Special: "Hangul_Special",
+ XK_Hangul_SsangDikeud: "Hangul_SsangDikeud",
+ XK_Hangul_SsangJieuj: "Hangul_SsangJieuj",
+ XK_Hangul_SsangKiyeog: "Hangul_SsangKiyeog",
+ XK_Hangul_SsangPieub: "Hangul_SsangPieub",
+ XK_Hangul_SsangSios: "Hangul_SsangSios",
+ XK_Hangul_Start: "Hangul_Start",
+ XK_Hangul_SunkyeongeumMieum: "Hangul_SunkyeongeumMieum",
+ XK_Hangul_SunkyeongeumPhieuf: "Hangul_SunkyeongeumPhieuf",
+ XK_Hangul_SunkyeongeumPieub: "Hangul_SunkyeongeumPieub",
+ XK_Hangul_Tieut: "Hangul_Tieut",
+ XK_Hangul_U: "Hangul_U",
+ XK_Hangul_WA: "Hangul_WA",
+ XK_Hangul_WAE: "Hangul_WAE",
+ XK_Hangul_WE: "Hangul_WE",
+ XK_Hangul_WEO: "Hangul_WEO",
+ XK_Hangul_WI: "Hangul_WI",
+ XK_Hangul_YA: "Hangul_YA",
+ XK_Hangul_YAE: "Hangul_YAE",
+ XK_Hangul_YE: "Hangul_YE",
+ XK_Hangul_YEO: "Hangul_YEO",
+ XK_Hangul_YI: "Hangul_YI",
+ XK_Hangul_YO: "Hangul_YO",
+ XK_Hangul_YU: "Hangul_YU",
+ XK_Hangul_YeorinHieuh: "Hangul_YeorinHieuh",
+ XK_Hankaku: "Hankaku",
+ XK_Hcircumflex: "Hcircumflex",
+ XK_Help: "Help",
+ XK_Henkan_Mode: "Henkan_Mode",
+ XK_Hiragana: "Hiragana",
+ XK_Hiragana_Katakana: "Hiragana_Katakana",
+ XK_Home: "Home",
+ XK_Hstroke: "Hstroke",
+ XK_Hyper_L: "Hyper_L",
+ XK_Hyper_R: "Hyper_R",
+ XK_I: "I",
+ XK_ISO_Center_Object: "ISO_Center_Object",
+ XK_ISO_Continuous_Underline: "ISO_Continuous_Underline",
+ XK_ISO_Discontinuous_Underline: "ISO_Discontinuous_Underline",
+ XK_ISO_Emphasize: "ISO_Emphasize",
+ XK_ISO_Enter: "ISO_Enter",
+ XK_ISO_Fast_Cursor_Down: "ISO_Fast_Cursor_Down",
+ XK_ISO_Fast_Cursor_Left: "ISO_Fast_Cursor_Left",
+ XK_ISO_Fast_Cursor_Right: "ISO_Fast_Cursor_Right",
+ XK_ISO_Fast_Cursor_Up: "ISO_Fast_Cursor_Up",
+ XK_ISO_First_Group: "ISO_First_Group",
+ XK_ISO_First_Group_Lock: "ISO_First_Group_Lock",
+ XK_ISO_Group_Latch: "ISO_Group_Latch",
+ XK_ISO_Group_Lock: "ISO_Group_Lock",
+ XK_ISO_Last_Group: "ISO_Last_Group",
+ XK_ISO_Last_Group_Lock: "ISO_Last_Group_Lock",
+ XK_ISO_Left_Tab: "ISO_Left_Tab",
+ XK_ISO_Level2_Latch: "ISO_Level2_Latch",
+ XK_ISO_Level3_Latch: "ISO_Level3_Latch",
+ XK_ISO_Level3_Lock: "ISO_Level3_Lock",
+ XK_ISO_Level3_Shift: "ISO_Level3_Shift",
+ XK_ISO_Level5_Latch: "ISO_Level5_Latch",
+ XK_ISO_Level5_Lock: "ISO_Level5_Lock",
+ XK_ISO_Level5_Shift: "ISO_Level5_Shift",
+ XK_ISO_Lock: "ISO_Lock",
+ XK_ISO_Move_Line_Down: "ISO_Move_Line_Down",
+ XK_ISO_Move_Line_Up: "ISO_Move_Line_Up",
+ XK_ISO_Next_Group: "ISO_Next_Group",
+ XK_ISO_Next_Group_Lock: "ISO_Next_Group_Lock",
+ XK_ISO_Partial_Line_Down: "ISO_Partial_Line_Down",
+ XK_ISO_Partial_Line_Up: "ISO_Partial_Line_Up",
+ XK_ISO_Partial_Space_Left: "ISO_Partial_Space_Left",
+ XK_ISO_Partial_Space_Right: "ISO_Partial_Space_Right",
+ XK_ISO_Prev_Group: "ISO_Prev_Group",
+ XK_ISO_Prev_Group_Lock: "ISO_Prev_Group_Lock",
+ XK_ISO_Release_Both_Margins: "ISO_Release_Both_Margins",
+ XK_ISO_Release_Margin_Left: "ISO_Release_Margin_Left",
+ XK_ISO_Release_Margin_Right: "ISO_Release_Margin_Right",
+ XK_ISO_Set_Margin_Left: "ISO_Set_Margin_Left",
+ XK_ISO_Set_Margin_Right: "ISO_Set_Margin_Right",
+ XK_Iabovedot: "Iabovedot",
+ XK_Iacute: "Iacute",
+ XK_Ibelowdot: "Ibelowdot",
+ XK_Ibreve: "Ibreve",
+ XK_Icircumflex: "Icircumflex",
+ XK_Idiaeresis: "Idiaeresis",
+ XK_Igrave: "Igrave",
+ XK_Ihook: "Ihook",
+ XK_Imacron: "Imacron",
+ XK_Insert: "Insert",
+ XK_Iogonek: "Iogonek",
+ XK_Itilde: "Itilde",
+ XK_J: "J",
+ XK_Jcircumflex: "Jcircumflex",
+ XK_K: "K",
+ XK_KP_0: "KP_0",
+ XK_KP_1: "KP_1",
+ XK_KP_2: "KP_2",
+ XK_KP_3: "KP_3",
+ XK_KP_4: "KP_4",
+ XK_KP_5: "KP_5",
+ XK_KP_6: "KP_6",
+ XK_KP_7: "KP_7",
+ XK_KP_8: "KP_8",
+ XK_KP_9: "KP_9",
+ XK_KP_Add: "KP_Add",
+ XK_KP_Begin: "KP_Begin",
+ XK_KP_Decimal: "KP_Decimal",
+ XK_KP_Delete: "KP_Delete",
+ XK_KP_Divide: "KP_Divide",
+ XK_KP_Down: "KP_Down",
+ XK_KP_End: "KP_End",
+ XK_KP_Enter: "KP_Enter",
+ XK_KP_Equal: "KP_Equal",
+ XK_KP_F1: "KP_F1",
+ XK_KP_F2: "KP_F2",
+ XK_KP_F3: "KP_F3",
+ XK_KP_F4: "KP_F4",
+ XK_KP_Home: "KP_Home",
+ XK_KP_Insert: "KP_Insert",
+ XK_KP_Left: "KP_Left",
+ XK_KP_Multiply: "KP_Multiply",
+ XK_KP_Next: "KP_Next",
+ XK_KP_Prior: "KP_Prior",
+ XK_KP_Right: "KP_Right",
+ XK_KP_Separator: "KP_Separator",
+ XK_KP_Space: "KP_Space",
+ XK_KP_Subtract: "KP_Subtract",
+ XK_KP_Tab: "KP_Tab",
+ XK_KP_Up: "KP_Up",
+ XK_Kana_Lock: "Kana_Lock",
+ XK_Kana_Shift: "Kana_Shift",
+ XK_Kanji: "Kanji",
+ XK_Katakana: "Katakana",
+ XK_Kcedilla: "Kcedilla",
+ XK_Korean_Won: "Korean_Won",
+ XK_L: "L",
+ XK_Lacute: "Lacute",
+ XK_Last_Virtual_Screen: "Last_Virtual_Screen",
+ XK_Lbelowdot: "Lbelowdot",
+ XK_Lcaron: "Lcaron",
+ XK_Lcedilla: "Lcedilla",
+ XK_Left: "Left",
+ XK_Linefeed: "Linefeed",
+ XK_LiraSign: "LiraSign",
+ XK_Lstroke: "Lstroke",
+ XK_M: "M",
+ XK_Mabovedot: "Mabovedot",
+ XK_Macedonia_DSE: "Macedonia_DSE",
+ XK_Macedonia_GJE: "Macedonia_GJE",
+ XK_Macedonia_KJE: "Macedonia_KJE",
+ XK_Macedonia_dse: "Macedonia_dse",
+ XK_Macedonia_gje: "Macedonia_gje",
+ XK_Macedonia_kje: "Macedonia_kje",
+ XK_Massyo: "Massyo",
+ XK_Menu: "Menu",
+ XK_Meta_L: "Meta_L",
+ XK_Meta_R: "Meta_R",
+ XK_MillSign: "MillSign",
+ XK_Mode_switch: "Mode_switch",
+ XK_MouseKeys_Accel_Enable: "MouseKeys_Accel_Enable",
+ XK_MouseKeys_Enable: "MouseKeys_Enable",
+ XK_Muhenkan: "Muhenkan",
+ XK_Multi_key: "Multi_key",
+ XK_MultipleCandidate: "MultipleCandidate",
+ XK_N: "N",
+ XK_Nacute: "Nacute",
+ XK_NairaSign: "NairaSign",
+ XK_Ncaron: "Ncaron",
+ XK_Ncedilla: "Ncedilla",
+ XK_NewSheqelSign: "NewSheqelSign",
+ XK_Next: "Next",
+ XK_Next_Virtual_Screen: "Next_Virtual_Screen",
+ XK_Ntilde: "Ntilde",
+ XK_Num_Lock: "Num_Lock",
+ XK_O: "O",
+ XK_OE: "OE",
+ XK_Oacute: "Oacute",
+ XK_Obarred: "Obarred",
+ XK_Obelowdot: "Obelowdot",
+ XK_Ocaron: "Ocaron",
+ XK_Ocircumflex: "Ocircumflex",
+ XK_Ocircumflexacute: "Ocircumflexacute",
+ XK_Ocircumflexbelowdot: "Ocircumflexbelowdot",
+ XK_Ocircumflexgrave: "Ocircumflexgrave",
+ XK_Ocircumflexhook: "Ocircumflexhook",
+ XK_Ocircumflextilde: "Ocircumflextilde",
+ XK_Odiaeresis: "Odiaeresis",
+ XK_Odoubleacute: "Odoubleacute",
+ XK_Ograve: "Ograve",
+ XK_Ohook: "Ohook",
+ XK_Ohorn: "Ohorn",
+ XK_Ohornacute: "Ohornacute",
+ XK_Ohornbelowdot: "Ohornbelowdot",
+ XK_Ohorngrave: "Ohorngrave",
+ XK_Ohornhook: "Ohornhook",
+ XK_Ohorntilde: "Ohorntilde",
+ XK_Omacron: "Omacron",
+ XK_Oslash: "Oslash",
+ XK_Otilde: "Otilde",
+ XK_Overlay1_Enable: "Overlay1_Enable",
+ XK_Overlay2_Enable: "Overlay2_Enable",
+ XK_P: "P",
+ XK_Pabovedot: "Pabovedot",
+ XK_Pause: "Pause",
+ XK_PesetaSign: "PesetaSign",
+ XK_Pointer_Accelerate: "Pointer_Accelerate",
+ XK_Pointer_Button1: "Pointer_Button1",
+ XK_Pointer_Button2: "Pointer_Button2",
+ XK_Pointer_Button3: "Pointer_Button3",
+ XK_Pointer_Button4: "Pointer_Button4",
+ XK_Pointer_Button5: "Pointer_Button5",
+ XK_Pointer_Button_Dflt: "Pointer_Button_Dflt",
+ XK_Pointer_DblClick1: "Pointer_DblClick1",
+ XK_Pointer_DblClick2: "Pointer_DblClick2",
+ XK_Pointer_DblClick3: "Pointer_DblClick3",
+ XK_Pointer_DblClick4: "Pointer_DblClick4",
+ XK_Pointer_DblClick5: "Pointer_DblClick5",
+ XK_Pointer_DblClick_Dflt: "Pointer_DblClick_Dflt",
+ XK_Pointer_DfltBtnNext: "Pointer_DfltBtnNext",
+ XK_Pointer_DfltBtnPrev: "Pointer_DfltBtnPrev",
+ XK_Pointer_Down: "Pointer_Down",
+ XK_Pointer_DownLeft: "Pointer_DownLeft",
+ XK_Pointer_DownRight: "Pointer_DownRight",
+ XK_Pointer_Drag1: "Pointer_Drag1",
+ XK_Pointer_Drag2: "Pointer_Drag2",
+ XK_Pointer_Drag3: "Pointer_Drag3",
+ XK_Pointer_Drag4: "Pointer_Drag4",
+ XK_Pointer_Drag5: "Pointer_Drag5",
+ XK_Pointer_Drag_Dflt: "Pointer_Drag_Dflt",
+ XK_Pointer_EnableKeys: "Pointer_EnableKeys",
+ XK_Pointer_Left: "Pointer_Left",
+ XK_Pointer_Right: "Pointer_Right",
+ XK_Pointer_Up: "Pointer_Up",
+ XK_Pointer_UpLeft: "Pointer_UpLeft",
+ XK_Pointer_UpRight: "Pointer_UpRight",
+ XK_Prev_Virtual_Screen: "Prev_Virtual_Screen",
+ XK_PreviousCandidate: "PreviousCandidate",
+ XK_Print: "Print",
+ XK_Prior: "Prior",
+ XK_Q: "Q",
+ XK_R: "R",
+ XK_Racute: "Racute",
+ XK_Rcaron: "Rcaron",
+ XK_Rcedilla: "Rcedilla",
+ XK_Redo: "Redo",
+ XK_RepeatKeys_Enable: "RepeatKeys_Enable",
+ XK_Return: "Return",
+ XK_Right: "Right",
+ XK_Romaji: "Romaji",
+ XK_RupeeSign: "RupeeSign",
+ XK_S: "S",
+ XK_SCHWA: "SCHWA",
+ XK_Sabovedot: "Sabovedot",
+ XK_Sacute: "Sacute",
+ XK_Scaron: "Scaron",
+ XK_Scedilla: "Scedilla",
+ XK_Scircumflex: "Scircumflex",
+ XK_Scroll_Lock: "Scroll_Lock",
+ XK_Select: "Select",
+ XK_Serbian_DJE: "Serbian_DJE",
+ XK_Serbian_TSHE: "Serbian_TSHE",
+ XK_Serbian_dje: "Serbian_dje",
+ XK_Serbian_tshe: "Serbian_tshe",
+ XK_Shift_L: "Shift_L",
+ XK_Shift_Lock: "Shift_Lock",
+ XK_Shift_R: "Shift_R",
+ XK_SingleCandidate: "SingleCandidate",
+ XK_Sinh_a: "Sinh_a",
+ XK_Sinh_aa: "Sinh_aa",
+ XK_Sinh_aa2: "Sinh_aa2",
+ XK_Sinh_ae: "Sinh_ae",
+ XK_Sinh_ae2: "Sinh_ae2",
+ XK_Sinh_aee: "Sinh_aee",
+ XK_Sinh_aee2: "Sinh_aee2",
+ XK_Sinh_ai: "Sinh_ai",
+ XK_Sinh_ai2: "Sinh_ai2",
+ XK_Sinh_al: "Sinh_al",
+ XK_Sinh_au: "Sinh_au",
+ XK_Sinh_au2: "Sinh_au2",
+ XK_Sinh_ba: "Sinh_ba",
+ XK_Sinh_bha: "Sinh_bha",
+ XK_Sinh_ca: "Sinh_ca",
+ XK_Sinh_cha: "Sinh_cha",
+ XK_Sinh_dda: "Sinh_dda",
+ XK_Sinh_ddha: "Sinh_ddha",
+ XK_Sinh_dha: "Sinh_dha",
+ XK_Sinh_dhha: "Sinh_dhha",
+ XK_Sinh_e: "Sinh_e",
+ XK_Sinh_e2: "Sinh_e2",
+ XK_Sinh_ee: "Sinh_ee",
+ XK_Sinh_ee2: "Sinh_ee2",
+ XK_Sinh_fa: "Sinh_fa",
+ XK_Sinh_ga: "Sinh_ga",
+ XK_Sinh_gha: "Sinh_gha",
+ XK_Sinh_h2: "Sinh_h2",
+ XK_Sinh_ha: "Sinh_ha",
+ XK_Sinh_i: "Sinh_i",
+ XK_Sinh_i2: "Sinh_i2",
+ XK_Sinh_ii: "Sinh_ii",
+ XK_Sinh_ii2: "Sinh_ii2",
+ XK_Sinh_ja: "Sinh_ja",
+ XK_Sinh_jha: "Sinh_jha",
+ XK_Sinh_jnya: "Sinh_jnya",
+ XK_Sinh_ka: "Sinh_ka",
+ XK_Sinh_kha: "Sinh_kha",
+ XK_Sinh_kunddaliya: "Sinh_kunddaliya",
+ XK_Sinh_la: "Sinh_la",
+ XK_Sinh_lla: "Sinh_lla",
+ XK_Sinh_lu: "Sinh_lu",
+ XK_Sinh_lu2: "Sinh_lu2",
+ XK_Sinh_luu: "Sinh_luu",
+ XK_Sinh_luu2: "Sinh_luu2",
+ XK_Sinh_ma: "Sinh_ma",
+ XK_Sinh_mba: "Sinh_mba",
+ XK_Sinh_na: "Sinh_na",
+ XK_Sinh_ndda: "Sinh_ndda",
+ XK_Sinh_ndha: "Sinh_ndha",
+ XK_Sinh_ng: "Sinh_ng",
+ XK_Sinh_ng2: "Sinh_ng2",
+ XK_Sinh_nga: "Sinh_nga",
+ XK_Sinh_nja: "Sinh_nja",
+ XK_Sinh_nna: "Sinh_nna",
+ XK_Sinh_nya: "Sinh_nya",
+ XK_Sinh_o: "Sinh_o",
+ XK_Sinh_o2: "Sinh_o2",
+ XK_Sinh_oo: "Sinh_oo",
+ XK_Sinh_oo2: "Sinh_oo2",
+ XK_Sinh_pa: "Sinh_pa",
+ XK_Sinh_pha: "Sinh_pha",
+ XK_Sinh_ra: "Sinh_ra",
+ XK_Sinh_ri: "Sinh_ri",
+ XK_Sinh_rii: "Sinh_rii",
+ XK_Sinh_ru2: "Sinh_ru2",
+ XK_Sinh_ruu2: "Sinh_ruu2",
+ XK_Sinh_sa: "Sinh_sa",
+ XK_Sinh_sha: "Sinh_sha",
+ XK_Sinh_ssha: "Sinh_ssha",
+ XK_Sinh_tha: "Sinh_tha",
+ XK_Sinh_thha: "Sinh_thha",
+ XK_Sinh_tta: "Sinh_tta",
+ XK_Sinh_ttha: "Sinh_ttha",
+ XK_Sinh_u: "Sinh_u",
+ XK_Sinh_u2: "Sinh_u2",
+ XK_Sinh_uu: "Sinh_uu",
+ XK_Sinh_uu2: "Sinh_uu2",
+ XK_Sinh_va: "Sinh_va",
+ XK_Sinh_ya: "Sinh_ya",
+ XK_SlowKeys_Enable: "SlowKeys_Enable",
+ XK_StickyKeys_Enable: "StickyKeys_Enable",
+ XK_Super_L: "Super_L",
+ XK_Super_R: "Super_R",
+ XK_Sys_Req: "Sys_Req",
+ XK_T: "T",
+ XK_THORN: "THORN",
+ XK_Tab: "Tab",
+ XK_Tabovedot: "Tabovedot",
+ XK_Tcaron: "Tcaron",
+ XK_Tcedilla: "Tcedilla",
+ XK_Terminate_Server: "Terminate_Server",
+ XK_Thai_baht: "Thai_baht",
+ XK_Thai_bobaimai: "Thai_bobaimai",
+ XK_Thai_chochan: "Thai_chochan",
+ XK_Thai_chochang: "Thai_chochang",
+ XK_Thai_choching: "Thai_choching",
+ XK_Thai_chochoe: "Thai_chochoe",
+ XK_Thai_dochada: "Thai_dochada",
+ XK_Thai_dodek: "Thai_dodek",
+ XK_Thai_fofa: "Thai_fofa",
+ XK_Thai_fofan: "Thai_fofan",
+ XK_Thai_hohip: "Thai_hohip",
+ XK_Thai_honokhuk: "Thai_honokhuk",
+ XK_Thai_khokhai: "Thai_khokhai",
+ XK_Thai_khokhon: "Thai_khokhon",
+ XK_Thai_khokhuat: "Thai_khokhuat",
+ XK_Thai_khokhwai: "Thai_khokhwai",
+ XK_Thai_khorakhang: "Thai_khorakhang",
+ XK_Thai_kokai: "Thai_kokai",
+ XK_Thai_lakkhangyao: "Thai_lakkhangyao",
+ XK_Thai_lekchet: "Thai_lekchet",
+ XK_Thai_lekha: "Thai_lekha",
+ XK_Thai_lekhok: "Thai_lekhok",
+ XK_Thai_lekkao: "Thai_lekkao",
+ XK_Thai_leknung: "Thai_leknung",
+ XK_Thai_lekpaet: "Thai_lekpaet",
+ XK_Thai_leksam: "Thai_leksam",
+ XK_Thai_leksi: "Thai_leksi",
+ XK_Thai_leksong: "Thai_leksong",
+ XK_Thai_leksun: "Thai_leksun",
+ XK_Thai_lochula: "Thai_lochula",
+ XK_Thai_loling: "Thai_loling",
+ XK_Thai_lu: "Thai_lu",
+ XK_Thai_maichattawa: "Thai_maichattawa",
+ XK_Thai_maiek: "Thai_maiek",
+ XK_Thai_maihanakat: "Thai_maihanakat",
+ XK_Thai_maihanakat_maitho: "Thai_maihanakat_maitho",
+ XK_Thai_maitaikhu: "Thai_maitaikhu",
+ XK_Thai_maitho: "Thai_maitho",
+ XK_Thai_maitri: "Thai_maitri",
+ XK_Thai_maiyamok: "Thai_maiyamok",
+ XK_Thai_moma: "Thai_moma",
+ XK_Thai_ngongu: "Thai_ngongu",
+ XK_Thai_nikhahit: "Thai_nikhahit",
+ XK_Thai_nonen: "Thai_nonen",
+ XK_Thai_nonu: "Thai_nonu",
+ XK_Thai_oang: "Thai_oang",
+ XK_Thai_paiyannoi: "Thai_paiyannoi",
+ XK_Thai_phinthu: "Thai_phinthu",
+ XK_Thai_phophan: "Thai_phophan",
+ XK_Thai_phophung: "Thai_phophung",
+ XK_Thai_phosamphao: "Thai_phosamphao",
+ XK_Thai_popla: "Thai_popla",
+ XK_Thai_rorua: "Thai_rorua",
+ XK_Thai_ru: "Thai_ru",
+ XK_Thai_saraa: "Thai_saraa",
+ XK_Thai_saraaa: "Thai_saraaa",
+ XK_Thai_saraae: "Thai_saraae",
+ XK_Thai_saraaimaimalai: "Thai_saraaimaimalai",
+ XK_Thai_saraaimaimuan: "Thai_saraaimaimuan",
+ XK_Thai_saraam: "Thai_saraam",
+ XK_Thai_sarae: "Thai_sarae",
+ XK_Thai_sarai: "Thai_sarai",
+ XK_Thai_saraii: "Thai_saraii",
+ XK_Thai_sarao: "Thai_sarao",
+ XK_Thai_sarau: "Thai_sarau",
+ XK_Thai_saraue: "Thai_saraue",
+ XK_Thai_sarauee: "Thai_sarauee",
+ XK_Thai_sarauu: "Thai_sarauu",
+ XK_Thai_sorusi: "Thai_sorusi",
+ XK_Thai_sosala: "Thai_sosala",
+ XK_Thai_soso: "Thai_soso",
+ XK_Thai_sosua: "Thai_sosua",
+ XK_Thai_thanthakhat: "Thai_thanthakhat",
+ XK_Thai_thonangmontho: "Thai_thonangmontho",
+ XK_Thai_thophuthao: "Thai_thophuthao",
+ XK_Thai_thothahan: "Thai_thothahan",
+ XK_Thai_thothan: "Thai_thothan",
+ XK_Thai_thothong: "Thai_thothong",
+ XK_Thai_thothung: "Thai_thothung",
+ XK_Thai_topatak: "Thai_topatak",
+ XK_Thai_totao: "Thai_totao",
+ XK_Thai_wowaen: "Thai_wowaen",
+ XK_Thai_yoyak: "Thai_yoyak",
+ XK_Thai_yoying: "Thai_yoying",
+ XK_Touroku: "Touroku",
+ XK_Tslash: "Tslash",
+ XK_U: "U",
+ XK_Uacute: "Uacute",
+ XK_Ubelowdot: "Ubelowdot",
+ XK_Ubreve: "Ubreve",
+ XK_Ucircumflex: "Ucircumflex",
+ XK_Udiaeresis: "Udiaeresis",
+ XK_Udoubleacute: "Udoubleacute",
+ XK_Ugrave: "Ugrave",
+ XK_Uhook: "Uhook",
+ XK_Uhorn: "Uhorn",
+ XK_Uhornacute: "Uhornacute",
+ XK_Uhornbelowdot: "Uhornbelowdot",
+ XK_Uhorngrave: "Uhorngrave",
+ XK_Uhornhook: "Uhornhook",
+ XK_Uhorntilde: "Uhorntilde",
+ XK_Ukrainian_GHE_WITH_UPTURN: "Ukrainian_GHE_WITH_UPTURN",
+ XK_Ukrainian_I: "Ukrainian_I",
+ XK_Ukrainian_IE: "Ukrainian_IE",
+ XK_Ukrainian_YI: "Ukrainian_YI",
+ XK_Ukrainian_ghe_with_upturn: "Ukrainian_ghe_with_upturn",
+ XK_Ukrainian_i: "Ukrainian_i",
+ XK_Ukrainian_ie: "Ukrainian_ie",
+ XK_Ukrainian_yi: "Ukrainian_yi",
+ XK_Umacron: "Umacron",
+ XK_Undo: "Undo",
+ XK_Uogonek: "Uogonek",
+ XK_Up: "Up",
+ XK_Uring: "Uring",
+ XK_Utilde: "Utilde",
+ XK_V: "V",
+ XK_VoidSymbol: "VoidSymbol",
+ XK_W: "W",
+ XK_Wacute: "Wacute",
+ XK_Wcircumflex: "Wcircumflex",
+ XK_Wdiaeresis: "Wdiaeresis",
+ XK_Wgrave: "Wgrave",
+ XK_WonSign: "WonSign",
+ XK_X: "X",
+ XK_Xabovedot: "Xabovedot",
+ XK_Y: "Y",
+ XK_Yacute: "Yacute",
+ XK_Ybelowdot: "Ybelowdot",
+ XK_Ycircumflex: "Ycircumflex",
+ XK_Ydiaeresis: "Ydiaeresis",
+ XK_Ygrave: "Ygrave",
+ XK_Yhook: "Yhook",
+ XK_Ytilde: "Ytilde",
+ XK_Z: "Z",
+ XK_Zabovedot: "Zabovedot",
+ XK_Zacute: "Zacute",
+ XK_Zcaron: "Zcaron",
+ XK_Zenkaku: "Zenkaku",
+ XK_Zenkaku_Hankaku: "Zenkaku_Hankaku",
+ XK_Zstroke: "Zstroke",
+ XK_a: "a",
+ XK_aacute: "aacute",
+ XK_abelowdot: "abelowdot",
+ XK_abovedot: "abovedot",
+ XK_abreve: "abreve",
+ XK_abreveacute: "abreveacute",
+ XK_abrevebelowdot: "abrevebelowdot",
+ XK_abrevegrave: "abrevegrave",
+ XK_abrevehook: "abrevehook",
+ XK_abrevetilde: "abrevetilde",
+ XK_acircumflex: "acircumflex",
+ XK_acircumflexacute: "acircumflexacute",
+ XK_acircumflexbelowdot: "acircumflexbelowdot",
+ XK_acircumflexgrave: "acircumflexgrave",
+ XK_acircumflexhook: "acircumflexhook",
+ XK_acircumflextilde: "acircumflextilde",
+ XK_acute: "acute",
+ XK_adiaeresis: "adiaeresis",
+ XK_ae: "ae",
+ XK_agrave: "agrave",
+ XK_ahook: "ahook",
+ XK_amacron: "amacron",
+ XK_ampersand: "ampersand",
+ XK_aogonek: "aogonek",
+ XK_apostrophe: "apostrophe",
+ XK_approxeq: "approxeq",
+ XK_approximate: "approximate",
+ XK_aring: "aring",
+ XK_asciicircum: "asciicircum",
+ XK_asciitilde: "asciitilde",
+ XK_asterisk: "asterisk",
+ XK_at: "at",
+ XK_atilde: "atilde",
+ XK_b: "b",
+ XK_babovedot: "babovedot",
+ XK_backslash: "backslash",
+ XK_ballotcross: "ballotcross",
+ XK_bar: "bar",
+ XK_because: "because",
+ XK_blank: "blank",
+ XK_botintegral: "botintegral",
+ XK_botleftparens: "botleftparens",
+ XK_botleftsqbracket: "botleftsqbracket",
+ XK_botleftsummation: "botleftsummation",
+ XK_botrightparens: "botrightparens",
+ XK_botrightsqbracket: "botrightsqbracket",
+ XK_botrightsummation: "botrightsummation",
+ XK_bott: "bott",
+ XK_botvertsummationconnector: "botvertsummationconnector",
+ XK_braceleft: "braceleft",
+ XK_braceright: "braceright",
+ XK_bracketleft: "bracketleft",
+ XK_bracketright: "bracketright",
+ XK_braille_blank: "braille_blank",
+ XK_braille_dot_1: "braille_dot_1",
+ XK_braille_dot_10: "braille_dot_10",
+ XK_braille_dot_2: "braille_dot_2",
+ XK_braille_dot_3: "braille_dot_3",
+ XK_braille_dot_4: "braille_dot_4",
+ XK_braille_dot_5: "braille_dot_5",
+ XK_braille_dot_6: "braille_dot_6",
+ XK_braille_dot_7: "braille_dot_7",
+ XK_braille_dot_8: "braille_dot_8",
+ XK_braille_dot_9: "braille_dot_9",
+ XK_braille_dots_1: "braille_dots_1",
+ XK_braille_dots_12: "braille_dots_12",
+ XK_braille_dots_123: "braille_dots_123",
+ XK_braille_dots_1234: "braille_dots_1234",
+ XK_braille_dots_12345: "braille_dots_12345",
+ XK_braille_dots_123456: "braille_dots_123456",
+ XK_braille_dots_1234567: "braille_dots_1234567",
+ XK_braille_dots_12345678: "braille_dots_12345678",
+ XK_braille_dots_1234568: "braille_dots_1234568",
+ XK_braille_dots_123457: "braille_dots_123457",
+ XK_braille_dots_1234578: "braille_dots_1234578",
+ XK_braille_dots_123458: "braille_dots_123458",
+ XK_braille_dots_12346: "braille_dots_12346",
+ XK_braille_dots_123467: "braille_dots_123467",
+ XK_braille_dots_1234678: "braille_dots_1234678",
+ XK_braille_dots_123468: "braille_dots_123468",
+ XK_braille_dots_12347: "braille_dots_12347",
+ XK_braille_dots_123478: "braille_dots_123478",
+ XK_braille_dots_12348: "braille_dots_12348",
+ XK_braille_dots_1235: "braille_dots_1235",
+ XK_braille_dots_12356: "braille_dots_12356",
+ XK_braille_dots_123567: "braille_dots_123567",
+ XK_braille_dots_1235678: "braille_dots_1235678",
+ XK_braille_dots_123568: "braille_dots_123568",
+ XK_braille_dots_12357: "braille_dots_12357",
+ XK_braille_dots_123578: "braille_dots_123578",
+ XK_braille_dots_12358: "braille_dots_12358",
+ XK_braille_dots_1236: "braille_dots_1236",
+ XK_braille_dots_12367: "braille_dots_12367",
+ XK_braille_dots_123678: "braille_dots_123678",
+ XK_braille_dots_12368: "braille_dots_12368",
+ XK_braille_dots_1237: "braille_dots_1237",
+ XK_braille_dots_12378: "braille_dots_12378",
+ XK_braille_dots_1238: "braille_dots_1238",
+ XK_braille_dots_124: "braille_dots_124",
+ XK_braille_dots_1245: "braille_dots_1245",
+ XK_braille_dots_12456: "braille_dots_12456",
+ XK_braille_dots_124567: "braille_dots_124567",
+ XK_braille_dots_1245678: "braille_dots_1245678",
+ XK_braille_dots_124568: "braille_dots_124568",
+ XK_braille_dots_12457: "braille_dots_12457",
+ XK_braille_dots_124578: "braille_dots_124578",
+ XK_braille_dots_12458: "braille_dots_12458",
+ XK_braille_dots_1246: "braille_dots_1246",
+ XK_braille_dots_12467: "braille_dots_12467",
+ XK_braille_dots_124678: "braille_dots_124678",
+ XK_braille_dots_12468: "braille_dots_12468",
+ XK_braille_dots_1247: "braille_dots_1247",
+ XK_braille_dots_12478: "braille_dots_12478",
+ XK_braille_dots_1248: "braille_dots_1248",
+ XK_braille_dots_125: "braille_dots_125",
+ XK_braille_dots_1256: "braille_dots_1256",
+ XK_braille_dots_12567: "braille_dots_12567",
+ XK_braille_dots_125678: "braille_dots_125678",
+ XK_braille_dots_12568: "braille_dots_12568",
+ XK_braille_dots_1257: "braille_dots_1257",
+ XK_braille_dots_12578: "braille_dots_12578",
+ XK_braille_dots_1258: "braille_dots_1258",
+ XK_braille_dots_126: "braille_dots_126",
+ XK_braille_dots_1267: "braille_dots_1267",
+ XK_braille_dots_12678: "braille_dots_12678",
+ XK_braille_dots_1268: "braille_dots_1268",
+ XK_braille_dots_127: "braille_dots_127",
+ XK_braille_dots_1278: "braille_dots_1278",
+ XK_braille_dots_128: "braille_dots_128",
+ XK_braille_dots_13: "braille_dots_13",
+ XK_braille_dots_134: "braille_dots_134",
+ XK_braille_dots_1345: "braille_dots_1345",
+ XK_braille_dots_13456: "braille_dots_13456",
+ XK_braille_dots_134567: "braille_dots_134567",
+ XK_braille_dots_1345678: "braille_dots_1345678",
+ XK_braille_dots_134568: "braille_dots_134568",
+ XK_braille_dots_13457: "braille_dots_13457",
+ XK_braille_dots_134578: "braille_dots_134578",
+ XK_braille_dots_13458: "braille_dots_13458",
+ XK_braille_dots_1346: "braille_dots_1346",
+ XK_braille_dots_13467: "braille_dots_13467",
+ XK_braille_dots_134678: "braille_dots_134678",
+ XK_braille_dots_13468: "braille_dots_13468",
+ XK_braille_dots_1347: "braille_dots_1347",
+ XK_braille_dots_13478: "braille_dots_13478",
+ XK_braille_dots_1348: "braille_dots_1348",
+ XK_braille_dots_135: "braille_dots_135",
+ XK_braille_dots_1356: "braille_dots_1356",
+ XK_braille_dots_13567: "braille_dots_13567",
+ XK_braille_dots_135678: "braille_dots_135678",
+ XK_braille_dots_13568: "braille_dots_13568",
+ XK_braille_dots_1357: "braille_dots_1357",
+ XK_braille_dots_13578: "braille_dots_13578",
+ XK_braille_dots_1358: "braille_dots_1358",
+ XK_braille_dots_136: "braille_dots_136",
+ XK_braille_dots_1367: "braille_dots_1367",
+ XK_braille_dots_13678: "braille_dots_13678",
+ XK_braille_dots_1368: "braille_dots_1368",
+ XK_braille_dots_137: "braille_dots_137",
+ XK_braille_dots_1378: "braille_dots_1378",
+ XK_braille_dots_138: "braille_dots_138",
+ XK_braille_dots_14: "braille_dots_14",
+ XK_braille_dots_145: "braille_dots_145",
+ XK_braille_dots_1456: "braille_dots_1456",
+ XK_braille_dots_14567: "braille_dots_14567",
+ XK_braille_dots_145678: "braille_dots_145678",
+ XK_braille_dots_14568: "braille_dots_14568",
+ XK_braille_dots_1457: "braille_dots_1457",
+ XK_braille_dots_14578: "braille_dots_14578",
+ XK_braille_dots_1458: "braille_dots_1458",
+ XK_braille_dots_146: "braille_dots_146",
+ XK_braille_dots_1467: "braille_dots_1467",
+ XK_braille_dots_14678: "braille_dots_14678",
+ XK_braille_dots_1468: "braille_dots_1468",
+ XK_braille_dots_147: "braille_dots_147",
+ XK_braille_dots_1478: "braille_dots_1478",
+ XK_braille_dots_148: "braille_dots_148",
+ XK_braille_dots_15: "braille_dots_15",
+ XK_braille_dots_156: "braille_dots_156",
+ XK_braille_dots_1567: "braille_dots_1567",
+ XK_braille_dots_15678: "braille_dots_15678",
+ XK_braille_dots_1568: "braille_dots_1568",
+ XK_braille_dots_157: "braille_dots_157",
+ XK_braille_dots_1578: "braille_dots_1578",
+ XK_braille_dots_158: "braille_dots_158",
+ XK_braille_dots_16: "braille_dots_16",
+ XK_braille_dots_167: "braille_dots_167",
+ XK_braille_dots_1678: "braille_dots_1678",
+ XK_braille_dots_168: "braille_dots_168",
+ XK_braille_dots_17: "braille_dots_17",
+ XK_braille_dots_178: "braille_dots_178",
+ XK_braille_dots_18: "braille_dots_18",
+ XK_braille_dots_2: "braille_dots_2",
+ XK_braille_dots_23: "braille_dots_23",
+ XK_braille_dots_234: "braille_dots_234",
+ XK_braille_dots_2345: "braille_dots_2345",
+ XK_braille_dots_23456: "braille_dots_23456",
+ XK_braille_dots_234567: "braille_dots_234567",
+ XK_braille_dots_2345678: "braille_dots_2345678",
+ XK_braille_dots_234568: "braille_dots_234568",
+ XK_braille_dots_23457: "braille_dots_23457",
+ XK_braille_dots_234578: "braille_dots_234578",
+ XK_braille_dots_23458: "braille_dots_23458",
+ XK_braille_dots_2346: "braille_dots_2346",
+ XK_braille_dots_23467: "braille_dots_23467",
+ XK_braille_dots_234678: "braille_dots_234678",
+ XK_braille_dots_23468: "braille_dots_23468",
+ XK_braille_dots_2347: "braille_dots_2347",
+ XK_braille_dots_23478: "braille_dots_23478",
+ XK_braille_dots_2348: "braille_dots_2348",
+ XK_braille_dots_235: "braille_dots_235",
+ XK_braille_dots_2356: "braille_dots_2356",
+ XK_braille_dots_23567: "braille_dots_23567",
+ XK_braille_dots_235678: "braille_dots_235678",
+ XK_braille_dots_23568: "braille_dots_23568",
+ XK_braille_dots_2357: "braille_dots_2357",
+ XK_braille_dots_23578: "braille_dots_23578",
+ XK_braille_dots_2358: "braille_dots_2358",
+ XK_braille_dots_236: "braille_dots_236",
+ XK_braille_dots_2367: "braille_dots_2367",
+ XK_braille_dots_23678: "braille_dots_23678",
+ XK_braille_dots_2368: "braille_dots_2368",
+ XK_braille_dots_237: "braille_dots_237",
+ XK_braille_dots_2378: "braille_dots_2378",
+ XK_braille_dots_238: "braille_dots_238",
+ XK_braille_dots_24: "braille_dots_24",
+ XK_braille_dots_245: "braille_dots_245",
+ XK_braille_dots_2456: "braille_dots_2456",
+ XK_braille_dots_24567: "braille_dots_24567",
+ XK_braille_dots_245678: "braille_dots_245678",
+ XK_braille_dots_24568: "braille_dots_24568",
+ XK_braille_dots_2457: "braille_dots_2457",
+ XK_braille_dots_24578: "braille_dots_24578",
+ XK_braille_dots_2458: "braille_dots_2458",
+ XK_braille_dots_246: "braille_dots_246",
+ XK_braille_dots_2467: "braille_dots_2467",
+ XK_braille_dots_24678: "braille_dots_24678",
+ XK_braille_dots_2468: "braille_dots_2468",
+ XK_braille_dots_247: "braille_dots_247",
+ XK_braille_dots_2478: "braille_dots_2478",
+ XK_braille_dots_248: "braille_dots_248",
+ XK_braille_dots_25: "braille_dots_25",
+ XK_braille_dots_256: "braille_dots_256",
+ XK_braille_dots_2567: "braille_dots_2567",
+ XK_braille_dots_25678: "braille_dots_25678",
+ XK_braille_dots_2568: "braille_dots_2568",
+ XK_braille_dots_257: "braille_dots_257",
+ XK_braille_dots_2578: "braille_dots_2578",
+ XK_braille_dots_258: "braille_dots_258",
+ XK_braille_dots_26: "braille_dots_26",
+ XK_braille_dots_267: "braille_dots_267",
+ XK_braille_dots_2678: "braille_dots_2678",
+ XK_braille_dots_268: "braille_dots_268",
+ XK_braille_dots_27: "braille_dots_27",
+ XK_braille_dots_278: "braille_dots_278",
+ XK_braille_dots_28: "braille_dots_28",
+ XK_braille_dots_3: "braille_dots_3",
+ XK_braille_dots_34: "braille_dots_34",
+ XK_braille_dots_345: "braille_dots_345",
+ XK_braille_dots_3456: "braille_dots_3456",
+ XK_braille_dots_34567: "braille_dots_34567",
+ XK_braille_dots_345678: "braille_dots_345678",
+ XK_braille_dots_34568: "braille_dots_34568",
+ XK_braille_dots_3457: "braille_dots_3457",
+ XK_braille_dots_34578: "braille_dots_34578",
+ XK_braille_dots_3458: "braille_dots_3458",
+ XK_braille_dots_346: "braille_dots_346",
+ XK_braille_dots_3467: "braille_dots_3467",
+ XK_braille_dots_34678: "braille_dots_34678",
+ XK_braille_dots_3468: "braille_dots_3468",
+ XK_braille_dots_347: "braille_dots_347",
+ XK_braille_dots_3478: "braille_dots_3478",
+ XK_braille_dots_348: "braille_dots_348",
+ XK_braille_dots_35: "braille_dots_35",
+ XK_braille_dots_356: "braille_dots_356",
+ XK_braille_dots_3567: "braille_dots_3567",
+ XK_braille_dots_35678: "braille_dots_35678",
+ XK_braille_dots_3568: "braille_dots_3568",
+ XK_braille_dots_357: "braille_dots_357",
+ XK_braille_dots_3578: "braille_dots_3578",
+ XK_braille_dots_358: "braille_dots_358",
+ XK_braille_dots_36: "braille_dots_36",
+ XK_braille_dots_367: "braille_dots_367",
+ XK_braille_dots_3678: "braille_dots_3678",
+ XK_braille_dots_368: "braille_dots_368",
+ XK_braille_dots_37: "braille_dots_37",
+ XK_braille_dots_378: "braille_dots_378",
+ XK_braille_dots_38: "braille_dots_38",
+ XK_braille_dots_4: "braille_dots_4",
+ XK_braille_dots_45: "braille_dots_45",
+ XK_braille_dots_456: "braille_dots_456",
+ XK_braille_dots_4567: "braille_dots_4567",
+ XK_braille_dots_45678: "braille_dots_45678",
+ XK_braille_dots_4568: "braille_dots_4568",
+ XK_braille_dots_457: "braille_dots_457",
+ XK_braille_dots_4578: "braille_dots_4578",
+ XK_braille_dots_458: "braille_dots_458",
+ XK_braille_dots_46: "braille_dots_46",
+ XK_braille_dots_467: "braille_dots_467",
+ XK_braille_dots_4678: "braille_dots_4678",
+ XK_braille_dots_468: "braille_dots_468",
+ XK_braille_dots_47: "braille_dots_47",
+ XK_braille_dots_478: "braille_dots_478",
+ XK_braille_dots_48: "braille_dots_48",
+ XK_braille_dots_5: "braille_dots_5",
+ XK_braille_dots_56: "braille_dots_56",
+ XK_braille_dots_567: "braille_dots_567",
+ XK_braille_dots_5678: "braille_dots_5678",
+ XK_braille_dots_568: "braille_dots_568",
+ XK_braille_dots_57: "braille_dots_57",
+ XK_braille_dots_578: "braille_dots_578",
+ XK_braille_dots_58: "braille_dots_58",
+ XK_braille_dots_6: "braille_dots_6",
+ XK_braille_dots_67: "braille_dots_67",
+ XK_braille_dots_678: "braille_dots_678",
+ XK_braille_dots_68: "braille_dots_68",
+ XK_braille_dots_7: "braille_dots_7",
+ XK_braille_dots_78: "braille_dots_78",
+ XK_braille_dots_8: "braille_dots_8",
+ XK_breve: "breve",
+ XK_brokenbar: "brokenbar",
+ XK_c: "c",
+ XK_c_h: "c_h",
+ XK_cabovedot: "cabovedot",
+ XK_cacute: "cacute",
+ XK_careof: "careof",
+ XK_caret: "caret",
+ XK_caron: "caron",
+ XK_ccaron: "ccaron",
+ XK_ccedilla: "ccedilla",
+ XK_ccircumflex: "ccircumflex",
+ XK_cedilla: "cedilla",
+ XK_cent: "cent",
+ XK_ch: "ch",
+ XK_checkerboard: "checkerboard",
+ XK_checkmark: "checkmark",
+ XK_circle: "circle",
+ XK_club: "club",
+ XK_colon: "colon",
+ XK_comma: "comma",
+ XK_containsas: "containsas",
+ XK_copyright: "copyright",
+ XK_cr: "cr",
+ XK_crossinglines: "crossinglines",
+ XK_cuberoot: "cuberoot",
+ XK_currency: "currency",
+ XK_cursor: "cursor",
+ XK_d: "d",
+ XK_dabovedot: "dabovedot",
+ XK_dagger: "dagger",
+ XK_dcaron: "dcaron",
+ XK_dead_A: "dead_A",
+ XK_dead_E: "dead_E",
+ XK_dead_I: "dead_I",
+ XK_dead_O: "dead_O",
+ XK_dead_U: "dead_U",
+ XK_dead_a: "dead_a",
+ XK_dead_abovecomma: "dead_abovecomma",
+ XK_dead_abovedot: "dead_abovedot",
+ XK_dead_abovereversedcomma: "dead_abovereversedcomma",
+ XK_dead_abovering: "dead_abovering",
+ XK_dead_aboveverticalline: "dead_aboveverticalline",
+ XK_dead_acute: "dead_acute",
+ XK_dead_belowbreve: "dead_belowbreve",
+ XK_dead_belowcircumflex: "dead_belowcircumflex",
+ XK_dead_belowcomma: "dead_belowcomma",
+ XK_dead_belowdiaeresis: "dead_belowdiaeresis",
+ XK_dead_belowdot: "dead_belowdot",
+ XK_dead_belowmacron: "dead_belowmacron",
+ XK_dead_belowring: "dead_belowring",
+ XK_dead_belowtilde: "dead_belowtilde",
+ XK_dead_belowverticalline: "dead_belowverticalline",
+ XK_dead_breve: "dead_breve",
+ XK_dead_capital_schwa: "dead_capital_schwa",
+ XK_dead_caron: "dead_caron",
+ XK_dead_cedilla: "dead_cedilla",
+ XK_dead_circumflex: "dead_circumflex",
+ XK_dead_currency: "dead_currency",
+ XK_dead_diaeresis: "dead_diaeresis",
+ XK_dead_doubleacute: "dead_doubleacute",
+ XK_dead_doublegrave: "dead_doublegrave",
+ XK_dead_e: "dead_e",
+ XK_dead_grave: "dead_grave",
+ XK_dead_greek: "dead_greek",
+ XK_dead_hook: "dead_hook",
+ XK_dead_horn: "dead_horn",
+ XK_dead_i: "dead_i",
+ XK_dead_invertedbreve: "dead_invertedbreve",
+ XK_dead_iota: "dead_iota",
+ XK_dead_longsolidusoverlay: "dead_longsolidusoverlay",
+ XK_dead_lowline: "dead_lowline",
+ XK_dead_macron: "dead_macron",
+ XK_dead_o: "dead_o",
+ XK_dead_ogonek: "dead_ogonek",
+ XK_dead_semivoiced_sound: "dead_semivoiced_sound",
+ XK_dead_small_schwa: "dead_small_schwa",
+ XK_dead_stroke: "dead_stroke",
+ XK_dead_tilde: "dead_tilde",
+ XK_dead_u: "dead_u",
+ XK_dead_voiced_sound: "dead_voiced_sound",
+ XK_decimalpoint: "decimalpoint",
+ XK_degree: "degree",
+ XK_diaeresis: "diaeresis",
+ XK_diamond: "diamond",
+ XK_digitspace: "digitspace",
+ XK_dintegral: "dintegral",
+ XK_division: "division",
+ XK_dollar: "dollar",
+ XK_doubbaselinedot: "doubbaselinedot",
+ XK_doubleacute: "doubleacute",
+ XK_doubledagger: "doubledagger",
+ XK_doublelowquotemark: "doublelowquotemark",
+ XK_downarrow: "downarrow",
+ XK_downcaret: "downcaret",
+ XK_downshoe: "downshoe",
+ XK_downstile: "downstile",
+ XK_downtack: "downtack",
+ XK_dstroke: "dstroke",
+ XK_e: "e",
+ XK_eabovedot: "eabovedot",
+ XK_eacute: "eacute",
+ XK_ebelowdot: "ebelowdot",
+ XK_ecaron: "ecaron",
+ XK_ecircumflex: "ecircumflex",
+ XK_ecircumflexacute: "ecircumflexacute",
+ XK_ecircumflexbelowdot: "ecircumflexbelowdot",
+ XK_ecircumflexgrave: "ecircumflexgrave",
+ XK_ecircumflexhook: "ecircumflexhook",
+ XK_ecircumflextilde: "ecircumflextilde",
+ XK_ediaeresis: "ediaeresis",
+ XK_egrave: "egrave",
+ XK_ehook: "ehook",
+ XK_eightsubscript: "eightsubscript",
+ XK_eightsuperior: "eightsuperior",
+ XK_elementof: "elementof",
+ XK_ellipsis: "ellipsis",
+ XK_em3space: "em3space",
+ XK_em4space: "em4space",
+ XK_emacron: "emacron",
+ XK_emdash: "emdash",
+ XK_emfilledcircle: "emfilledcircle",
+ XK_emfilledrect: "emfilledrect",
+ XK_emopencircle: "emopencircle",
+ XK_emopenrectangle: "emopenrectangle",
+ XK_emptyset: "emptyset",
+ XK_emspace: "emspace",
+ XK_endash: "endash",
+ XK_enfilledcircbullet: "enfilledcircbullet",
+ XK_enfilledsqbullet: "enfilledsqbullet",
+ XK_eng: "eng",
+ XK_enopencircbullet: "enopencircbullet",
+ XK_enopensquarebullet: "enopensquarebullet",
+ XK_enspace: "enspace",
+ XK_eogonek: "eogonek",
+ XK_equal: "equal",
+ XK_eth: "eth",
+ XK_etilde: "etilde",
+ XK_exclam: "exclam",
+ XK_exclamdown: "exclamdown",
+ XK_ezh: "ezh",
+ XK_f: "f",
+ XK_fabovedot: "fabovedot",
+ XK_femalesymbol: "femalesymbol",
+ XK_ff: "ff",
+ XK_figdash: "figdash",
+ XK_filledlefttribullet: "filledlefttribullet",
+ XK_filledrectbullet: "filledrectbullet",
+ XK_filledrighttribullet: "filledrighttribullet",
+ XK_filledtribulletdown: "filledtribulletdown",
+ XK_filledtribulletup: "filledtribulletup",
+ XK_fiveeighths: "fiveeighths",
+ XK_fivesixths: "fivesixths",
+ XK_fivesubscript: "fivesubscript",
+ XK_fivesuperior: "fivesuperior",
+ XK_fourfifths: "fourfifths",
+ XK_foursubscript: "foursubscript",
+ XK_foursuperior: "foursuperior",
+ XK_fourthroot: "fourthroot",
+ XK_function: "function",
+ XK_g: "g",
+ XK_gabovedot: "gabovedot",
+ XK_gbreve: "gbreve",
+ XK_gcaron: "gcaron",
+ XK_gcedilla: "gcedilla",
+ XK_gcircumflex: "gcircumflex",
+ XK_grave: "grave",
+ XK_greater: "greater",
+ XK_greaterthanequal: "greaterthanequal",
+ XK_guillemotleft: "guillemotleft",
+ XK_guillemotright: "guillemotright",
+ XK_h: "h",
+ XK_hairspace: "hairspace",
+ XK_hcircumflex: "hcircumflex",
+ XK_heart: "heart",
+ XK_hebrew_aleph: "hebrew_aleph",
+ XK_hebrew_ayin: "hebrew_ayin",
+ XK_hebrew_bet: "hebrew_bet",
+ XK_hebrew_chet: "hebrew_chet",
+ XK_hebrew_dalet: "hebrew_dalet",
+ XK_hebrew_doublelowline: "hebrew_doublelowline",
+ XK_hebrew_finalkaph: "hebrew_finalkaph",
+ XK_hebrew_finalmem: "hebrew_finalmem",
+ XK_hebrew_finalnun: "hebrew_finalnun",
+ XK_hebrew_finalpe: "hebrew_finalpe",
+ XK_hebrew_finalzade: "hebrew_finalzade",
+ XK_hebrew_gimel: "hebrew_gimel",
+ XK_hebrew_he: "hebrew_he",
+ XK_hebrew_kaph: "hebrew_kaph",
+ XK_hebrew_lamed: "hebrew_lamed",
+ XK_hebrew_mem: "hebrew_mem",
+ XK_hebrew_nun: "hebrew_nun",
+ XK_hebrew_pe: "hebrew_pe",
+ XK_hebrew_qoph: "hebrew_qoph",
+ XK_hebrew_resh: "hebrew_resh",
+ XK_hebrew_samech: "hebrew_samech",
+ XK_hebrew_shin: "hebrew_shin",
+ XK_hebrew_taw: "hebrew_taw",
+ XK_hebrew_tet: "hebrew_tet",
+ XK_hebrew_waw: "hebrew_waw",
+ XK_hebrew_yod: "hebrew_yod",
+ XK_hebrew_zade: "hebrew_zade",
+ XK_hebrew_zain: "hebrew_zain",
+ XK_hexagram: "hexagram",
+ XK_horizconnector: "horizconnector",
+ XK_horizlinescan1: "horizlinescan1",
+ XK_horizlinescan3: "horizlinescan3",
+ XK_horizlinescan5: "horizlinescan5",
+ XK_horizlinescan7: "horizlinescan7",
+ XK_horizlinescan9: "horizlinescan9",
+ XK_hstroke: "hstroke",
+ XK_ht: "ht",
+ XK_hyphen: "hyphen",
+ XK_i: "i",
+ XK_iacute: "iacute",
+ XK_ibelowdot: "ibelowdot",
+ XK_ibreve: "ibreve",
+ XK_icircumflex: "icircumflex",
+ XK_identical: "identical",
+ XK_idiaeresis: "idiaeresis",
+ XK_idotless: "idotless",
+ XK_ifonlyif: "ifonlyif",
+ XK_igrave: "igrave",
+ XK_ihook: "ihook",
+ XK_imacron: "imacron",
+ XK_implies: "implies",
+ XK_includedin: "includedin",
+ XK_includes: "includes",
+ XK_infinity: "infinity",
+ XK_integral: "integral",
+ XK_intersection: "intersection",
+ XK_iogonek: "iogonek",
+ XK_itilde: "itilde",
+ XK_j: "j",
+ XK_jcircumflex: "jcircumflex",
+ XK_jot: "jot",
+ XK_k: "k",
+ XK_kana_A: "kana_A",
+ XK_kana_CHI: "kana_CHI",
+ XK_kana_E: "kana_E",
+ XK_kana_FU: "kana_FU",
+ XK_kana_HA: "kana_HA",
+ XK_kana_HE: "kana_HE",
+ XK_kana_HI: "kana_HI",
+ XK_kana_HO: "kana_HO",
+ XK_kana_I: "kana_I",
+ XK_kana_KA: "kana_KA",
+ XK_kana_KE: "kana_KE",
+ XK_kana_KI: "kana_KI",
+ XK_kana_KO: "kana_KO",
+ XK_kana_KU: "kana_KU",
+ XK_kana_MA: "kana_MA",
+ XK_kana_ME: "kana_ME",
+ XK_kana_MI: "kana_MI",
+ XK_kana_MO: "kana_MO",
+ XK_kana_MU: "kana_MU",
+ XK_kana_N: "kana_N",
+ XK_kana_NA: "kana_NA",
+ XK_kana_NE: "kana_NE",
+ XK_kana_NI: "kana_NI",
+ XK_kana_NO: "kana_NO",
+ XK_kana_NU: "kana_NU",
+ XK_kana_O: "kana_O",
+ XK_kana_RA: "kana_RA",
+ XK_kana_RE: "kana_RE",
+ XK_kana_RI: "kana_RI",
+ XK_kana_RO: "kana_RO",
+ XK_kana_RU: "kana_RU",
+ XK_kana_SA: "kana_SA",
+ XK_kana_SE: "kana_SE",
+ XK_kana_SHI: "kana_SHI",
+ XK_kana_SO: "kana_SO",
+ XK_kana_SU: "kana_SU",
+ XK_kana_TA: "kana_TA",
+ XK_kana_TE: "kana_TE",
+ XK_kana_TO: "kana_TO",
+ XK_kana_TSU: "kana_TSU",
+ XK_kana_U: "kana_U",
+ XK_kana_WA: "kana_WA",
+ XK_kana_WO: "kana_WO",
+ XK_kana_YA: "kana_YA",
+ XK_kana_YO: "kana_YO",
+ XK_kana_YU: "kana_YU",
+ XK_kana_a: "kana_a",
+ XK_kana_closingbracket: "kana_closingbracket",
+ XK_kana_comma: "kana_comma",
+ XK_kana_conjunctive: "kana_conjunctive",
+ XK_kana_e: "kana_e",
+ XK_kana_fullstop: "kana_fullstop",
+ XK_kana_i: "kana_i",
+ XK_kana_o: "kana_o",
+ XK_kana_openingbracket: "kana_openingbracket",
+ XK_kana_tsu: "kana_tsu",
+ XK_kana_u: "kana_u",
+ XK_kana_ya: "kana_ya",
+ XK_kana_yo: "kana_yo",
+ XK_kana_yu: "kana_yu",
+ XK_kcedilla: "kcedilla",
+ XK_kra: "kra",
+ XK_l: "l",
+ XK_lacute: "lacute",
+ XK_latincross: "latincross",
+ XK_lbelowdot: "lbelowdot",
+ XK_lcaron: "lcaron",
+ XK_lcedilla: "lcedilla",
+ XK_leftanglebracket: "leftanglebracket",
+ XK_leftarrow: "leftarrow",
+ XK_leftcaret: "leftcaret",
+ XK_leftdoublequotemark: "leftdoublequotemark",
+ XK_leftmiddlecurlybrace: "leftmiddlecurlybrace",
+ XK_leftopentriangle: "leftopentriangle",
+ XK_leftpointer: "leftpointer",
+ XK_leftradical: "leftradical",
+ XK_leftshoe: "leftshoe",
+ XK_leftsinglequotemark: "leftsinglequotemark",
+ XK_leftt: "leftt",
+ XK_lefttack: "lefttack",
+ XK_less: "less",
+ XK_lessthanequal: "lessthanequal",
+ XK_lf: "lf",
+ XK_logicaland: "logicaland",
+ XK_logicalor: "logicalor",
+ XK_lowleftcorner: "lowleftcorner",
+ XK_lowrightcorner: "lowrightcorner",
+ XK_lstroke: "lstroke",
+ XK_m: "m",
+ XK_mabovedot: "mabovedot",
+ XK_macron: "macron",
+ XK_malesymbol: "malesymbol",
+ XK_maltesecross: "maltesecross",
+ XK_marker: "marker",
+ XK_masculine: "masculine",
+ XK_minus: "minus",
+ XK_minutes: "minutes",
+ XK_mu: "mu",
+ XK_multiply: "multiply",
+ XK_musicalflat: "musicalflat",
+ XK_musicalsharp: "musicalsharp",
+ XK_n: "n",
+ XK_nabla: "nabla",
+ XK_nacute: "nacute",
+ XK_ncaron: "ncaron",
+ XK_ncedilla: "ncedilla",
+ XK_ninesubscript: "ninesubscript",
+ XK_ninesuperior: "ninesuperior",
+ XK_nl: "nl",
+ XK_nobreakspace: "nobreakspace",
+ XK_notapproxeq: "notapproxeq",
+ XK_notelementof: "notelementof",
+ XK_notequal: "notequal",
+ XK_notidentical: "notidentical",
+ XK_notsign: "notsign",
+ XK_ntilde: "ntilde",
+ XK_numbersign: "numbersign",
+ XK_numerosign: "numerosign",
+ XK_o: "o",
+ XK_oacute: "oacute",
+ XK_obarred: "obarred",
+ XK_obelowdot: "obelowdot",
+ XK_ocaron: "ocaron",
+ XK_ocircumflex: "ocircumflex",
+ XK_ocircumflexacute: "ocircumflexacute",
+ XK_ocircumflexbelowdot: "ocircumflexbelowdot",
+ XK_ocircumflexgrave: "ocircumflexgrave",
+ XK_ocircumflexhook: "ocircumflexhook",
+ XK_ocircumflextilde: "ocircumflextilde",
+ XK_odiaeresis: "odiaeresis",
+ XK_odoubleacute: "odoubleacute",
+ XK_oe: "oe",
+ XK_ogonek: "ogonek",
+ XK_ograve: "ograve",
+ XK_ohook: "ohook",
+ XK_ohorn: "ohorn",
+ XK_ohornacute: "ohornacute",
+ XK_ohornbelowdot: "ohornbelowdot",
+ XK_ohorngrave: "ohorngrave",
+ XK_ohornhook: "ohornhook",
+ XK_ohorntilde: "ohorntilde",
+ XK_omacron: "omacron",
+ XK_oneeighth: "oneeighth",
+ XK_onefifth: "onefifth",
+ XK_onehalf: "onehalf",
+ XK_onequarter: "onequarter",
+ XK_onesixth: "onesixth",
+ XK_onesubscript: "onesubscript",
+ XK_onesuperior: "onesuperior",
+ XK_onethird: "onethird",
+ XK_openrectbullet: "openrectbullet",
+ XK_openstar: "openstar",
+ XK_opentribulletdown: "opentribulletdown",
+ XK_opentribulletup: "opentribulletup",
+ XK_ordfeminine: "ordfeminine",
+ XK_oslash: "oslash",
+ XK_otilde: "otilde",
+ XK_overbar: "overbar",
+ XK_overline: "overline",
+ XK_p: "p",
+ XK_pabovedot: "pabovedot",
+ XK_paragraph: "paragraph",
+ XK_parenleft: "parenleft",
+ XK_parenright: "parenright",
+ XK_partdifferential: "partdifferential",
+ XK_partialderivative: "partialderivative",
+ XK_percent: "percent",
+ XK_period: "period",
+ XK_periodcentered: "periodcentered",
+ XK_permille: "permille",
+ XK_phonographcopyright: "phonographcopyright",
+ XK_plus: "plus",
+ XK_plusminus: "plusminus",
+ XK_prescription: "prescription",
+ XK_prolongedsound: "prolongedsound",
+ XK_punctspace: "punctspace",
+ XK_q: "q",
+ XK_quad: "quad",
+ XK_question: "question",
+ XK_questiondown: "questiondown",
+ XK_quotedbl: "quotedbl",
+ XK_r: "r",
+ XK_racute: "racute",
+ XK_radical: "radical",
+ XK_rcaron: "rcaron",
+ XK_rcedilla: "rcedilla",
+ XK_registered: "registered",
+ XK_rightanglebracket: "rightanglebracket",
+ XK_rightarrow: "rightarrow",
+ XK_rightcaret: "rightcaret",
+ XK_rightdoublequotemark: "rightdoublequotemark",
+ XK_rightmiddlecurlybrace: "rightmiddlecurlybrace",
+ XK_rightmiddlesummation: "rightmiddlesummation",
+ XK_rightopentriangle: "rightopentriangle",
+ XK_rightpointer: "rightpointer",
+ XK_rightshoe: "rightshoe",
+ XK_rightsinglequotemark: "rightsinglequotemark",
+ XK_rightt: "rightt",
+ XK_righttack: "righttack",
+ XK_s: "s",
+ XK_sabovedot: "sabovedot",
+ XK_sacute: "sacute",
+ XK_scaron: "scaron",
+ XK_scedilla: "scedilla",
+ XK_schwa: "schwa",
+ XK_scircumflex: "scircumflex",
+ XK_seconds: "seconds",
+ XK_section: "section",
+ XK_semicolon: "semicolon",
+ XK_semivoicedsound: "semivoicedsound",
+ XK_seveneighths: "seveneighths",
+ XK_sevensubscript: "sevensubscript",
+ XK_sevensuperior: "sevensuperior",
+ XK_signaturemark: "signaturemark",
+ XK_signifblank: "signifblank",
+ XK_similarequal: "similarequal",
+ XK_singlelowquotemark: "singlelowquotemark",
+ XK_sixsubscript: "sixsubscript",
+ XK_sixsuperior: "sixsuperior",
+ XK_slash: "slash",
+ XK_soliddiamond: "soliddiamond",
+ XK_space: "space",
+ XK_squareroot: "squareroot",
+ XK_ssharp: "ssharp",
+ XK_sterling: "sterling",
+ XK_stricteq: "stricteq",
+ XK_t: "t",
+ XK_tabovedot: "tabovedot",
+ XK_tcaron: "tcaron",
+ XK_tcedilla: "tcedilla",
+ XK_telephone: "telephone",
+ XK_telephonerecorder: "telephonerecorder",
+ XK_therefore: "therefore",
+ XK_thinspace: "thinspace",
+ XK_thorn: "thorn",
+ XK_threeeighths: "threeeighths",
+ XK_threefifths: "threefifths",
+ XK_threequarters: "threequarters",
+ XK_threesubscript: "threesubscript",
+ XK_threesuperior: "threesuperior",
+ XK_tintegral: "tintegral",
+ XK_topintegral: "topintegral",
+ XK_topleftparens: "topleftparens",
+ XK_topleftradical: "topleftradical",
+ XK_topleftsqbracket: "topleftsqbracket",
+ XK_topleftsummation: "topleftsummation",
+ XK_toprightparens: "toprightparens",
+ XK_toprightsqbracket: "toprightsqbracket",
+ XK_toprightsummation: "toprightsummation",
+ XK_topt: "topt",
+ XK_topvertsummationconnector: "topvertsummationconnector",
+ XK_trademark: "trademark",
+ XK_trademarkincircle: "trademarkincircle",
+ XK_tslash: "tslash",
+ XK_twofifths: "twofifths",
+ XK_twosubscript: "twosubscript",
+ XK_twosuperior: "twosuperior",
+ XK_twothirds: "twothirds",
+ XK_u: "u",
+ XK_uacute: "uacute",
+ XK_ubelowdot: "ubelowdot",
+ XK_ubreve: "ubreve",
+ XK_ucircumflex: "ucircumflex",
+ XK_udiaeresis: "udiaeresis",
+ XK_udoubleacute: "udoubleacute",
+ XK_ugrave: "ugrave",
+ XK_uhook: "uhook",
+ XK_uhorn: "uhorn",
+ XK_uhornacute: "uhornacute",
+ XK_uhornbelowdot: "uhornbelowdot",
+ XK_uhorngrave: "uhorngrave",
+ XK_uhornhook: "uhornhook",
+ XK_uhorntilde: "uhorntilde",
+ XK_umacron: "umacron",
+ XK_underbar: "underbar",
+ XK_underscore: "underscore",
+ XK_union: "union",
+ XK_uogonek: "uogonek",
+ XK_uparrow: "uparrow",
+ XK_upcaret: "upcaret",
+ XK_upleftcorner: "upleftcorner",
+ XK_uprightcorner: "uprightcorner",
+ XK_upshoe: "upshoe",
+ XK_upstile: "upstile",
+ XK_uptack: "uptack",
+ XK_uring: "uring",
+ XK_utilde: "utilde",
+ XK_v: "v",
+ XK_variation: "variation",
+ XK_vertbar: "vertbar",
+ XK_vertconnector: "vertconnector",
+ XK_voicedsound: "voicedsound",
+ XK_vt: "vt",
+ XK_w: "w",
+ XK_wacute: "wacute",
+ XK_wcircumflex: "wcircumflex",
+ XK_wdiaeresis: "wdiaeresis",
+ XK_wgrave: "wgrave",
+ XK_x: "x",
+ XK_xabovedot: "xabovedot",
+ XK_y: "y",
+ XK_yacute: "yacute",
+ XK_ybelowdot: "ybelowdot",
+ XK_ycircumflex: "ycircumflex",
+ XK_ydiaeresis: "ydiaeresis",
+ XK_yen: "yen",
+ XK_ygrave: "ygrave",
+ XK_yhook: "yhook",
+ XK_ytilde: "ytilde",
+ XK_z: "z",
+ XK_zabovedot: "zabovedot",
+ XK_zacute: "zacute",
+ XK_zcaron: "zcaron",
+ XK_zerosubscript: "zerosubscript",
+ XK_zerosuperior: "zerosuperior",
+ XK_zstroke: "zstroke",
+}
+
+// NameToKeysym maps X11 keysym names to their constants
+var NameToKeysym = map[string]xproto.Keysym{
+ "0": XK_0,
+ "1": XK_1,
+ "2": XK_2,
+ "3": XK_3,
+ "3270_AltCursor": XK_3270_AltCursor,
+ "3270_Attn": XK_3270_Attn,
+ "3270_BackTab": XK_3270_BackTab,
+ "3270_ChangeScreen": XK_3270_ChangeScreen,
+ "3270_Copy": XK_3270_Copy,
+ "3270_CursorBlink": XK_3270_CursorBlink,
+ "3270_CursorSelect": XK_3270_CursorSelect,
+ "3270_DeleteWord": XK_3270_DeleteWord,
+ "3270_Duplicate": XK_3270_Duplicate,
+ "3270_Enter": XK_3270_Enter,
+ "3270_EraseEOF": XK_3270_EraseEOF,
+ "3270_EraseInput": XK_3270_EraseInput,
+ "3270_ExSelect": XK_3270_ExSelect,
+ "3270_FieldMark": XK_3270_FieldMark,
+ "3270_Ident": XK_3270_Ident,
+ "3270_Jump": XK_3270_Jump,
+ "3270_KeyClick": XK_3270_KeyClick,
+ "3270_Left2": XK_3270_Left2,
+ "3270_PA1": XK_3270_PA1,
+ "3270_PA2": XK_3270_PA2,
+ "3270_PA3": XK_3270_PA3,
+ "3270_Play": XK_3270_Play,
+ "3270_PrintScreen": XK_3270_PrintScreen,
+ "3270_Quit": XK_3270_Quit,
+ "3270_Record": XK_3270_Record,
+ "3270_Reset": XK_3270_Reset,
+ "3270_Right2": XK_3270_Right2,
+ "3270_Rule": XK_3270_Rule,
+ "3270_Setup": XK_3270_Setup,
+ "3270_Test": XK_3270_Test,
+ "4": XK_4,
+ "5": XK_5,
+ "6": XK_6,
+ "7": XK_7,
+ "8": XK_8,
+ "9": XK_9,
+ "A": XK_A,
+ "AE": XK_AE,
+ "Aacute": XK_Aacute,
+ "Abelowdot": XK_Abelowdot,
+ "Abreve": XK_Abreve,
+ "Abreveacute": XK_Abreveacute,
+ "Abrevebelowdot": XK_Abrevebelowdot,
+ "Abrevegrave": XK_Abrevegrave,
+ "Abrevehook": XK_Abrevehook,
+ "Abrevetilde": XK_Abrevetilde,
+ "AccessX_Enable": XK_AccessX_Enable,
+ "AccessX_Feedback_Enable": XK_AccessX_Feedback_Enable,
+ "Acircumflex": XK_Acircumflex,
+ "Acircumflexacute": XK_Acircumflexacute,
+ "Acircumflexbelowdot": XK_Acircumflexbelowdot,
+ "Acircumflexgrave": XK_Acircumflexgrave,
+ "Acircumflexhook": XK_Acircumflexhook,
+ "Acircumflextilde": XK_Acircumflextilde,
+ "Adiaeresis": XK_Adiaeresis,
+ "Agrave": XK_Agrave,
+ "Ahook": XK_Ahook,
+ "Alt_L": XK_Alt_L,
+ "Alt_R": XK_Alt_R,
+ "Amacron": XK_Amacron,
+ "Aogonek": XK_Aogonek,
+ "Arabic_0": XK_Arabic_0,
+ "Arabic_1": XK_Arabic_1,
+ "Arabic_2": XK_Arabic_2,
+ "Arabic_3": XK_Arabic_3,
+ "Arabic_4": XK_Arabic_4,
+ "Arabic_5": XK_Arabic_5,
+ "Arabic_6": XK_Arabic_6,
+ "Arabic_7": XK_Arabic_7,
+ "Arabic_8": XK_Arabic_8,
+ "Arabic_9": XK_Arabic_9,
+ "Arabic_ain": XK_Arabic_ain,
+ "Arabic_alef": XK_Arabic_alef,
+ "Arabic_alefmaksura": XK_Arabic_alefmaksura,
+ "Arabic_beh": XK_Arabic_beh,
+ "Arabic_comma": XK_Arabic_comma,
+ "Arabic_dad": XK_Arabic_dad,
+ "Arabic_dal": XK_Arabic_dal,
+ "Arabic_damma": XK_Arabic_damma,
+ "Arabic_dammatan": XK_Arabic_dammatan,
+ "Arabic_ddal": XK_Arabic_ddal,
+ "Arabic_farsi_yeh": XK_Arabic_farsi_yeh,
+ "Arabic_fatha": XK_Arabic_fatha,
+ "Arabic_fathatan": XK_Arabic_fathatan,
+ "Arabic_feh": XK_Arabic_feh,
+ "Arabic_fullstop": XK_Arabic_fullstop,
+ "Arabic_gaf": XK_Arabic_gaf,
+ "Arabic_ghain": XK_Arabic_ghain,
+ "Arabic_ha": XK_Arabic_ha,
+ "Arabic_hah": XK_Arabic_hah,
+ "Arabic_hamza": XK_Arabic_hamza,
+ "Arabic_hamza_above": XK_Arabic_hamza_above,
+ "Arabic_hamza_below": XK_Arabic_hamza_below,
+ "Arabic_hamzaonalef": XK_Arabic_hamzaonalef,
+ "Arabic_hamzaonwaw": XK_Arabic_hamzaonwaw,
+ "Arabic_hamzaonyeh": XK_Arabic_hamzaonyeh,
+ "Arabic_hamzaunderalef": XK_Arabic_hamzaunderalef,
+ "Arabic_heh": XK_Arabic_heh,
+ "Arabic_heh_doachashmee": XK_Arabic_heh_doachashmee,
+ "Arabic_heh_goal": XK_Arabic_heh_goal,
+ "Arabic_jeem": XK_Arabic_jeem,
+ "Arabic_jeh": XK_Arabic_jeh,
+ "Arabic_kaf": XK_Arabic_kaf,
+ "Arabic_kasra": XK_Arabic_kasra,
+ "Arabic_kasratan": XK_Arabic_kasratan,
+ "Arabic_keheh": XK_Arabic_keheh,
+ "Arabic_khah": XK_Arabic_khah,
+ "Arabic_lam": XK_Arabic_lam,
+ "Arabic_madda_above": XK_Arabic_madda_above,
+ "Arabic_maddaonalef": XK_Arabic_maddaonalef,
+ "Arabic_meem": XK_Arabic_meem,
+ "Arabic_noon": XK_Arabic_noon,
+ "Arabic_noon_ghunna": XK_Arabic_noon_ghunna,
+ "Arabic_peh": XK_Arabic_peh,
+ "Arabic_percent": XK_Arabic_percent,
+ "Arabic_qaf": XK_Arabic_qaf,
+ "Arabic_question_mark": XK_Arabic_question_mark,
+ "Arabic_ra": XK_Arabic_ra,
+ "Arabic_rreh": XK_Arabic_rreh,
+ "Arabic_sad": XK_Arabic_sad,
+ "Arabic_seen": XK_Arabic_seen,
+ "Arabic_semicolon": XK_Arabic_semicolon,
+ "Arabic_shadda": XK_Arabic_shadda,
+ "Arabic_sheen": XK_Arabic_sheen,
+ "Arabic_sukun": XK_Arabic_sukun,
+ "Arabic_superscript_alef": XK_Arabic_superscript_alef,
+ "Arabic_switch": XK_Arabic_switch,
+ "Arabic_tah": XK_Arabic_tah,
+ "Arabic_tatweel": XK_Arabic_tatweel,
+ "Arabic_tcheh": XK_Arabic_tcheh,
+ "Arabic_teh": XK_Arabic_teh,
+ "Arabic_tehmarbuta": XK_Arabic_tehmarbuta,
+ "Arabic_thal": XK_Arabic_thal,
+ "Arabic_theh": XK_Arabic_theh,
+ "Arabic_tteh": XK_Arabic_tteh,
+ "Arabic_veh": XK_Arabic_veh,
+ "Arabic_waw": XK_Arabic_waw,
+ "Arabic_yeh": XK_Arabic_yeh,
+ "Arabic_yeh_baree": XK_Arabic_yeh_baree,
+ "Arabic_zah": XK_Arabic_zah,
+ "Arabic_zain": XK_Arabic_zain,
+ "Aring": XK_Aring,
+ "Armenian_AT": XK_Armenian_AT,
+ "Armenian_AYB": XK_Armenian_AYB,
+ "Armenian_BEN": XK_Armenian_BEN,
+ "Armenian_CHA": XK_Armenian_CHA,
+ "Armenian_DA": XK_Armenian_DA,
+ "Armenian_DZA": XK_Armenian_DZA,
+ "Armenian_E": XK_Armenian_E,
+ "Armenian_FE": XK_Armenian_FE,
+ "Armenian_GHAT": XK_Armenian_GHAT,
+ "Armenian_GIM": XK_Armenian_GIM,
+ "Armenian_HI": XK_Armenian_HI,
+ "Armenian_HO": XK_Armenian_HO,
+ "Armenian_INI": XK_Armenian_INI,
+ "Armenian_JE": XK_Armenian_JE,
+ "Armenian_KE": XK_Armenian_KE,
+ "Armenian_KEN": XK_Armenian_KEN,
+ "Armenian_KHE": XK_Armenian_KHE,
+ "Armenian_LYUN": XK_Armenian_LYUN,
+ "Armenian_MEN": XK_Armenian_MEN,
+ "Armenian_NU": XK_Armenian_NU,
+ "Armenian_O": XK_Armenian_O,
+ "Armenian_PE": XK_Armenian_PE,
+ "Armenian_PYUR": XK_Armenian_PYUR,
+ "Armenian_RA": XK_Armenian_RA,
+ "Armenian_RE": XK_Armenian_RE,
+ "Armenian_SE": XK_Armenian_SE,
+ "Armenian_SHA": XK_Armenian_SHA,
+ "Armenian_TCHE": XK_Armenian_TCHE,
+ "Armenian_TO": XK_Armenian_TO,
+ "Armenian_TSA": XK_Armenian_TSA,
+ "Armenian_TSO": XK_Armenian_TSO,
+ "Armenian_TYUN": XK_Armenian_TYUN,
+ "Armenian_VEV": XK_Armenian_VEV,
+ "Armenian_VO": XK_Armenian_VO,
+ "Armenian_VYUN": XK_Armenian_VYUN,
+ "Armenian_YECH": XK_Armenian_YECH,
+ "Armenian_ZA": XK_Armenian_ZA,
+ "Armenian_ZHE": XK_Armenian_ZHE,
+ "Armenian_accent": XK_Armenian_accent,
+ "Armenian_amanak": XK_Armenian_amanak,
+ "Armenian_apostrophe": XK_Armenian_apostrophe,
+ "Armenian_at": XK_Armenian_at,
+ "Armenian_ayb": XK_Armenian_ayb,
+ "Armenian_ben": XK_Armenian_ben,
+ "Armenian_but": XK_Armenian_but,
+ "Armenian_cha": XK_Armenian_cha,
+ "Armenian_da": XK_Armenian_da,
+ "Armenian_dza": XK_Armenian_dza,
+ "Armenian_e": XK_Armenian_e,
+ "Armenian_exclam": XK_Armenian_exclam,
+ "Armenian_fe": XK_Armenian_fe,
+ "Armenian_full_stop": XK_Armenian_full_stop,
+ "Armenian_ghat": XK_Armenian_ghat,
+ "Armenian_gim": XK_Armenian_gim,
+ "Armenian_hi": XK_Armenian_hi,
+ "Armenian_ho": XK_Armenian_ho,
+ "Armenian_hyphen": XK_Armenian_hyphen,
+ "Armenian_ini": XK_Armenian_ini,
+ "Armenian_je": XK_Armenian_je,
+ "Armenian_ke": XK_Armenian_ke,
+ "Armenian_ken": XK_Armenian_ken,
+ "Armenian_khe": XK_Armenian_khe,
+ "Armenian_ligature_ew": XK_Armenian_ligature_ew,
+ "Armenian_lyun": XK_Armenian_lyun,
+ "Armenian_men": XK_Armenian_men,
+ "Armenian_nu": XK_Armenian_nu,
+ "Armenian_o": XK_Armenian_o,
+ "Armenian_paruyk": XK_Armenian_paruyk,
+ "Armenian_pe": XK_Armenian_pe,
+ "Armenian_pyur": XK_Armenian_pyur,
+ "Armenian_question": XK_Armenian_question,
+ "Armenian_ra": XK_Armenian_ra,
+ "Armenian_re": XK_Armenian_re,
+ "Armenian_se": XK_Armenian_se,
+ "Armenian_separation_mark": XK_Armenian_separation_mark,
+ "Armenian_sha": XK_Armenian_sha,
+ "Armenian_shesht": XK_Armenian_shesht,
+ "Armenian_tche": XK_Armenian_tche,
+ "Armenian_to": XK_Armenian_to,
+ "Armenian_tsa": XK_Armenian_tsa,
+ "Armenian_tso": XK_Armenian_tso,
+ "Armenian_tyun": XK_Armenian_tyun,
+ "Armenian_verjaket": XK_Armenian_verjaket,
+ "Armenian_vev": XK_Armenian_vev,
+ "Armenian_vo": XK_Armenian_vo,
+ "Armenian_vyun": XK_Armenian_vyun,
+ "Armenian_yech": XK_Armenian_yech,
+ "Armenian_yentamna": XK_Armenian_yentamna,
+ "Armenian_za": XK_Armenian_za,
+ "Armenian_zhe": XK_Armenian_zhe,
+ "Atilde": XK_Atilde,
+ "AudibleBell_Enable": XK_AudibleBell_Enable,
+ "B": XK_B,
+ "Babovedot": XK_Babovedot,
+ "BackSpace": XK_BackSpace,
+ "Begin": XK_Begin,
+ "BounceKeys_Enable": XK_BounceKeys_Enable,
+ "Break": XK_Break,
+ "Byelorussian_SHORTU": XK_Byelorussian_SHORTU,
+ "Byelorussian_shortu": XK_Byelorussian_shortu,
+ "C": XK_C,
+ "CH": XK_CH,
+ "C_H": XK_C_H,
+ "C_h": XK_C_h,
+ "Cabovedot": XK_Cabovedot,
+ "Cacute": XK_Cacute,
+ "Cancel": XK_Cancel,
+ "Caps_Lock": XK_Caps_Lock,
+ "Ccaron": XK_Ccaron,
+ "Ccedilla": XK_Ccedilla,
+ "Ccircumflex": XK_Ccircumflex,
+ "Ch": XK_Ch,
+ "Clear": XK_Clear,
+ "Codeinput": XK_Codeinput,
+ "ColonSign": XK_ColonSign,
+ "Control_L": XK_Control_L,
+ "Control_R": XK_Control_R,
+ "CruzeiroSign": XK_CruzeiroSign,
+ "Cyrillic_A": XK_Cyrillic_A,
+ "Cyrillic_BE": XK_Cyrillic_BE,
+ "Cyrillic_CHE": XK_Cyrillic_CHE,
+ "Cyrillic_CHE_descender": XK_Cyrillic_CHE_descender,
+ "Cyrillic_CHE_vertstroke": XK_Cyrillic_CHE_vertstroke,
+ "Cyrillic_DE": XK_Cyrillic_DE,
+ "Cyrillic_DZHE": XK_Cyrillic_DZHE,
+ "Cyrillic_E": XK_Cyrillic_E,
+ "Cyrillic_EF": XK_Cyrillic_EF,
+ "Cyrillic_EL": XK_Cyrillic_EL,
+ "Cyrillic_EM": XK_Cyrillic_EM,
+ "Cyrillic_EN": XK_Cyrillic_EN,
+ "Cyrillic_EN_descender": XK_Cyrillic_EN_descender,
+ "Cyrillic_ER": XK_Cyrillic_ER,
+ "Cyrillic_ES": XK_Cyrillic_ES,
+ "Cyrillic_GHE": XK_Cyrillic_GHE,
+ "Cyrillic_GHE_bar": XK_Cyrillic_GHE_bar,
+ "Cyrillic_HA": XK_Cyrillic_HA,
+ "Cyrillic_HARDSIGN": XK_Cyrillic_HARDSIGN,
+ "Cyrillic_HA_descender": XK_Cyrillic_HA_descender,
+ "Cyrillic_I": XK_Cyrillic_I,
+ "Cyrillic_IE": XK_Cyrillic_IE,
+ "Cyrillic_IO": XK_Cyrillic_IO,
+ "Cyrillic_I_macron": XK_Cyrillic_I_macron,
+ "Cyrillic_JE": XK_Cyrillic_JE,
+ "Cyrillic_KA": XK_Cyrillic_KA,
+ "Cyrillic_KA_descender": XK_Cyrillic_KA_descender,
+ "Cyrillic_KA_vertstroke": XK_Cyrillic_KA_vertstroke,
+ "Cyrillic_LJE": XK_Cyrillic_LJE,
+ "Cyrillic_NJE": XK_Cyrillic_NJE,
+ "Cyrillic_O": XK_Cyrillic_O,
+ "Cyrillic_O_bar": XK_Cyrillic_O_bar,
+ "Cyrillic_PE": XK_Cyrillic_PE,
+ "Cyrillic_SCHWA": XK_Cyrillic_SCHWA,
+ "Cyrillic_SHA": XK_Cyrillic_SHA,
+ "Cyrillic_SHCHA": XK_Cyrillic_SHCHA,
+ "Cyrillic_SHHA": XK_Cyrillic_SHHA,
+ "Cyrillic_SHORTI": XK_Cyrillic_SHORTI,
+ "Cyrillic_SOFTSIGN": XK_Cyrillic_SOFTSIGN,
+ "Cyrillic_TE": XK_Cyrillic_TE,
+ "Cyrillic_TSE": XK_Cyrillic_TSE,
+ "Cyrillic_U": XK_Cyrillic_U,
+ "Cyrillic_U_macron": XK_Cyrillic_U_macron,
+ "Cyrillic_U_straight": XK_Cyrillic_U_straight,
+ "Cyrillic_U_straight_bar": XK_Cyrillic_U_straight_bar,
+ "Cyrillic_VE": XK_Cyrillic_VE,
+ "Cyrillic_YA": XK_Cyrillic_YA,
+ "Cyrillic_YERU": XK_Cyrillic_YERU,
+ "Cyrillic_YU": XK_Cyrillic_YU,
+ "Cyrillic_ZE": XK_Cyrillic_ZE,
+ "Cyrillic_ZHE": XK_Cyrillic_ZHE,
+ "Cyrillic_ZHE_descender": XK_Cyrillic_ZHE_descender,
+ "Cyrillic_a": XK_Cyrillic_a,
+ "Cyrillic_be": XK_Cyrillic_be,
+ "Cyrillic_che": XK_Cyrillic_che,
+ "Cyrillic_che_descender": XK_Cyrillic_che_descender,
+ "Cyrillic_che_vertstroke": XK_Cyrillic_che_vertstroke,
+ "Cyrillic_de": XK_Cyrillic_de,
+ "Cyrillic_dzhe": XK_Cyrillic_dzhe,
+ "Cyrillic_e": XK_Cyrillic_e,
+ "Cyrillic_ef": XK_Cyrillic_ef,
+ "Cyrillic_el": XK_Cyrillic_el,
+ "Cyrillic_em": XK_Cyrillic_em,
+ "Cyrillic_en": XK_Cyrillic_en,
+ "Cyrillic_en_descender": XK_Cyrillic_en_descender,
+ "Cyrillic_er": XK_Cyrillic_er,
+ "Cyrillic_es": XK_Cyrillic_es,
+ "Cyrillic_ghe": XK_Cyrillic_ghe,
+ "Cyrillic_ghe_bar": XK_Cyrillic_ghe_bar,
+ "Cyrillic_ha": XK_Cyrillic_ha,
+ "Cyrillic_ha_descender": XK_Cyrillic_ha_descender,
+ "Cyrillic_hardsign": XK_Cyrillic_hardsign,
+ "Cyrillic_i": XK_Cyrillic_i,
+ "Cyrillic_i_macron": XK_Cyrillic_i_macron,
+ "Cyrillic_ie": XK_Cyrillic_ie,
+ "Cyrillic_io": XK_Cyrillic_io,
+ "Cyrillic_je": XK_Cyrillic_je,
+ "Cyrillic_ka": XK_Cyrillic_ka,
+ "Cyrillic_ka_descender": XK_Cyrillic_ka_descender,
+ "Cyrillic_ka_vertstroke": XK_Cyrillic_ka_vertstroke,
+ "Cyrillic_lje": XK_Cyrillic_lje,
+ "Cyrillic_nje": XK_Cyrillic_nje,
+ "Cyrillic_o": XK_Cyrillic_o,
+ "Cyrillic_o_bar": XK_Cyrillic_o_bar,
+ "Cyrillic_pe": XK_Cyrillic_pe,
+ "Cyrillic_schwa": XK_Cyrillic_schwa,
+ "Cyrillic_sha": XK_Cyrillic_sha,
+ "Cyrillic_shcha": XK_Cyrillic_shcha,
+ "Cyrillic_shha": XK_Cyrillic_shha,
+ "Cyrillic_shorti": XK_Cyrillic_shorti,
+ "Cyrillic_softsign": XK_Cyrillic_softsign,
+ "Cyrillic_te": XK_Cyrillic_te,
+ "Cyrillic_tse": XK_Cyrillic_tse,
+ "Cyrillic_u": XK_Cyrillic_u,
+ "Cyrillic_u_macron": XK_Cyrillic_u_macron,
+ "Cyrillic_u_straight": XK_Cyrillic_u_straight,
+ "Cyrillic_u_straight_bar": XK_Cyrillic_u_straight_bar,
+ "Cyrillic_ve": XK_Cyrillic_ve,
+ "Cyrillic_ya": XK_Cyrillic_ya,
+ "Cyrillic_yeru": XK_Cyrillic_yeru,
+ "Cyrillic_yu": XK_Cyrillic_yu,
+ "Cyrillic_ze": XK_Cyrillic_ze,
+ "Cyrillic_zhe": XK_Cyrillic_zhe,
+ "Cyrillic_zhe_descender": XK_Cyrillic_zhe_descender,
+ "D": XK_D,
+ "Dabovedot": XK_Dabovedot,
+ "Dcaron": XK_Dcaron,
+ "Delete": XK_Delete,
+ "DongSign": XK_DongSign,
+ "Down": XK_Down,
+ "Dstroke": XK_Dstroke,
+ "E": XK_E,
+ "ENG": XK_ENG,
+ "ETH": XK_ETH,
+ "EZH": XK_EZH,
+ "Eabovedot": XK_Eabovedot,
+ "Eacute": XK_Eacute,
+ "Ebelowdot": XK_Ebelowdot,
+ "Ecaron": XK_Ecaron,
+ "Ecircumflex": XK_Ecircumflex,
+ "Ecircumflexacute": XK_Ecircumflexacute,
+ "Ecircumflexbelowdot": XK_Ecircumflexbelowdot,
+ "Ecircumflexgrave": XK_Ecircumflexgrave,
+ "Ecircumflexhook": XK_Ecircumflexhook,
+ "Ecircumflextilde": XK_Ecircumflextilde,
+ "EcuSign": XK_EcuSign,
+ "Ediaeresis": XK_Ediaeresis,
+ "Egrave": XK_Egrave,
+ "Ehook": XK_Ehook,
+ "Eisu_Shift": XK_Eisu_Shift,
+ "Eisu_toggle": XK_Eisu_toggle,
+ "Emacron": XK_Emacron,
+ "End": XK_End,
+ "Eogonek": XK_Eogonek,
+ "Escape": XK_Escape,
+ "Eth": XK_Eth,
+ "Etilde": XK_Etilde,
+ "EuroSign": XK_EuroSign,
+ "Execute": XK_Execute,
+ "F": XK_F,
+ "F1": XK_F1,
+ "F10": XK_F10,
+ "F11": XK_F11,
+ "F12": XK_F12,
+ "F13": XK_F13,
+ "F14": XK_F14,
+ "F15": XK_F15,
+ "F16": XK_F16,
+ "F17": XK_F17,
+ "F18": XK_F18,
+ "F19": XK_F19,
+ "F2": XK_F2,
+ "F20": XK_F20,
+ "F21": XK_F21,
+ "F22": XK_F22,
+ "F23": XK_F23,
+ "F24": XK_F24,
+ "F25": XK_F25,
+ "F26": XK_F26,
+ "F27": XK_F27,
+ "F28": XK_F28,
+ "F29": XK_F29,
+ "F3": XK_F3,
+ "F30": XK_F30,
+ "F31": XK_F31,
+ "F32": XK_F32,
+ "F33": XK_F33,
+ "F34": XK_F34,
+ "F35": XK_F35,
+ "F4": XK_F4,
+ "F5": XK_F5,
+ "F6": XK_F6,
+ "F7": XK_F7,
+ "F8": XK_F8,
+ "F9": XK_F9,
+ "FFrancSign": XK_FFrancSign,
+ "Fabovedot": XK_Fabovedot,
+ "Farsi_0": XK_Farsi_0,
+ "Farsi_1": XK_Farsi_1,
+ "Farsi_2": XK_Farsi_2,
+ "Farsi_3": XK_Farsi_3,
+ "Farsi_4": XK_Farsi_4,
+ "Farsi_5": XK_Farsi_5,
+ "Farsi_6": XK_Farsi_6,
+ "Farsi_7": XK_Farsi_7,
+ "Farsi_8": XK_Farsi_8,
+ "Farsi_9": XK_Farsi_9,
+ "Farsi_yeh": XK_Farsi_yeh,
+ "Find": XK_Find,
+ "First_Virtual_Screen": XK_First_Virtual_Screen,
+ "G": XK_G,
+ "Gabovedot": XK_Gabovedot,
+ "Gbreve": XK_Gbreve,
+ "Gcaron": XK_Gcaron,
+ "Gcedilla": XK_Gcedilla,
+ "Gcircumflex": XK_Gcircumflex,
+ "Georgian_an": XK_Georgian_an,
+ "Georgian_ban": XK_Georgian_ban,
+ "Georgian_can": XK_Georgian_can,
+ "Georgian_char": XK_Georgian_char,
+ "Georgian_chin": XK_Georgian_chin,
+ "Georgian_cil": XK_Georgian_cil,
+ "Georgian_don": XK_Georgian_don,
+ "Georgian_en": XK_Georgian_en,
+ "Georgian_fi": XK_Georgian_fi,
+ "Georgian_gan": XK_Georgian_gan,
+ "Georgian_ghan": XK_Georgian_ghan,
+ "Georgian_hae": XK_Georgian_hae,
+ "Georgian_har": XK_Georgian_har,
+ "Georgian_he": XK_Georgian_he,
+ "Georgian_hie": XK_Georgian_hie,
+ "Georgian_hoe": XK_Georgian_hoe,
+ "Georgian_in": XK_Georgian_in,
+ "Georgian_jhan": XK_Georgian_jhan,
+ "Georgian_jil": XK_Georgian_jil,
+ "Georgian_kan": XK_Georgian_kan,
+ "Georgian_khar": XK_Georgian_khar,
+ "Georgian_las": XK_Georgian_las,
+ "Georgian_man": XK_Georgian_man,
+ "Georgian_nar": XK_Georgian_nar,
+ "Georgian_on": XK_Georgian_on,
+ "Georgian_par": XK_Georgian_par,
+ "Georgian_phar": XK_Georgian_phar,
+ "Georgian_qar": XK_Georgian_qar,
+ "Georgian_rae": XK_Georgian_rae,
+ "Georgian_san": XK_Georgian_san,
+ "Georgian_shin": XK_Georgian_shin,
+ "Georgian_tan": XK_Georgian_tan,
+ "Georgian_tar": XK_Georgian_tar,
+ "Georgian_un": XK_Georgian_un,
+ "Georgian_vin": XK_Georgian_vin,
+ "Georgian_we": XK_Georgian_we,
+ "Georgian_xan": XK_Georgian_xan,
+ "Georgian_zen": XK_Georgian_zen,
+ "Georgian_zhar": XK_Georgian_zhar,
+ "Greek_ALPHA": XK_Greek_ALPHA,
+ "Greek_ALPHAaccent": XK_Greek_ALPHAaccent,
+ "Greek_BETA": XK_Greek_BETA,
+ "Greek_CHI": XK_Greek_CHI,
+ "Greek_DELTA": XK_Greek_DELTA,
+ "Greek_EPSILON": XK_Greek_EPSILON,
+ "Greek_EPSILONaccent": XK_Greek_EPSILONaccent,
+ "Greek_ETA": XK_Greek_ETA,
+ "Greek_ETAaccent": XK_Greek_ETAaccent,
+ "Greek_GAMMA": XK_Greek_GAMMA,
+ "Greek_IOTA": XK_Greek_IOTA,
+ "Greek_IOTAaccent": XK_Greek_IOTAaccent,
+ "Greek_IOTAdiaeresis": XK_Greek_IOTAdiaeresis,
+ "Greek_IOTAdieresis": XK_Greek_IOTAdieresis,
+ "Greek_KAPPA": XK_Greek_KAPPA,
+ "Greek_LAMBDA": XK_Greek_LAMBDA,
+ "Greek_LAMDA": XK_Greek_LAMDA,
+ "Greek_MU": XK_Greek_MU,
+ "Greek_NU": XK_Greek_NU,
+ "Greek_OMEGA": XK_Greek_OMEGA,
+ "Greek_OMEGAaccent": XK_Greek_OMEGAaccent,
+ "Greek_OMICRON": XK_Greek_OMICRON,
+ "Greek_OMICRONaccent": XK_Greek_OMICRONaccent,
+ "Greek_PHI": XK_Greek_PHI,
+ "Greek_PI": XK_Greek_PI,
+ "Greek_PSI": XK_Greek_PSI,
+ "Greek_RHO": XK_Greek_RHO,
+ "Greek_SIGMA": XK_Greek_SIGMA,
+ "Greek_TAU": XK_Greek_TAU,
+ "Greek_THETA": XK_Greek_THETA,
+ "Greek_UPSILON": XK_Greek_UPSILON,
+ "Greek_UPSILONaccent": XK_Greek_UPSILONaccent,
+ "Greek_UPSILONdieresis": XK_Greek_UPSILONdieresis,
+ "Greek_XI": XK_Greek_XI,
+ "Greek_ZETA": XK_Greek_ZETA,
+ "Greek_accentdieresis": XK_Greek_accentdieresis,
+ "Greek_alpha": XK_Greek_alpha,
+ "Greek_alphaaccent": XK_Greek_alphaaccent,
+ "Greek_beta": XK_Greek_beta,
+ "Greek_chi": XK_Greek_chi,
+ "Greek_delta": XK_Greek_delta,
+ "Greek_epsilon": XK_Greek_epsilon,
+ "Greek_epsilonaccent": XK_Greek_epsilonaccent,
+ "Greek_eta": XK_Greek_eta,
+ "Greek_etaaccent": XK_Greek_etaaccent,
+ "Greek_finalsmallsigma": XK_Greek_finalsmallsigma,
+ "Greek_gamma": XK_Greek_gamma,
+ "Greek_horizbar": XK_Greek_horizbar,
+ "Greek_iota": XK_Greek_iota,
+ "Greek_iotaaccent": XK_Greek_iotaaccent,
+ "Greek_iotaaccentdieresis": XK_Greek_iotaaccentdieresis,
+ "Greek_iotadieresis": XK_Greek_iotadieresis,
+ "Greek_kappa": XK_Greek_kappa,
+ "Greek_lambda": XK_Greek_lambda,
+ "Greek_lamda": XK_Greek_lamda,
+ "Greek_mu": XK_Greek_mu,
+ "Greek_nu": XK_Greek_nu,
+ "Greek_omega": XK_Greek_omega,
+ "Greek_omegaaccent": XK_Greek_omegaaccent,
+ "Greek_omicron": XK_Greek_omicron,
+ "Greek_omicronaccent": XK_Greek_omicronaccent,
+ "Greek_phi": XK_Greek_phi,
+ "Greek_pi": XK_Greek_pi,
+ "Greek_psi": XK_Greek_psi,
+ "Greek_rho": XK_Greek_rho,
+ "Greek_sigma": XK_Greek_sigma,
+ "Greek_switch": XK_Greek_switch,
+ "Greek_tau": XK_Greek_tau,
+ "Greek_theta": XK_Greek_theta,
+ "Greek_upsilon": XK_Greek_upsilon,
+ "Greek_upsilonaccent": XK_Greek_upsilonaccent,
+ "Greek_upsilonaccentdieresis": XK_Greek_upsilonaccentdieresis,
+ "Greek_upsilondieresis": XK_Greek_upsilondieresis,
+ "Greek_xi": XK_Greek_xi,
+ "Greek_zeta": XK_Greek_zeta,
+ "H": XK_H,
+ "Hangul": XK_Hangul,
+ "Hangul_A": XK_Hangul_A,
+ "Hangul_AE": XK_Hangul_AE,
+ "Hangul_AraeA": XK_Hangul_AraeA,
+ "Hangul_AraeAE": XK_Hangul_AraeAE,
+ "Hangul_Banja": XK_Hangul_Banja,
+ "Hangul_Cieuc": XK_Hangul_Cieuc,
+ "Hangul_Codeinput": XK_Hangul_Codeinput,
+ "Hangul_Dikeud": XK_Hangul_Dikeud,
+ "Hangul_E": XK_Hangul_E,
+ "Hangul_EO": XK_Hangul_EO,
+ "Hangul_EU": XK_Hangul_EU,
+ "Hangul_End": XK_Hangul_End,
+ "Hangul_Hanja": XK_Hangul_Hanja,
+ "Hangul_Hieuh": XK_Hangul_Hieuh,
+ "Hangul_I": XK_Hangul_I,
+ "Hangul_Ieung": XK_Hangul_Ieung,
+ "Hangul_J_Cieuc": XK_Hangul_J_Cieuc,
+ "Hangul_J_Dikeud": XK_Hangul_J_Dikeud,
+ "Hangul_J_Hieuh": XK_Hangul_J_Hieuh,
+ "Hangul_J_Ieung": XK_Hangul_J_Ieung,
+ "Hangul_J_Jieuj": XK_Hangul_J_Jieuj,
+ "Hangul_J_Khieuq": XK_Hangul_J_Khieuq,
+ "Hangul_J_Kiyeog": XK_Hangul_J_Kiyeog,
+ "Hangul_J_KiyeogSios": XK_Hangul_J_KiyeogSios,
+ "Hangul_J_KkogjiDalrinIeung": XK_Hangul_J_KkogjiDalrinIeung,
+ "Hangul_J_Mieum": XK_Hangul_J_Mieum,
+ "Hangul_J_Nieun": XK_Hangul_J_Nieun,
+ "Hangul_J_NieunHieuh": XK_Hangul_J_NieunHieuh,
+ "Hangul_J_NieunJieuj": XK_Hangul_J_NieunJieuj,
+ "Hangul_J_PanSios": XK_Hangul_J_PanSios,
+ "Hangul_J_Phieuf": XK_Hangul_J_Phieuf,
+ "Hangul_J_Pieub": XK_Hangul_J_Pieub,
+ "Hangul_J_PieubSios": XK_Hangul_J_PieubSios,
+ "Hangul_J_Rieul": XK_Hangul_J_Rieul,
+ "Hangul_J_RieulHieuh": XK_Hangul_J_RieulHieuh,
+ "Hangul_J_RieulKiyeog": XK_Hangul_J_RieulKiyeog,
+ "Hangul_J_RieulMieum": XK_Hangul_J_RieulMieum,
+ "Hangul_J_RieulPhieuf": XK_Hangul_J_RieulPhieuf,
+ "Hangul_J_RieulPieub": XK_Hangul_J_RieulPieub,
+ "Hangul_J_RieulSios": XK_Hangul_J_RieulSios,
+ "Hangul_J_RieulTieut": XK_Hangul_J_RieulTieut,
+ "Hangul_J_Sios": XK_Hangul_J_Sios,
+ "Hangul_J_SsangKiyeog": XK_Hangul_J_SsangKiyeog,
+ "Hangul_J_SsangSios": XK_Hangul_J_SsangSios,
+ "Hangul_J_Tieut": XK_Hangul_J_Tieut,
+ "Hangul_J_YeorinHieuh": XK_Hangul_J_YeorinHieuh,
+ "Hangul_Jamo": XK_Hangul_Jamo,
+ "Hangul_Jeonja": XK_Hangul_Jeonja,
+ "Hangul_Jieuj": XK_Hangul_Jieuj,
+ "Hangul_Khieuq": XK_Hangul_Khieuq,
+ "Hangul_Kiyeog": XK_Hangul_Kiyeog,
+ "Hangul_KiyeogSios": XK_Hangul_KiyeogSios,
+ "Hangul_KkogjiDalrinIeung": XK_Hangul_KkogjiDalrinIeung,
+ "Hangul_Mieum": XK_Hangul_Mieum,
+ "Hangul_MultipleCandidate": XK_Hangul_MultipleCandidate,
+ "Hangul_Nieun": XK_Hangul_Nieun,
+ "Hangul_NieunHieuh": XK_Hangul_NieunHieuh,
+ "Hangul_NieunJieuj": XK_Hangul_NieunJieuj,
+ "Hangul_O": XK_Hangul_O,
+ "Hangul_OE": XK_Hangul_OE,
+ "Hangul_PanSios": XK_Hangul_PanSios,
+ "Hangul_Phieuf": XK_Hangul_Phieuf,
+ "Hangul_Pieub": XK_Hangul_Pieub,
+ "Hangul_PieubSios": XK_Hangul_PieubSios,
+ "Hangul_PostHanja": XK_Hangul_PostHanja,
+ "Hangul_PreHanja": XK_Hangul_PreHanja,
+ "Hangul_PreviousCandidate": XK_Hangul_PreviousCandidate,
+ "Hangul_Rieul": XK_Hangul_Rieul,
+ "Hangul_RieulHieuh": XK_Hangul_RieulHieuh,
+ "Hangul_RieulKiyeog": XK_Hangul_RieulKiyeog,
+ "Hangul_RieulMieum": XK_Hangul_RieulMieum,
+ "Hangul_RieulPhieuf": XK_Hangul_RieulPhieuf,
+ "Hangul_RieulPieub": XK_Hangul_RieulPieub,
+ "Hangul_RieulSios": XK_Hangul_RieulSios,
+ "Hangul_RieulTieut": XK_Hangul_RieulTieut,
+ "Hangul_RieulYeorinHieuh": XK_Hangul_RieulYeorinHieuh,
+ "Hangul_Romaja": XK_Hangul_Romaja,
+ "Hangul_SingleCandidate": XK_Hangul_SingleCandidate,
+ "Hangul_Sios": XK_Hangul_Sios,
+ "Hangul_Special": XK_Hangul_Special,
+ "Hangul_SsangDikeud": XK_Hangul_SsangDikeud,
+ "Hangul_SsangJieuj": XK_Hangul_SsangJieuj,
+ "Hangul_SsangKiyeog": XK_Hangul_SsangKiyeog,
+ "Hangul_SsangPieub": XK_Hangul_SsangPieub,
+ "Hangul_SsangSios": XK_Hangul_SsangSios,
+ "Hangul_Start": XK_Hangul_Start,
+ "Hangul_SunkyeongeumMieum": XK_Hangul_SunkyeongeumMieum,
+ "Hangul_SunkyeongeumPhieuf": XK_Hangul_SunkyeongeumPhieuf,
+ "Hangul_SunkyeongeumPieub": XK_Hangul_SunkyeongeumPieub,
+ "Hangul_Tieut": XK_Hangul_Tieut,
+ "Hangul_U": XK_Hangul_U,
+ "Hangul_WA": XK_Hangul_WA,
+ "Hangul_WAE": XK_Hangul_WAE,
+ "Hangul_WE": XK_Hangul_WE,
+ "Hangul_WEO": XK_Hangul_WEO,
+ "Hangul_WI": XK_Hangul_WI,
+ "Hangul_YA": XK_Hangul_YA,
+ "Hangul_YAE": XK_Hangul_YAE,
+ "Hangul_YE": XK_Hangul_YE,
+ "Hangul_YEO": XK_Hangul_YEO,
+ "Hangul_YI": XK_Hangul_YI,
+ "Hangul_YO": XK_Hangul_YO,
+ "Hangul_YU": XK_Hangul_YU,
+ "Hangul_YeorinHieuh": XK_Hangul_YeorinHieuh,
+ "Hangul_switch": XK_Hangul_switch,
+ "Hankaku": XK_Hankaku,
+ "Hcircumflex": XK_Hcircumflex,
+ "Hebrew_switch": XK_Hebrew_switch,
+ "Help": XK_Help,
+ "Henkan": XK_Henkan,
+ "Henkan_Mode": XK_Henkan_Mode,
+ "Hiragana": XK_Hiragana,
+ "Hiragana_Katakana": XK_Hiragana_Katakana,
+ "Home": XK_Home,
+ "Hstroke": XK_Hstroke,
+ "Hyper_L": XK_Hyper_L,
+ "Hyper_R": XK_Hyper_R,
+ "I": XK_I,
+ "ISO_Center_Object": XK_ISO_Center_Object,
+ "ISO_Continuous_Underline": XK_ISO_Continuous_Underline,
+ "ISO_Discontinuous_Underline": XK_ISO_Discontinuous_Underline,
+ "ISO_Emphasize": XK_ISO_Emphasize,
+ "ISO_Enter": XK_ISO_Enter,
+ "ISO_Fast_Cursor_Down": XK_ISO_Fast_Cursor_Down,
+ "ISO_Fast_Cursor_Left": XK_ISO_Fast_Cursor_Left,
+ "ISO_Fast_Cursor_Right": XK_ISO_Fast_Cursor_Right,
+ "ISO_Fast_Cursor_Up": XK_ISO_Fast_Cursor_Up,
+ "ISO_First_Group": XK_ISO_First_Group,
+ "ISO_First_Group_Lock": XK_ISO_First_Group_Lock,
+ "ISO_Group_Latch": XK_ISO_Group_Latch,
+ "ISO_Group_Lock": XK_ISO_Group_Lock,
+ "ISO_Group_Shift": XK_ISO_Group_Shift,
+ "ISO_Last_Group": XK_ISO_Last_Group,
+ "ISO_Last_Group_Lock": XK_ISO_Last_Group_Lock,
+ "ISO_Left_Tab": XK_ISO_Left_Tab,
+ "ISO_Level2_Latch": XK_ISO_Level2_Latch,
+ "ISO_Level3_Latch": XK_ISO_Level3_Latch,
+ "ISO_Level3_Lock": XK_ISO_Level3_Lock,
+ "ISO_Level3_Shift": XK_ISO_Level3_Shift,
+ "ISO_Level5_Latch": XK_ISO_Level5_Latch,
+ "ISO_Level5_Lock": XK_ISO_Level5_Lock,
+ "ISO_Level5_Shift": XK_ISO_Level5_Shift,
+ "ISO_Lock": XK_ISO_Lock,
+ "ISO_Move_Line_Down": XK_ISO_Move_Line_Down,
+ "ISO_Move_Line_Up": XK_ISO_Move_Line_Up,
+ "ISO_Next_Group": XK_ISO_Next_Group,
+ "ISO_Next_Group_Lock": XK_ISO_Next_Group_Lock,
+ "ISO_Partial_Line_Down": XK_ISO_Partial_Line_Down,
+ "ISO_Partial_Line_Up": XK_ISO_Partial_Line_Up,
+ "ISO_Partial_Space_Left": XK_ISO_Partial_Space_Left,
+ "ISO_Partial_Space_Right": XK_ISO_Partial_Space_Right,
+ "ISO_Prev_Group": XK_ISO_Prev_Group,
+ "ISO_Prev_Group_Lock": XK_ISO_Prev_Group_Lock,
+ "ISO_Release_Both_Margins": XK_ISO_Release_Both_Margins,
+ "ISO_Release_Margin_Left": XK_ISO_Release_Margin_Left,
+ "ISO_Release_Margin_Right": XK_ISO_Release_Margin_Right,
+ "ISO_Set_Margin_Left": XK_ISO_Set_Margin_Left,
+ "ISO_Set_Margin_Right": XK_ISO_Set_Margin_Right,
+ "Iabovedot": XK_Iabovedot,
+ "Iacute": XK_Iacute,
+ "Ibelowdot": XK_Ibelowdot,
+ "Ibreve": XK_Ibreve,
+ "Icircumflex": XK_Icircumflex,
+ "Idiaeresis": XK_Idiaeresis,
+ "Igrave": XK_Igrave,
+ "Ihook": XK_Ihook,
+ "Imacron": XK_Imacron,
+ "Insert": XK_Insert,
+ "Iogonek": XK_Iogonek,
+ "Itilde": XK_Itilde,
+ "J": XK_J,
+ "Jcircumflex": XK_Jcircumflex,
+ "K": XK_K,
+ "KP_0": XK_KP_0,
+ "KP_1": XK_KP_1,
+ "KP_2": XK_KP_2,
+ "KP_3": XK_KP_3,
+ "KP_4": XK_KP_4,
+ "KP_5": XK_KP_5,
+ "KP_6": XK_KP_6,
+ "KP_7": XK_KP_7,
+ "KP_8": XK_KP_8,
+ "KP_9": XK_KP_9,
+ "KP_Add": XK_KP_Add,
+ "KP_Begin": XK_KP_Begin,
+ "KP_Decimal": XK_KP_Decimal,
+ "KP_Delete": XK_KP_Delete,
+ "KP_Divide": XK_KP_Divide,
+ "KP_Down": XK_KP_Down,
+ "KP_End": XK_KP_End,
+ "KP_Enter": XK_KP_Enter,
+ "KP_Equal": XK_KP_Equal,
+ "KP_F1": XK_KP_F1,
+ "KP_F2": XK_KP_F2,
+ "KP_F3": XK_KP_F3,
+ "KP_F4": XK_KP_F4,
+ "KP_Home": XK_KP_Home,
+ "KP_Insert": XK_KP_Insert,
+ "KP_Left": XK_KP_Left,
+ "KP_Multiply": XK_KP_Multiply,
+ "KP_Next": XK_KP_Next,
+ "KP_Page_Down": XK_KP_Page_Down,
+ "KP_Page_Up": XK_KP_Page_Up,
+ "KP_Prior": XK_KP_Prior,
+ "KP_Right": XK_KP_Right,
+ "KP_Separator": XK_KP_Separator,
+ "KP_Space": XK_KP_Space,
+ "KP_Subtract": XK_KP_Subtract,
+ "KP_Tab": XK_KP_Tab,
+ "KP_Up": XK_KP_Up,
+ "Kana_Lock": XK_Kana_Lock,
+ "Kana_Shift": XK_Kana_Shift,
+ "Kanji": XK_Kanji,
+ "Kanji_Bangou": XK_Kanji_Bangou,
+ "Katakana": XK_Katakana,
+ "Kcedilla": XK_Kcedilla,
+ "Korean_Won": XK_Korean_Won,
+ "L": XK_L,
+ "L1": XK_L1,
+ "L10": XK_L10,
+ "L2": XK_L2,
+ "L3": XK_L3,
+ "L4": XK_L4,
+ "L5": XK_L5,
+ "L6": XK_L6,
+ "L7": XK_L7,
+ "L8": XK_L8,
+ "L9": XK_L9,
+ "Lacute": XK_Lacute,
+ "Last_Virtual_Screen": XK_Last_Virtual_Screen,
+ "Lbelowdot": XK_Lbelowdot,
+ "Lcaron": XK_Lcaron,
+ "Lcedilla": XK_Lcedilla,
+ "Left": XK_Left,
+ "Linefeed": XK_Linefeed,
+ "LiraSign": XK_LiraSign,
+ "Lstroke": XK_Lstroke,
+ "M": XK_M,
+ "Mabovedot": XK_Mabovedot,
+ "Macedonia_DSE": XK_Macedonia_DSE,
+ "Macedonia_GJE": XK_Macedonia_GJE,
+ "Macedonia_KJE": XK_Macedonia_KJE,
+ "Macedonia_dse": XK_Macedonia_dse,
+ "Macedonia_gje": XK_Macedonia_gje,
+ "Macedonia_kje": XK_Macedonia_kje,
+ "Mae_Koho": XK_Mae_Koho,
+ "Massyo": XK_Massyo,
+ "Menu": XK_Menu,
+ "Meta_L": XK_Meta_L,
+ "Meta_R": XK_Meta_R,
+ "MillSign": XK_MillSign,
+ "Mode_switch": XK_Mode_switch,
+ "MouseKeys_Accel_Enable": XK_MouseKeys_Accel_Enable,
+ "MouseKeys_Enable": XK_MouseKeys_Enable,
+ "Muhenkan": XK_Muhenkan,
+ "Multi_key": XK_Multi_key,
+ "MultipleCandidate": XK_MultipleCandidate,
+ "N": XK_N,
+ "Nacute": XK_Nacute,
+ "NairaSign": XK_NairaSign,
+ "Ncaron": XK_Ncaron,
+ "Ncedilla": XK_Ncedilla,
+ "NewSheqelSign": XK_NewSheqelSign,
+ "Next": XK_Next,
+ "Next_Virtual_Screen": XK_Next_Virtual_Screen,
+ "Ntilde": XK_Ntilde,
+ "Num_Lock": XK_Num_Lock,
+ "O": XK_O,
+ "OE": XK_OE,
+ "Oacute": XK_Oacute,
+ "Obarred": XK_Obarred,
+ "Obelowdot": XK_Obelowdot,
+ "Ocaron": XK_Ocaron,
+ "Ocircumflex": XK_Ocircumflex,
+ "Ocircumflexacute": XK_Ocircumflexacute,
+ "Ocircumflexbelowdot": XK_Ocircumflexbelowdot,
+ "Ocircumflexgrave": XK_Ocircumflexgrave,
+ "Ocircumflexhook": XK_Ocircumflexhook,
+ "Ocircumflextilde": XK_Ocircumflextilde,
+ "Odiaeresis": XK_Odiaeresis,
+ "Odoubleacute": XK_Odoubleacute,
+ "Ograve": XK_Ograve,
+ "Ohook": XK_Ohook,
+ "Ohorn": XK_Ohorn,
+ "Ohornacute": XK_Ohornacute,
+ "Ohornbelowdot": XK_Ohornbelowdot,
+ "Ohorngrave": XK_Ohorngrave,
+ "Ohornhook": XK_Ohornhook,
+ "Ohorntilde": XK_Ohorntilde,
+ "Omacron": XK_Omacron,
+ "Ooblique": XK_Ooblique,
+ "Oslash": XK_Oslash,
+ "Otilde": XK_Otilde,
+ "Overlay1_Enable": XK_Overlay1_Enable,
+ "Overlay2_Enable": XK_Overlay2_Enable,
+ "P": XK_P,
+ "Pabovedot": XK_Pabovedot,
+ "Page_Down": XK_Page_Down,
+ "Page_Up": XK_Page_Up,
+ "Pause": XK_Pause,
+ "PesetaSign": XK_PesetaSign,
+ "Pointer_Accelerate": XK_Pointer_Accelerate,
+ "Pointer_Button1": XK_Pointer_Button1,
+ "Pointer_Button2": XK_Pointer_Button2,
+ "Pointer_Button3": XK_Pointer_Button3,
+ "Pointer_Button4": XK_Pointer_Button4,
+ "Pointer_Button5": XK_Pointer_Button5,
+ "Pointer_Button_Dflt": XK_Pointer_Button_Dflt,
+ "Pointer_DblClick1": XK_Pointer_DblClick1,
+ "Pointer_DblClick2": XK_Pointer_DblClick2,
+ "Pointer_DblClick3": XK_Pointer_DblClick3,
+ "Pointer_DblClick4": XK_Pointer_DblClick4,
+ "Pointer_DblClick5": XK_Pointer_DblClick5,
+ "Pointer_DblClick_Dflt": XK_Pointer_DblClick_Dflt,
+ "Pointer_DfltBtnNext": XK_Pointer_DfltBtnNext,
+ "Pointer_DfltBtnPrev": XK_Pointer_DfltBtnPrev,
+ "Pointer_Down": XK_Pointer_Down,
+ "Pointer_DownLeft": XK_Pointer_DownLeft,
+ "Pointer_DownRight": XK_Pointer_DownRight,
+ "Pointer_Drag1": XK_Pointer_Drag1,
+ "Pointer_Drag2": XK_Pointer_Drag2,
+ "Pointer_Drag3": XK_Pointer_Drag3,
+ "Pointer_Drag4": XK_Pointer_Drag4,
+ "Pointer_Drag5": XK_Pointer_Drag5,
+ "Pointer_Drag_Dflt": XK_Pointer_Drag_Dflt,
+ "Pointer_EnableKeys": XK_Pointer_EnableKeys,
+ "Pointer_Left": XK_Pointer_Left,
+ "Pointer_Right": XK_Pointer_Right,
+ "Pointer_Up": XK_Pointer_Up,
+ "Pointer_UpLeft": XK_Pointer_UpLeft,
+ "Pointer_UpRight": XK_Pointer_UpRight,
+ "Prev_Virtual_Screen": XK_Prev_Virtual_Screen,
+ "PreviousCandidate": XK_PreviousCandidate,
+ "Print": XK_Print,
+ "Prior": XK_Prior,
+ "Q": XK_Q,
+ "R": XK_R,
+ "R1": XK_R1,
+ "R10": XK_R10,
+ "R11": XK_R11,
+ "R12": XK_R12,
+ "R13": XK_R13,
+ "R14": XK_R14,
+ "R15": XK_R15,
+ "R2": XK_R2,
+ "R3": XK_R3,
+ "R4": XK_R4,
+ "R5": XK_R5,
+ "R6": XK_R6,
+ "R7": XK_R7,
+ "R8": XK_R8,
+ "R9": XK_R9,
+ "Racute": XK_Racute,
+ "Rcaron": XK_Rcaron,
+ "Rcedilla": XK_Rcedilla,
+ "Redo": XK_Redo,
+ "RepeatKeys_Enable": XK_RepeatKeys_Enable,
+ "Return": XK_Return,
+ "Right": XK_Right,
+ "Romaji": XK_Romaji,
+ "RupeeSign": XK_RupeeSign,
+ "S": XK_S,
+ "SCHWA": XK_SCHWA,
+ "Sabovedot": XK_Sabovedot,
+ "Sacute": XK_Sacute,
+ "Scaron": XK_Scaron,
+ "Scedilla": XK_Scedilla,
+ "Scircumflex": XK_Scircumflex,
+ "Scroll_Lock": XK_Scroll_Lock,
+ "Select": XK_Select,
+ "Serbian_DJE": XK_Serbian_DJE,
+ "Serbian_DZE": XK_Serbian_DZE,
+ "Serbian_JE": XK_Serbian_JE,
+ "Serbian_LJE": XK_Serbian_LJE,
+ "Serbian_NJE": XK_Serbian_NJE,
+ "Serbian_TSHE": XK_Serbian_TSHE,
+ "Serbian_dje": XK_Serbian_dje,
+ "Serbian_dze": XK_Serbian_dze,
+ "Serbian_je": XK_Serbian_je,
+ "Serbian_lje": XK_Serbian_lje,
+ "Serbian_nje": XK_Serbian_nje,
+ "Serbian_tshe": XK_Serbian_tshe,
+ "Shift_L": XK_Shift_L,
+ "Shift_Lock": XK_Shift_Lock,
+ "Shift_R": XK_Shift_R,
+ "SingleCandidate": XK_SingleCandidate,
+ "Sinh_a": XK_Sinh_a,
+ "Sinh_aa": XK_Sinh_aa,
+ "Sinh_aa2": XK_Sinh_aa2,
+ "Sinh_ae": XK_Sinh_ae,
+ "Sinh_ae2": XK_Sinh_ae2,
+ "Sinh_aee": XK_Sinh_aee,
+ "Sinh_aee2": XK_Sinh_aee2,
+ "Sinh_ai": XK_Sinh_ai,
+ "Sinh_ai2": XK_Sinh_ai2,
+ "Sinh_al": XK_Sinh_al,
+ "Sinh_au": XK_Sinh_au,
+ "Sinh_au2": XK_Sinh_au2,
+ "Sinh_ba": XK_Sinh_ba,
+ "Sinh_bha": XK_Sinh_bha,
+ "Sinh_ca": XK_Sinh_ca,
+ "Sinh_cha": XK_Sinh_cha,
+ "Sinh_dda": XK_Sinh_dda,
+ "Sinh_ddha": XK_Sinh_ddha,
+ "Sinh_dha": XK_Sinh_dha,
+ "Sinh_dhha": XK_Sinh_dhha,
+ "Sinh_e": XK_Sinh_e,
+ "Sinh_e2": XK_Sinh_e2,
+ "Sinh_ee": XK_Sinh_ee,
+ "Sinh_ee2": XK_Sinh_ee2,
+ "Sinh_fa": XK_Sinh_fa,
+ "Sinh_ga": XK_Sinh_ga,
+ "Sinh_gha": XK_Sinh_gha,
+ "Sinh_h2": XK_Sinh_h2,
+ "Sinh_ha": XK_Sinh_ha,
+ "Sinh_i": XK_Sinh_i,
+ "Sinh_i2": XK_Sinh_i2,
+ "Sinh_ii": XK_Sinh_ii,
+ "Sinh_ii2": XK_Sinh_ii2,
+ "Sinh_ja": XK_Sinh_ja,
+ "Sinh_jha": XK_Sinh_jha,
+ "Sinh_jnya": XK_Sinh_jnya,
+ "Sinh_ka": XK_Sinh_ka,
+ "Sinh_kha": XK_Sinh_kha,
+ "Sinh_kunddaliya": XK_Sinh_kunddaliya,
+ "Sinh_la": XK_Sinh_la,
+ "Sinh_lla": XK_Sinh_lla,
+ "Sinh_lu": XK_Sinh_lu,
+ "Sinh_lu2": XK_Sinh_lu2,
+ "Sinh_luu": XK_Sinh_luu,
+ "Sinh_luu2": XK_Sinh_luu2,
+ "Sinh_ma": XK_Sinh_ma,
+ "Sinh_mba": XK_Sinh_mba,
+ "Sinh_na": XK_Sinh_na,
+ "Sinh_ndda": XK_Sinh_ndda,
+ "Sinh_ndha": XK_Sinh_ndha,
+ "Sinh_ng": XK_Sinh_ng,
+ "Sinh_ng2": XK_Sinh_ng2,
+ "Sinh_nga": XK_Sinh_nga,
+ "Sinh_nja": XK_Sinh_nja,
+ "Sinh_nna": XK_Sinh_nna,
+ "Sinh_nya": XK_Sinh_nya,
+ "Sinh_o": XK_Sinh_o,
+ "Sinh_o2": XK_Sinh_o2,
+ "Sinh_oo": XK_Sinh_oo,
+ "Sinh_oo2": XK_Sinh_oo2,
+ "Sinh_pa": XK_Sinh_pa,
+ "Sinh_pha": XK_Sinh_pha,
+ "Sinh_ra": XK_Sinh_ra,
+ "Sinh_ri": XK_Sinh_ri,
+ "Sinh_rii": XK_Sinh_rii,
+ "Sinh_ru2": XK_Sinh_ru2,
+ "Sinh_ruu2": XK_Sinh_ruu2,
+ "Sinh_sa": XK_Sinh_sa,
+ "Sinh_sha": XK_Sinh_sha,
+ "Sinh_ssha": XK_Sinh_ssha,
+ "Sinh_tha": XK_Sinh_tha,
+ "Sinh_thha": XK_Sinh_thha,
+ "Sinh_tta": XK_Sinh_tta,
+ "Sinh_ttha": XK_Sinh_ttha,
+ "Sinh_u": XK_Sinh_u,
+ "Sinh_u2": XK_Sinh_u2,
+ "Sinh_uu": XK_Sinh_uu,
+ "Sinh_uu2": XK_Sinh_uu2,
+ "Sinh_va": XK_Sinh_va,
+ "Sinh_ya": XK_Sinh_ya,
+ "SlowKeys_Enable": XK_SlowKeys_Enable,
+ "StickyKeys_Enable": XK_StickyKeys_Enable,
+ "Super_L": XK_Super_L,
+ "Super_R": XK_Super_R,
+ "Sys_Req": XK_Sys_Req,
+ "T": XK_T,
+ "THORN": XK_THORN,
+ "Tab": XK_Tab,
+ "Tabovedot": XK_Tabovedot,
+ "Tcaron": XK_Tcaron,
+ "Tcedilla": XK_Tcedilla,
+ "Terminate_Server": XK_Terminate_Server,
+ "Thai_baht": XK_Thai_baht,
+ "Thai_bobaimai": XK_Thai_bobaimai,
+ "Thai_chochan": XK_Thai_chochan,
+ "Thai_chochang": XK_Thai_chochang,
+ "Thai_choching": XK_Thai_choching,
+ "Thai_chochoe": XK_Thai_chochoe,
+ "Thai_dochada": XK_Thai_dochada,
+ "Thai_dodek": XK_Thai_dodek,
+ "Thai_fofa": XK_Thai_fofa,
+ "Thai_fofan": XK_Thai_fofan,
+ "Thai_hohip": XK_Thai_hohip,
+ "Thai_honokhuk": XK_Thai_honokhuk,
+ "Thai_khokhai": XK_Thai_khokhai,
+ "Thai_khokhon": XK_Thai_khokhon,
+ "Thai_khokhuat": XK_Thai_khokhuat,
+ "Thai_khokhwai": XK_Thai_khokhwai,
+ "Thai_khorakhang": XK_Thai_khorakhang,
+ "Thai_kokai": XK_Thai_kokai,
+ "Thai_lakkhangyao": XK_Thai_lakkhangyao,
+ "Thai_lekchet": XK_Thai_lekchet,
+ "Thai_lekha": XK_Thai_lekha,
+ "Thai_lekhok": XK_Thai_lekhok,
+ "Thai_lekkao": XK_Thai_lekkao,
+ "Thai_leknung": XK_Thai_leknung,
+ "Thai_lekpaet": XK_Thai_lekpaet,
+ "Thai_leksam": XK_Thai_leksam,
+ "Thai_leksi": XK_Thai_leksi,
+ "Thai_leksong": XK_Thai_leksong,
+ "Thai_leksun": XK_Thai_leksun,
+ "Thai_lochula": XK_Thai_lochula,
+ "Thai_loling": XK_Thai_loling,
+ "Thai_lu": XK_Thai_lu,
+ "Thai_maichattawa": XK_Thai_maichattawa,
+ "Thai_maiek": XK_Thai_maiek,
+ "Thai_maihanakat": XK_Thai_maihanakat,
+ "Thai_maihanakat_maitho": XK_Thai_maihanakat_maitho,
+ "Thai_maitaikhu": XK_Thai_maitaikhu,
+ "Thai_maitho": XK_Thai_maitho,
+ "Thai_maitri": XK_Thai_maitri,
+ "Thai_maiyamok": XK_Thai_maiyamok,
+ "Thai_moma": XK_Thai_moma,
+ "Thai_ngongu": XK_Thai_ngongu,
+ "Thai_nikhahit": XK_Thai_nikhahit,
+ "Thai_nonen": XK_Thai_nonen,
+ "Thai_nonu": XK_Thai_nonu,
+ "Thai_oang": XK_Thai_oang,
+ "Thai_paiyannoi": XK_Thai_paiyannoi,
+ "Thai_phinthu": XK_Thai_phinthu,
+ "Thai_phophan": XK_Thai_phophan,
+ "Thai_phophung": XK_Thai_phophung,
+ "Thai_phosamphao": XK_Thai_phosamphao,
+ "Thai_popla": XK_Thai_popla,
+ "Thai_rorua": XK_Thai_rorua,
+ "Thai_ru": XK_Thai_ru,
+ "Thai_saraa": XK_Thai_saraa,
+ "Thai_saraaa": XK_Thai_saraaa,
+ "Thai_saraae": XK_Thai_saraae,
+ "Thai_saraaimaimalai": XK_Thai_saraaimaimalai,
+ "Thai_saraaimaimuan": XK_Thai_saraaimaimuan,
+ "Thai_saraam": XK_Thai_saraam,
+ "Thai_sarae": XK_Thai_sarae,
+ "Thai_sarai": XK_Thai_sarai,
+ "Thai_saraii": XK_Thai_saraii,
+ "Thai_sarao": XK_Thai_sarao,
+ "Thai_sarau": XK_Thai_sarau,
+ "Thai_saraue": XK_Thai_saraue,
+ "Thai_sarauee": XK_Thai_sarauee,
+ "Thai_sarauu": XK_Thai_sarauu,
+ "Thai_sorusi": XK_Thai_sorusi,
+ "Thai_sosala": XK_Thai_sosala,
+ "Thai_soso": XK_Thai_soso,
+ "Thai_sosua": XK_Thai_sosua,
+ "Thai_thanthakhat": XK_Thai_thanthakhat,
+ "Thai_thonangmontho": XK_Thai_thonangmontho,
+ "Thai_thophuthao": XK_Thai_thophuthao,
+ "Thai_thothahan": XK_Thai_thothahan,
+ "Thai_thothan": XK_Thai_thothan,
+ "Thai_thothong": XK_Thai_thothong,
+ "Thai_thothung": XK_Thai_thothung,
+ "Thai_topatak": XK_Thai_topatak,
+ "Thai_totao": XK_Thai_totao,
+ "Thai_wowaen": XK_Thai_wowaen,
+ "Thai_yoyak": XK_Thai_yoyak,
+ "Thai_yoying": XK_Thai_yoying,
+ "Thorn": XK_Thorn,
+ "Touroku": XK_Touroku,
+ "Tslash": XK_Tslash,
+ "U": XK_U,
+ "Uacute": XK_Uacute,
+ "Ubelowdot": XK_Ubelowdot,
+ "Ubreve": XK_Ubreve,
+ "Ucircumflex": XK_Ucircumflex,
+ "Udiaeresis": XK_Udiaeresis,
+ "Udoubleacute": XK_Udoubleacute,
+ "Ugrave": XK_Ugrave,
+ "Uhook": XK_Uhook,
+ "Uhorn": XK_Uhorn,
+ "Uhornacute": XK_Uhornacute,
+ "Uhornbelowdot": XK_Uhornbelowdot,
+ "Uhorngrave": XK_Uhorngrave,
+ "Uhornhook": XK_Uhornhook,
+ "Uhorntilde": XK_Uhorntilde,
+ "Ukrainian_GHE_WITH_UPTURN": XK_Ukrainian_GHE_WITH_UPTURN,
+ "Ukrainian_I": XK_Ukrainian_I,
+ "Ukrainian_IE": XK_Ukrainian_IE,
+ "Ukrainian_YI": XK_Ukrainian_YI,
+ "Ukrainian_ghe_with_upturn": XK_Ukrainian_ghe_with_upturn,
+ "Ukrainian_i": XK_Ukrainian_i,
+ "Ukrainian_ie": XK_Ukrainian_ie,
+ "Ukrainian_yi": XK_Ukrainian_yi,
+ "Ukranian_I": XK_Ukranian_I,
+ "Ukranian_JE": XK_Ukranian_JE,
+ "Ukranian_YI": XK_Ukranian_YI,
+ "Ukranian_i": XK_Ukranian_i,
+ "Ukranian_je": XK_Ukranian_je,
+ "Ukranian_yi": XK_Ukranian_yi,
+ "Umacron": XK_Umacron,
+ "Undo": XK_Undo,
+ "Uogonek": XK_Uogonek,
+ "Up": XK_Up,
+ "Uring": XK_Uring,
+ "Utilde": XK_Utilde,
+ "V": XK_V,
+ "VoidSymbol": XK_VoidSymbol,
+ "W": XK_W,
+ "Wacute": XK_Wacute,
+ "Wcircumflex": XK_Wcircumflex,
+ "Wdiaeresis": XK_Wdiaeresis,
+ "Wgrave": XK_Wgrave,
+ "WonSign": XK_WonSign,
+ "X": XK_X,
+ "XF86AddFavorite": XF86XK_AddFavorite,
+ "XF86ApplicationLeft": XF86XK_ApplicationLeft,
+ "XF86ApplicationRight": XF86XK_ApplicationRight,
+ "XF86AudioCycleTrack": XF86XK_AudioCycleTrack,
+ "XF86AudioForward": XF86XK_AudioForward,
+ "XF86AudioLowerVolume": XF86XK_AudioLowerVolume,
+ "XF86AudioMedia": XF86XK_AudioMedia,
+ "XF86AudioMicMute": XF86XK_AudioMicMute,
+ "XF86AudioMute": XF86XK_AudioMute,
+ "XF86AudioNext": XF86XK_AudioNext,
+ "XF86AudioPause": XF86XK_AudioPause,
+ "XF86AudioPlay": XF86XK_AudioPlay,
+ "XF86AudioPreset": XF86XK_AudioPreset,
+ "XF86AudioPrev": XF86XK_AudioPrev,
+ "XF86AudioRaiseVolume": XF86XK_AudioRaiseVolume,
+ "XF86AudioRandomPlay": XF86XK_AudioRandomPlay,
+ "XF86AudioRecord": XF86XK_AudioRecord,
+ "XF86AudioRepeat": XF86XK_AudioRepeat,
+ "XF86AudioRewind": XF86XK_AudioRewind,
+ "XF86AudioStop": XF86XK_AudioStop,
+ "XF86Away": XF86XK_Away,
+ "XF86Back": XF86XK_Back,
+ "XF86BackForward": XF86XK_BackForward,
+ "XF86Battery": XF86XK_Battery,
+ "XF86Blue": XF86XK_Blue,
+ "XF86Bluetooth": XF86XK_Bluetooth,
+ "XF86Book": XF86XK_Book,
+ "XF86BrightnessAdjust": XF86XK_BrightnessAdjust,
+ "XF86CD": XF86XK_CD,
+ "XF86Calculater": XF86XK_Calculater,
+ "XF86Calculator": XF86XK_Calculator,
+ "XF86Calendar": XF86XK_Calendar,
+ "XF86Clear": XF86XK_Clear,
+ "XF86ClearGrab": XF86XK_ClearGrab,
+ "XF86Close": XF86XK_Close,
+ "XF86Community": XF86XK_Community,
+ "XF86ContrastAdjust": XF86XK_ContrastAdjust,
+ "XF86Copy": XF86XK_Copy,
+ "XF86Cut": XF86XK_Cut,
+ "XF86CycleAngle": XF86XK_CycleAngle,
+ "XF86DOS": XF86XK_DOS,
+ "XF86Display": XF86XK_Display,
+ "XF86Documents": XF86XK_Documents,
+ "XF86Eject": XF86XK_Eject,
+ "XF86Excel": XF86XK_Excel,
+ "XF86Explorer": XF86XK_Explorer,
+ "XF86Favorites": XF86XK_Favorites,
+ "XF86Finance": XF86XK_Finance,
+ "XF86Forward": XF86XK_Forward,
+ "XF86FrameBack": XF86XK_FrameBack,
+ "XF86FrameForward": XF86XK_FrameForward,
+ "XF86Game": XF86XK_Game,
+ "XF86Go": XF86XK_Go,
+ "XF86Green": XF86XK_Green,
+ "XF86Hibernate": XF86XK_Hibernate,
+ "XF86History": XF86XK_History,
+ "XF86HomePage": XF86XK_HomePage,
+ "XF86HotLinks": XF86XK_HotLinks,
+ "XF86KbdBrightnessDown": XF86XK_KbdBrightnessDown,
+ "XF86KbdBrightnessUp": XF86XK_KbdBrightnessUp,
+ "XF86KbdLightOnOff": XF86XK_KbdLightOnOff,
+ "XF86Keyboard": XF86XK_Keyboard,
+ "XF86Launch0": XF86XK_Launch0,
+ "XF86Launch1": XF86XK_Launch1,
+ "XF86Launch2": XF86XK_Launch2,
+ "XF86Launch3": XF86XK_Launch3,
+ "XF86Launch4": XF86XK_Launch4,
+ "XF86Launch5": XF86XK_Launch5,
+ "XF86Launch6": XF86XK_Launch6,
+ "XF86Launch7": XF86XK_Launch7,
+ "XF86Launch8": XF86XK_Launch8,
+ "XF86Launch9": XF86XK_Launch9,
+ "XF86LaunchA": XF86XK_LaunchA,
+ "XF86LaunchB": XF86XK_LaunchB,
+ "XF86LaunchC": XF86XK_LaunchC,
+ "XF86LaunchD": XF86XK_LaunchD,
+ "XF86LaunchE": XF86XK_LaunchE,
+ "XF86LaunchF": XF86XK_LaunchF,
+ "XF86LightBulb": XF86XK_LightBulb,
+ "XF86LogGrabInfo": XF86XK_LogGrabInfo,
+ "XF86LogOff": XF86XK_LogOff,
+ "XF86LogWindowTree": XF86XK_LogWindowTree,
+ "XF86Mail": XF86XK_Mail,
+ "XF86MailForward": XF86XK_MailForward,
+ "XF86Market": XF86XK_Market,
+ "XF86Meeting": XF86XK_Meeting,
+ "XF86Memo": XF86XK_Memo,
+ "XF86MenuKB": XF86XK_MenuKB,
+ "XF86MenuPB": XF86XK_MenuPB,
+ "XF86Messenger": XF86XK_Messenger,
+ "XF86ModeLock": XF86XK_ModeLock,
+ "XF86MonBrightnessDown": XF86XK_MonBrightnessDown,
+ "XF86MonBrightnessUp": XF86XK_MonBrightnessUp,
+ "XF86Music": XF86XK_Music,
+ "XF86MyComputer": XF86XK_MyComputer,
+ "XF86MySites": XF86XK_MySites,
+ "XF86New": XF86XK_New,
+ "XF86News": XF86XK_News,
+ "XF86Next_VMode": XF86XK_Next_VMode,
+ "XF86OfficeHome": XF86XK_OfficeHome,
+ "XF86Open": XF86XK_Open,
+ "XF86OpenURL": XF86XK_OpenURL,
+ "XF86Option": XF86XK_Option,
+ "XF86Paste": XF86XK_Paste,
+ "XF86Phone": XF86XK_Phone,
+ "XF86Pictures": XF86XK_Pictures,
+ "XF86PowerDown": XF86XK_PowerDown,
+ "XF86PowerOff": XF86XK_PowerOff,
+ "XF86Prev_VMode": XF86XK_Prev_VMode,
+ "XF86Q": XF86XK_Q,
+ "XF86RFKill": XF86XK_RFKill,
+ "XF86Red": XF86XK_Red,
+ "XF86Refresh": XF86XK_Refresh,
+ "XF86Reload": XF86XK_Reload,
+ "XF86Reply": XF86XK_Reply,
+ "XF86RockerDown": XF86XK_RockerDown,
+ "XF86RockerEnter": XF86XK_RockerEnter,
+ "XF86RockerUp": XF86XK_RockerUp,
+ "XF86RotateWindows": XF86XK_RotateWindows,
+ "XF86RotationKB": XF86XK_RotationKB,
+ "XF86RotationPB": XF86XK_RotationPB,
+ "XF86Save": XF86XK_Save,
+ "XF86ScreenSaver": XF86XK_ScreenSaver,
+ "XF86ScrollClick": XF86XK_ScrollClick,
+ "XF86ScrollDown": XF86XK_ScrollDown,
+ "XF86ScrollUp": XF86XK_ScrollUp,
+ "XF86Search": XF86XK_Search,
+ "XF86Select": XF86XK_Select,
+ "XF86Send": XF86XK_Send,
+ "XF86Shop": XF86XK_Shop,
+ "XF86Sleep": XF86XK_Sleep,
+ "XF86Spell": XF86XK_Spell,
+ "XF86SplitScreen": XF86XK_SplitScreen,
+ "XF86Standby": XF86XK_Standby,
+ "XF86Start": XF86XK_Start,
+ "XF86Stop": XF86XK_Stop,
+ "XF86Subtitle": XF86XK_Subtitle,
+ "XF86Support": XF86XK_Support,
+ "XF86Suspend": XF86XK_Suspend,
+ "XF86Switch_VT_1": XF86XK_Switch_VT_1,
+ "XF86Switch_VT_10": XF86XK_Switch_VT_10,
+ "XF86Switch_VT_11": XF86XK_Switch_VT_11,
+ "XF86Switch_VT_12": XF86XK_Switch_VT_12,
+ "XF86Switch_VT_2": XF86XK_Switch_VT_2,
+ "XF86Switch_VT_3": XF86XK_Switch_VT_3,
+ "XF86Switch_VT_4": XF86XK_Switch_VT_4,
+ "XF86Switch_VT_5": XF86XK_Switch_VT_5,
+ "XF86Switch_VT_6": XF86XK_Switch_VT_6,
+ "XF86Switch_VT_7": XF86XK_Switch_VT_7,
+ "XF86Switch_VT_8": XF86XK_Switch_VT_8,
+ "XF86Switch_VT_9": XF86XK_Switch_VT_9,
+ "XF86TaskPane": XF86XK_TaskPane,
+ "XF86Terminal": XF86XK_Terminal,
+ "XF86Time": XF86XK_Time,
+ "XF86ToDoList": XF86XK_ToDoList,
+ "XF86Tools": XF86XK_Tools,
+ "XF86TopMenu": XF86XK_TopMenu,
+ "XF86TouchpadOff": XF86XK_TouchpadOff,
+ "XF86TouchpadOn": XF86XK_TouchpadOn,
+ "XF86TouchpadToggle": XF86XK_TouchpadToggle,
+ "XF86Travel": XF86XK_Travel,
+ "XF86UWB": XF86XK_UWB,
+ "XF86Ungrab": XF86XK_Ungrab,
+ "XF86User1KB": XF86XK_User1KB,
+ "XF86User2KB": XF86XK_User2KB,
+ "XF86UserPB": XF86XK_UserPB,
+ "XF86VendorHome": XF86XK_VendorHome,
+ "XF86Video": XF86XK_Video,
+ "XF86View": XF86XK_View,
+ "XF86WLAN": XF86XK_WLAN,
+ "XF86WWAN": XF86XK_WWAN,
+ "XF86WWW": XF86XK_WWW,
+ "XF86WakeUp": XF86XK_WakeUp,
+ "XF86WebCam": XF86XK_WebCam,
+ "XF86WheelButton": XF86XK_WheelButton,
+ "XF86Word": XF86XK_Word,
+ "XF86Xfer": XF86XK_Xfer,
+ "XF86Yellow": XF86XK_Yellow,
+ "XF86ZoomIn": XF86XK_ZoomIn,
+ "XF86ZoomOut": XF86XK_ZoomOut,
+ "XF86iTouch": XF86XK_iTouch,
+ "Xabovedot": XK_Xabovedot,
+ "Y": XK_Y,
+ "Yacute": XK_Yacute,
+ "Ybelowdot": XK_Ybelowdot,
+ "Ycircumflex": XK_Ycircumflex,
+ "Ydiaeresis": XK_Ydiaeresis,
+ "Ygrave": XK_Ygrave,
+ "Yhook": XK_Yhook,
+ "Ytilde": XK_Ytilde,
+ "Z": XK_Z,
+ "Zabovedot": XK_Zabovedot,
+ "Zacute": XK_Zacute,
+ "Zcaron": XK_Zcaron,
+ "Zen_Koho": XK_Zen_Koho,
+ "Zenkaku": XK_Zenkaku,
+ "Zenkaku_Hankaku": XK_Zenkaku_Hankaku,
+ "Zstroke": XK_Zstroke,
+ "a": XK_a,
+ "aacute": XK_aacute,
+ "abelowdot": XK_abelowdot,
+ "abovedot": XK_abovedot,
+ "abreve": XK_abreve,
+ "abreveacute": XK_abreveacute,
+ "abrevebelowdot": XK_abrevebelowdot,
+ "abrevegrave": XK_abrevegrave,
+ "abrevehook": XK_abrevehook,
+ "abrevetilde": XK_abrevetilde,
+ "acircumflex": XK_acircumflex,
+ "acircumflexacute": XK_acircumflexacute,
+ "acircumflexbelowdot": XK_acircumflexbelowdot,
+ "acircumflexgrave": XK_acircumflexgrave,
+ "acircumflexhook": XK_acircumflexhook,
+ "acircumflextilde": XK_acircumflextilde,
+ "acute": XK_acute,
+ "adiaeresis": XK_adiaeresis,
+ "ae": XK_ae,
+ "agrave": XK_agrave,
+ "ahook": XK_ahook,
+ "amacron": XK_amacron,
+ "ampersand": XK_ampersand,
+ "aogonek": XK_aogonek,
+ "apostrophe": XK_apostrophe,
+ "approxeq": XK_approxeq,
+ "approximate": XK_approximate,
+ "aring": XK_aring,
+ "asciicircum": XK_asciicircum,
+ "asciitilde": XK_asciitilde,
+ "asterisk": XK_asterisk,
+ "at": XK_at,
+ "atilde": XK_atilde,
+ "b": XK_b,
+ "babovedot": XK_babovedot,
+ "backslash": XK_backslash,
+ "ballotcross": XK_ballotcross,
+ "bar": XK_bar,
+ "because": XK_because,
+ "blank": XK_blank,
+ "botintegral": XK_botintegral,
+ "botleftparens": XK_botleftparens,
+ "botleftsqbracket": XK_botleftsqbracket,
+ "botleftsummation": XK_botleftsummation,
+ "botrightparens": XK_botrightparens,
+ "botrightsqbracket": XK_botrightsqbracket,
+ "botrightsummation": XK_botrightsummation,
+ "bott": XK_bott,
+ "botvertsummationconnector": XK_botvertsummationconnector,
+ "braceleft": XK_braceleft,
+ "braceright": XK_braceright,
+ "bracketleft": XK_bracketleft,
+ "bracketright": XK_bracketright,
+ "braille_blank": XK_braille_blank,
+ "braille_dot_1": XK_braille_dot_1,
+ "braille_dot_10": XK_braille_dot_10,
+ "braille_dot_2": XK_braille_dot_2,
+ "braille_dot_3": XK_braille_dot_3,
+ "braille_dot_4": XK_braille_dot_4,
+ "braille_dot_5": XK_braille_dot_5,
+ "braille_dot_6": XK_braille_dot_6,
+ "braille_dot_7": XK_braille_dot_7,
+ "braille_dot_8": XK_braille_dot_8,
+ "braille_dot_9": XK_braille_dot_9,
+ "braille_dots_1": XK_braille_dots_1,
+ "braille_dots_12": XK_braille_dots_12,
+ "braille_dots_123": XK_braille_dots_123,
+ "braille_dots_1234": XK_braille_dots_1234,
+ "braille_dots_12345": XK_braille_dots_12345,
+ "braille_dots_123456": XK_braille_dots_123456,
+ "braille_dots_1234567": XK_braille_dots_1234567,
+ "braille_dots_12345678": XK_braille_dots_12345678,
+ "braille_dots_1234568": XK_braille_dots_1234568,
+ "braille_dots_123457": XK_braille_dots_123457,
+ "braille_dots_1234578": XK_braille_dots_1234578,
+ "braille_dots_123458": XK_braille_dots_123458,
+ "braille_dots_12346": XK_braille_dots_12346,
+ "braille_dots_123467": XK_braille_dots_123467,
+ "braille_dots_1234678": XK_braille_dots_1234678,
+ "braille_dots_123468": XK_braille_dots_123468,
+ "braille_dots_12347": XK_braille_dots_12347,
+ "braille_dots_123478": XK_braille_dots_123478,
+ "braille_dots_12348": XK_braille_dots_12348,
+ "braille_dots_1235": XK_braille_dots_1235,
+ "braille_dots_12356": XK_braille_dots_12356,
+ "braille_dots_123567": XK_braille_dots_123567,
+ "braille_dots_1235678": XK_braille_dots_1235678,
+ "braille_dots_123568": XK_braille_dots_123568,
+ "braille_dots_12357": XK_braille_dots_12357,
+ "braille_dots_123578": XK_braille_dots_123578,
+ "braille_dots_12358": XK_braille_dots_12358,
+ "braille_dots_1236": XK_braille_dots_1236,
+ "braille_dots_12367": XK_braille_dots_12367,
+ "braille_dots_123678": XK_braille_dots_123678,
+ "braille_dots_12368": XK_braille_dots_12368,
+ "braille_dots_1237": XK_braille_dots_1237,
+ "braille_dots_12378": XK_braille_dots_12378,
+ "braille_dots_1238": XK_braille_dots_1238,
+ "braille_dots_124": XK_braille_dots_124,
+ "braille_dots_1245": XK_braille_dots_1245,
+ "braille_dots_12456": XK_braille_dots_12456,
+ "braille_dots_124567": XK_braille_dots_124567,
+ "braille_dots_1245678": XK_braille_dots_1245678,
+ "braille_dots_124568": XK_braille_dots_124568,
+ "braille_dots_12457": XK_braille_dots_12457,
+ "braille_dots_124578": XK_braille_dots_124578,
+ "braille_dots_12458": XK_braille_dots_12458,
+ "braille_dots_1246": XK_braille_dots_1246,
+ "braille_dots_12467": XK_braille_dots_12467,
+ "braille_dots_124678": XK_braille_dots_124678,
+ "braille_dots_12468": XK_braille_dots_12468,
+ "braille_dots_1247": XK_braille_dots_1247,
+ "braille_dots_12478": XK_braille_dots_12478,
+ "braille_dots_1248": XK_braille_dots_1248,
+ "braille_dots_125": XK_braille_dots_125,
+ "braille_dots_1256": XK_braille_dots_1256,
+ "braille_dots_12567": XK_braille_dots_12567,
+ "braille_dots_125678": XK_braille_dots_125678,
+ "braille_dots_12568": XK_braille_dots_12568,
+ "braille_dots_1257": XK_braille_dots_1257,
+ "braille_dots_12578": XK_braille_dots_12578,
+ "braille_dots_1258": XK_braille_dots_1258,
+ "braille_dots_126": XK_braille_dots_126,
+ "braille_dots_1267": XK_braille_dots_1267,
+ "braille_dots_12678": XK_braille_dots_12678,
+ "braille_dots_1268": XK_braille_dots_1268,
+ "braille_dots_127": XK_braille_dots_127,
+ "braille_dots_1278": XK_braille_dots_1278,
+ "braille_dots_128": XK_braille_dots_128,
+ "braille_dots_13": XK_braille_dots_13,
+ "braille_dots_134": XK_braille_dots_134,
+ "braille_dots_1345": XK_braille_dots_1345,
+ "braille_dots_13456": XK_braille_dots_13456,
+ "braille_dots_134567": XK_braille_dots_134567,
+ "braille_dots_1345678": XK_braille_dots_1345678,
+ "braille_dots_134568": XK_braille_dots_134568,
+ "braille_dots_13457": XK_braille_dots_13457,
+ "braille_dots_134578": XK_braille_dots_134578,
+ "braille_dots_13458": XK_braille_dots_13458,
+ "braille_dots_1346": XK_braille_dots_1346,
+ "braille_dots_13467": XK_braille_dots_13467,
+ "braille_dots_134678": XK_braille_dots_134678,
+ "braille_dots_13468": XK_braille_dots_13468,
+ "braille_dots_1347": XK_braille_dots_1347,
+ "braille_dots_13478": XK_braille_dots_13478,
+ "braille_dots_1348": XK_braille_dots_1348,
+ "braille_dots_135": XK_braille_dots_135,
+ "braille_dots_1356": XK_braille_dots_1356,
+ "braille_dots_13567": XK_braille_dots_13567,
+ "braille_dots_135678": XK_braille_dots_135678,
+ "braille_dots_13568": XK_braille_dots_13568,
+ "braille_dots_1357": XK_braille_dots_1357,
+ "braille_dots_13578": XK_braille_dots_13578,
+ "braille_dots_1358": XK_braille_dots_1358,
+ "braille_dots_136": XK_braille_dots_136,
+ "braille_dots_1367": XK_braille_dots_1367,
+ "braille_dots_13678": XK_braille_dots_13678,
+ "braille_dots_1368": XK_braille_dots_1368,
+ "braille_dots_137": XK_braille_dots_137,
+ "braille_dots_1378": XK_braille_dots_1378,
+ "braille_dots_138": XK_braille_dots_138,
+ "braille_dots_14": XK_braille_dots_14,
+ "braille_dots_145": XK_braille_dots_145,
+ "braille_dots_1456": XK_braille_dots_1456,
+ "braille_dots_14567": XK_braille_dots_14567,
+ "braille_dots_145678": XK_braille_dots_145678,
+ "braille_dots_14568": XK_braille_dots_14568,
+ "braille_dots_1457": XK_braille_dots_1457,
+ "braille_dots_14578": XK_braille_dots_14578,
+ "braille_dots_1458": XK_braille_dots_1458,
+ "braille_dots_146": XK_braille_dots_146,
+ "braille_dots_1467": XK_braille_dots_1467,
+ "braille_dots_14678": XK_braille_dots_14678,
+ "braille_dots_1468": XK_braille_dots_1468,
+ "braille_dots_147": XK_braille_dots_147,
+ "braille_dots_1478": XK_braille_dots_1478,
+ "braille_dots_148": XK_braille_dots_148,
+ "braille_dots_15": XK_braille_dots_15,
+ "braille_dots_156": XK_braille_dots_156,
+ "braille_dots_1567": XK_braille_dots_1567,
+ "braille_dots_15678": XK_braille_dots_15678,
+ "braille_dots_1568": XK_braille_dots_1568,
+ "braille_dots_157": XK_braille_dots_157,
+ "braille_dots_1578": XK_braille_dots_1578,
+ "braille_dots_158": XK_braille_dots_158,
+ "braille_dots_16": XK_braille_dots_16,
+ "braille_dots_167": XK_braille_dots_167,
+ "braille_dots_1678": XK_braille_dots_1678,
+ "braille_dots_168": XK_braille_dots_168,
+ "braille_dots_17": XK_braille_dots_17,
+ "braille_dots_178": XK_braille_dots_178,
+ "braille_dots_18": XK_braille_dots_18,
+ "braille_dots_2": XK_braille_dots_2,
+ "braille_dots_23": XK_braille_dots_23,
+ "braille_dots_234": XK_braille_dots_234,
+ "braille_dots_2345": XK_braille_dots_2345,
+ "braille_dots_23456": XK_braille_dots_23456,
+ "braille_dots_234567": XK_braille_dots_234567,
+ "braille_dots_2345678": XK_braille_dots_2345678,
+ "braille_dots_234568": XK_braille_dots_234568,
+ "braille_dots_23457": XK_braille_dots_23457,
+ "braille_dots_234578": XK_braille_dots_234578,
+ "braille_dots_23458": XK_braille_dots_23458,
+ "braille_dots_2346": XK_braille_dots_2346,
+ "braille_dots_23467": XK_braille_dots_23467,
+ "braille_dots_234678": XK_braille_dots_234678,
+ "braille_dots_23468": XK_braille_dots_23468,
+ "braille_dots_2347": XK_braille_dots_2347,
+ "braille_dots_23478": XK_braille_dots_23478,
+ "braille_dots_2348": XK_braille_dots_2348,
+ "braille_dots_235": XK_braille_dots_235,
+ "braille_dots_2356": XK_braille_dots_2356,
+ "braille_dots_23567": XK_braille_dots_23567,
+ "braille_dots_235678": XK_braille_dots_235678,
+ "braille_dots_23568": XK_braille_dots_23568,
+ "braille_dots_2357": XK_braille_dots_2357,
+ "braille_dots_23578": XK_braille_dots_23578,
+ "braille_dots_2358": XK_braille_dots_2358,
+ "braille_dots_236": XK_braille_dots_236,
+ "braille_dots_2367": XK_braille_dots_2367,
+ "braille_dots_23678": XK_braille_dots_23678,
+ "braille_dots_2368": XK_braille_dots_2368,
+ "braille_dots_237": XK_braille_dots_237,
+ "braille_dots_2378": XK_braille_dots_2378,
+ "braille_dots_238": XK_braille_dots_238,
+ "braille_dots_24": XK_braille_dots_24,
+ "braille_dots_245": XK_braille_dots_245,
+ "braille_dots_2456": XK_braille_dots_2456,
+ "braille_dots_24567": XK_braille_dots_24567,
+ "braille_dots_245678": XK_braille_dots_245678,
+ "braille_dots_24568": XK_braille_dots_24568,
+ "braille_dots_2457": XK_braille_dots_2457,
+ "braille_dots_24578": XK_braille_dots_24578,
+ "braille_dots_2458": XK_braille_dots_2458,
+ "braille_dots_246": XK_braille_dots_246,
+ "braille_dots_2467": XK_braille_dots_2467,
+ "braille_dots_24678": XK_braille_dots_24678,
+ "braille_dots_2468": XK_braille_dots_2468,
+ "braille_dots_247": XK_braille_dots_247,
+ "braille_dots_2478": XK_braille_dots_2478,
+ "braille_dots_248": XK_braille_dots_248,
+ "braille_dots_25": XK_braille_dots_25,
+ "braille_dots_256": XK_braille_dots_256,
+ "braille_dots_2567": XK_braille_dots_2567,
+ "braille_dots_25678": XK_braille_dots_25678,
+ "braille_dots_2568": XK_braille_dots_2568,
+ "braille_dots_257": XK_braille_dots_257,
+ "braille_dots_2578": XK_braille_dots_2578,
+ "braille_dots_258": XK_braille_dots_258,
+ "braille_dots_26": XK_braille_dots_26,
+ "braille_dots_267": XK_braille_dots_267,
+ "braille_dots_2678": XK_braille_dots_2678,
+ "braille_dots_268": XK_braille_dots_268,
+ "braille_dots_27": XK_braille_dots_27,
+ "braille_dots_278": XK_braille_dots_278,
+ "braille_dots_28": XK_braille_dots_28,
+ "braille_dots_3": XK_braille_dots_3,
+ "braille_dots_34": XK_braille_dots_34,
+ "braille_dots_345": XK_braille_dots_345,
+ "braille_dots_3456": XK_braille_dots_3456,
+ "braille_dots_34567": XK_braille_dots_34567,
+ "braille_dots_345678": XK_braille_dots_345678,
+ "braille_dots_34568": XK_braille_dots_34568,
+ "braille_dots_3457": XK_braille_dots_3457,
+ "braille_dots_34578": XK_braille_dots_34578,
+ "braille_dots_3458": XK_braille_dots_3458,
+ "braille_dots_346": XK_braille_dots_346,
+ "braille_dots_3467": XK_braille_dots_3467,
+ "braille_dots_34678": XK_braille_dots_34678,
+ "braille_dots_3468": XK_braille_dots_3468,
+ "braille_dots_347": XK_braille_dots_347,
+ "braille_dots_3478": XK_braille_dots_3478,
+ "braille_dots_348": XK_braille_dots_348,
+ "braille_dots_35": XK_braille_dots_35,
+ "braille_dots_356": XK_braille_dots_356,
+ "braille_dots_3567": XK_braille_dots_3567,
+ "braille_dots_35678": XK_braille_dots_35678,
+ "braille_dots_3568": XK_braille_dots_3568,
+ "braille_dots_357": XK_braille_dots_357,
+ "braille_dots_3578": XK_braille_dots_3578,
+ "braille_dots_358": XK_braille_dots_358,
+ "braille_dots_36": XK_braille_dots_36,
+ "braille_dots_367": XK_braille_dots_367,
+ "braille_dots_3678": XK_braille_dots_3678,
+ "braille_dots_368": XK_braille_dots_368,
+ "braille_dots_37": XK_braille_dots_37,
+ "braille_dots_378": XK_braille_dots_378,
+ "braille_dots_38": XK_braille_dots_38,
+ "braille_dots_4": XK_braille_dots_4,
+ "braille_dots_45": XK_braille_dots_45,
+ "braille_dots_456": XK_braille_dots_456,
+ "braille_dots_4567": XK_braille_dots_4567,
+ "braille_dots_45678": XK_braille_dots_45678,
+ "braille_dots_4568": XK_braille_dots_4568,
+ "braille_dots_457": XK_braille_dots_457,
+ "braille_dots_4578": XK_braille_dots_4578,
+ "braille_dots_458": XK_braille_dots_458,
+ "braille_dots_46": XK_braille_dots_46,
+ "braille_dots_467": XK_braille_dots_467,
+ "braille_dots_4678": XK_braille_dots_4678,
+ "braille_dots_468": XK_braille_dots_468,
+ "braille_dots_47": XK_braille_dots_47,
+ "braille_dots_478": XK_braille_dots_478,
+ "braille_dots_48": XK_braille_dots_48,
+ "braille_dots_5": XK_braille_dots_5,
+ "braille_dots_56": XK_braille_dots_56,
+ "braille_dots_567": XK_braille_dots_567,
+ "braille_dots_5678": XK_braille_dots_5678,
+ "braille_dots_568": XK_braille_dots_568,
+ "braille_dots_57": XK_braille_dots_57,
+ "braille_dots_578": XK_braille_dots_578,
+ "braille_dots_58": XK_braille_dots_58,
+ "braille_dots_6": XK_braille_dots_6,
+ "braille_dots_67": XK_braille_dots_67,
+ "braille_dots_678": XK_braille_dots_678,
+ "braille_dots_68": XK_braille_dots_68,
+ "braille_dots_7": XK_braille_dots_7,
+ "braille_dots_78": XK_braille_dots_78,
+ "braille_dots_8": XK_braille_dots_8,
+ "breve": XK_breve,
+ "brokenbar": XK_brokenbar,
+ "c": XK_c,
+ "c_h": XK_c_h,
+ "cabovedot": XK_cabovedot,
+ "cacute": XK_cacute,
+ "careof": XK_careof,
+ "caret": XK_caret,
+ "caron": XK_caron,
+ "ccaron": XK_ccaron,
+ "ccedilla": XK_ccedilla,
+ "ccircumflex": XK_ccircumflex,
+ "cedilla": XK_cedilla,
+ "cent": XK_cent,
+ "ch": XK_ch,
+ "checkerboard": XK_checkerboard,
+ "checkmark": XK_checkmark,
+ "circle": XK_circle,
+ "club": XK_club,
+ "colon": XK_colon,
+ "comma": XK_comma,
+ "containsas": XK_containsas,
+ "copyright": XK_copyright,
+ "cr": XK_cr,
+ "crossinglines": XK_crossinglines,
+ "cuberoot": XK_cuberoot,
+ "currency": XK_currency,
+ "cursor": XK_cursor,
+ "d": XK_d,
+ "dabovedot": XK_dabovedot,
+ "dagger": XK_dagger,
+ "dcaron": XK_dcaron,
+ "dead_A": XK_dead_A,
+ "dead_E": XK_dead_E,
+ "dead_I": XK_dead_I,
+ "dead_O": XK_dead_O,
+ "dead_U": XK_dead_U,
+ "dead_a": XK_dead_a,
+ "dead_abovecomma": XK_dead_abovecomma,
+ "dead_abovedot": XK_dead_abovedot,
+ "dead_abovereversedcomma": XK_dead_abovereversedcomma,
+ "dead_abovering": XK_dead_abovering,
+ "dead_aboveverticalline": XK_dead_aboveverticalline,
+ "dead_acute": XK_dead_acute,
+ "dead_belowbreve": XK_dead_belowbreve,
+ "dead_belowcircumflex": XK_dead_belowcircumflex,
+ "dead_belowcomma": XK_dead_belowcomma,
+ "dead_belowdiaeresis": XK_dead_belowdiaeresis,
+ "dead_belowdot": XK_dead_belowdot,
+ "dead_belowmacron": XK_dead_belowmacron,
+ "dead_belowring": XK_dead_belowring,
+ "dead_belowtilde": XK_dead_belowtilde,
+ "dead_belowverticalline": XK_dead_belowverticalline,
+ "dead_breve": XK_dead_breve,
+ "dead_capital_schwa": XK_dead_capital_schwa,
+ "dead_caron": XK_dead_caron,
+ "dead_cedilla": XK_dead_cedilla,
+ "dead_circumflex": XK_dead_circumflex,
+ "dead_currency": XK_dead_currency,
+ "dead_dasia": XK_dead_dasia,
+ "dead_diaeresis": XK_dead_diaeresis,
+ "dead_doubleacute": XK_dead_doubleacute,
+ "dead_doublegrave": XK_dead_doublegrave,
+ "dead_e": XK_dead_e,
+ "dead_grave": XK_dead_grave,
+ "dead_greek": XK_dead_greek,
+ "dead_hook": XK_dead_hook,
+ "dead_horn": XK_dead_horn,
+ "dead_i": XK_dead_i,
+ "dead_invertedbreve": XK_dead_invertedbreve,
+ "dead_iota": XK_dead_iota,
+ "dead_longsolidusoverlay": XK_dead_longsolidusoverlay,
+ "dead_lowline": XK_dead_lowline,
+ "dead_macron": XK_dead_macron,
+ "dead_o": XK_dead_o,
+ "dead_ogonek": XK_dead_ogonek,
+ "dead_perispomeni": XK_dead_perispomeni,
+ "dead_psili": XK_dead_psili,
+ "dead_semivoiced_sound": XK_dead_semivoiced_sound,
+ "dead_small_schwa": XK_dead_small_schwa,
+ "dead_stroke": XK_dead_stroke,
+ "dead_tilde": XK_dead_tilde,
+ "dead_u": XK_dead_u,
+ "dead_voiced_sound": XK_dead_voiced_sound,
+ "decimalpoint": XK_decimalpoint,
+ "degree": XK_degree,
+ "diaeresis": XK_diaeresis,
+ "diamond": XK_diamond,
+ "digitspace": XK_digitspace,
+ "dintegral": XK_dintegral,
+ "division": XK_division,
+ "dollar": XK_dollar,
+ "doubbaselinedot": XK_doubbaselinedot,
+ "doubleacute": XK_doubleacute,
+ "doubledagger": XK_doubledagger,
+ "doublelowquotemark": XK_doublelowquotemark,
+ "downarrow": XK_downarrow,
+ "downcaret": XK_downcaret,
+ "downshoe": XK_downshoe,
+ "downstile": XK_downstile,
+ "downtack": XK_downtack,
+ "dstroke": XK_dstroke,
+ "e": XK_e,
+ "eabovedot": XK_eabovedot,
+ "eacute": XK_eacute,
+ "ebelowdot": XK_ebelowdot,
+ "ecaron": XK_ecaron,
+ "ecircumflex": XK_ecircumflex,
+ "ecircumflexacute": XK_ecircumflexacute,
+ "ecircumflexbelowdot": XK_ecircumflexbelowdot,
+ "ecircumflexgrave": XK_ecircumflexgrave,
+ "ecircumflexhook": XK_ecircumflexhook,
+ "ecircumflextilde": XK_ecircumflextilde,
+ "ediaeresis": XK_ediaeresis,
+ "egrave": XK_egrave,
+ "ehook": XK_ehook,
+ "eightsubscript": XK_eightsubscript,
+ "eightsuperior": XK_eightsuperior,
+ "elementof": XK_elementof,
+ "ellipsis": XK_ellipsis,
+ "em3space": XK_em3space,
+ "em4space": XK_em4space,
+ "emacron": XK_emacron,
+ "emdash": XK_emdash,
+ "emfilledcircle": XK_emfilledcircle,
+ "emfilledrect": XK_emfilledrect,
+ "emopencircle": XK_emopencircle,
+ "emopenrectangle": XK_emopenrectangle,
+ "emptyset": XK_emptyset,
+ "emspace": XK_emspace,
+ "endash": XK_endash,
+ "enfilledcircbullet": XK_enfilledcircbullet,
+ "enfilledsqbullet": XK_enfilledsqbullet,
+ "eng": XK_eng,
+ "enopencircbullet": XK_enopencircbullet,
+ "enopensquarebullet": XK_enopensquarebullet,
+ "enspace": XK_enspace,
+ "eogonek": XK_eogonek,
+ "equal": XK_equal,
+ "eth": XK_eth,
+ "etilde": XK_etilde,
+ "exclam": XK_exclam,
+ "exclamdown": XK_exclamdown,
+ "ezh": XK_ezh,
+ "f": XK_f,
+ "fabovedot": XK_fabovedot,
+ "femalesymbol": XK_femalesymbol,
+ "ff": XK_ff,
+ "figdash": XK_figdash,
+ "filledlefttribullet": XK_filledlefttribullet,
+ "filledrectbullet": XK_filledrectbullet,
+ "filledrighttribullet": XK_filledrighttribullet,
+ "filledtribulletdown": XK_filledtribulletdown,
+ "filledtribulletup": XK_filledtribulletup,
+ "fiveeighths": XK_fiveeighths,
+ "fivesixths": XK_fivesixths,
+ "fivesubscript": XK_fivesubscript,
+ "fivesuperior": XK_fivesuperior,
+ "fourfifths": XK_fourfifths,
+ "foursubscript": XK_foursubscript,
+ "foursuperior": XK_foursuperior,
+ "fourthroot": XK_fourthroot,
+ "function": XK_function,
+ "g": XK_g,
+ "gabovedot": XK_gabovedot,
+ "gbreve": XK_gbreve,
+ "gcaron": XK_gcaron,
+ "gcedilla": XK_gcedilla,
+ "gcircumflex": XK_gcircumflex,
+ "grave": XK_grave,
+ "greater": XK_greater,
+ "greaterthanequal": XK_greaterthanequal,
+ "guillemotleft": XK_guillemotleft,
+ "guillemotright": XK_guillemotright,
+ "h": XK_h,
+ "hairspace": XK_hairspace,
+ "hcircumflex": XK_hcircumflex,
+ "heart": XK_heart,
+ "hebrew_aleph": XK_hebrew_aleph,
+ "hebrew_ayin": XK_hebrew_ayin,
+ "hebrew_bet": XK_hebrew_bet,
+ "hebrew_beth": XK_hebrew_beth,
+ "hebrew_chet": XK_hebrew_chet,
+ "hebrew_dalet": XK_hebrew_dalet,
+ "hebrew_daleth": XK_hebrew_daleth,
+ "hebrew_doublelowline": XK_hebrew_doublelowline,
+ "hebrew_finalkaph": XK_hebrew_finalkaph,
+ "hebrew_finalmem": XK_hebrew_finalmem,
+ "hebrew_finalnun": XK_hebrew_finalnun,
+ "hebrew_finalpe": XK_hebrew_finalpe,
+ "hebrew_finalzade": XK_hebrew_finalzade,
+ "hebrew_finalzadi": XK_hebrew_finalzadi,
+ "hebrew_gimel": XK_hebrew_gimel,
+ "hebrew_gimmel": XK_hebrew_gimmel,
+ "hebrew_he": XK_hebrew_he,
+ "hebrew_het": XK_hebrew_het,
+ "hebrew_kaph": XK_hebrew_kaph,
+ "hebrew_kuf": XK_hebrew_kuf,
+ "hebrew_lamed": XK_hebrew_lamed,
+ "hebrew_mem": XK_hebrew_mem,
+ "hebrew_nun": XK_hebrew_nun,
+ "hebrew_pe": XK_hebrew_pe,
+ "hebrew_qoph": XK_hebrew_qoph,
+ "hebrew_resh": XK_hebrew_resh,
+ "hebrew_samech": XK_hebrew_samech,
+ "hebrew_samekh": XK_hebrew_samekh,
+ "hebrew_shin": XK_hebrew_shin,
+ "hebrew_taf": XK_hebrew_taf,
+ "hebrew_taw": XK_hebrew_taw,
+ "hebrew_tet": XK_hebrew_tet,
+ "hebrew_teth": XK_hebrew_teth,
+ "hebrew_waw": XK_hebrew_waw,
+ "hebrew_yod": XK_hebrew_yod,
+ "hebrew_zade": XK_hebrew_zade,
+ "hebrew_zadi": XK_hebrew_zadi,
+ "hebrew_zain": XK_hebrew_zain,
+ "hebrew_zayin": XK_hebrew_zayin,
+ "hexagram": XK_hexagram,
+ "horizconnector": XK_horizconnector,
+ "horizlinescan1": XK_horizlinescan1,
+ "horizlinescan3": XK_horizlinescan3,
+ "horizlinescan5": XK_horizlinescan5,
+ "horizlinescan7": XK_horizlinescan7,
+ "horizlinescan9": XK_horizlinescan9,
+ "hstroke": XK_hstroke,
+ "ht": XK_ht,
+ "hyphen": XK_hyphen,
+ "i": XK_i,
+ "iacute": XK_iacute,
+ "ibelowdot": XK_ibelowdot,
+ "ibreve": XK_ibreve,
+ "icircumflex": XK_icircumflex,
+ "identical": XK_identical,
+ "idiaeresis": XK_idiaeresis,
+ "idotless": XK_idotless,
+ "ifonlyif": XK_ifonlyif,
+ "igrave": XK_igrave,
+ "ihook": XK_ihook,
+ "imacron": XK_imacron,
+ "implies": XK_implies,
+ "includedin": XK_includedin,
+ "includes": XK_includes,
+ "infinity": XK_infinity,
+ "integral": XK_integral,
+ "intersection": XK_intersection,
+ "iogonek": XK_iogonek,
+ "itilde": XK_itilde,
+ "j": XK_j,
+ "jcircumflex": XK_jcircumflex,
+ "jot": XK_jot,
+ "k": XK_k,
+ "kana_A": XK_kana_A,
+ "kana_CHI": XK_kana_CHI,
+ "kana_E": XK_kana_E,
+ "kana_FU": XK_kana_FU,
+ "kana_HA": XK_kana_HA,
+ "kana_HE": XK_kana_HE,
+ "kana_HI": XK_kana_HI,
+ "kana_HO": XK_kana_HO,
+ "kana_HU": XK_kana_HU,
+ "kana_I": XK_kana_I,
+ "kana_KA": XK_kana_KA,
+ "kana_KE": XK_kana_KE,
+ "kana_KI": XK_kana_KI,
+ "kana_KO": XK_kana_KO,
+ "kana_KU": XK_kana_KU,
+ "kana_MA": XK_kana_MA,
+ "kana_ME": XK_kana_ME,
+ "kana_MI": XK_kana_MI,
+ "kana_MO": XK_kana_MO,
+ "kana_MU": XK_kana_MU,
+ "kana_N": XK_kana_N,
+ "kana_NA": XK_kana_NA,
+ "kana_NE": XK_kana_NE,
+ "kana_NI": XK_kana_NI,
+ "kana_NO": XK_kana_NO,
+ "kana_NU": XK_kana_NU,
+ "kana_O": XK_kana_O,
+ "kana_RA": XK_kana_RA,
+ "kana_RE": XK_kana_RE,
+ "kana_RI": XK_kana_RI,
+ "kana_RO": XK_kana_RO,
+ "kana_RU": XK_kana_RU,
+ "kana_SA": XK_kana_SA,
+ "kana_SE": XK_kana_SE,
+ "kana_SHI": XK_kana_SHI,
+ "kana_SO": XK_kana_SO,
+ "kana_SU": XK_kana_SU,
+ "kana_TA": XK_kana_TA,
+ "kana_TE": XK_kana_TE,
+ "kana_TI": XK_kana_TI,
+ "kana_TO": XK_kana_TO,
+ "kana_TSU": XK_kana_TSU,
+ "kana_TU": XK_kana_TU,
+ "kana_U": XK_kana_U,
+ "kana_WA": XK_kana_WA,
+ "kana_WO": XK_kana_WO,
+ "kana_YA": XK_kana_YA,
+ "kana_YO": XK_kana_YO,
+ "kana_YU": XK_kana_YU,
+ "kana_a": XK_kana_a,
+ "kana_closingbracket": XK_kana_closingbracket,
+ "kana_comma": XK_kana_comma,
+ "kana_conjunctive": XK_kana_conjunctive,
+ "kana_e": XK_kana_e,
+ "kana_fullstop": XK_kana_fullstop,
+ "kana_i": XK_kana_i,
+ "kana_middledot": XK_kana_middledot,
+ "kana_o": XK_kana_o,
+ "kana_openingbracket": XK_kana_openingbracket,
+ "kana_switch": XK_kana_switch,
+ "kana_tsu": XK_kana_tsu,
+ "kana_tu": XK_kana_tu,
+ "kana_u": XK_kana_u,
+ "kana_ya": XK_kana_ya,
+ "kana_yo": XK_kana_yo,
+ "kana_yu": XK_kana_yu,
+ "kappa": XK_kappa,
+ "kcedilla": XK_kcedilla,
+ "kra": XK_kra,
+ "l": XK_l,
+ "lacute": XK_lacute,
+ "latincross": XK_latincross,
+ "lbelowdot": XK_lbelowdot,
+ "lcaron": XK_lcaron,
+ "lcedilla": XK_lcedilla,
+ "leftanglebracket": XK_leftanglebracket,
+ "leftarrow": XK_leftarrow,
+ "leftcaret": XK_leftcaret,
+ "leftdoublequotemark": XK_leftdoublequotemark,
+ "leftmiddlecurlybrace": XK_leftmiddlecurlybrace,
+ "leftopentriangle": XK_leftopentriangle,
+ "leftpointer": XK_leftpointer,
+ "leftradical": XK_leftradical,
+ "leftshoe": XK_leftshoe,
+ "leftsinglequotemark": XK_leftsinglequotemark,
+ "leftt": XK_leftt,
+ "lefttack": XK_lefttack,
+ "less": XK_less,
+ "lessthanequal": XK_lessthanequal,
+ "lf": XK_lf,
+ "logicaland": XK_logicaland,
+ "logicalor": XK_logicalor,
+ "lowleftcorner": XK_lowleftcorner,
+ "lowrightcorner": XK_lowrightcorner,
+ "lstroke": XK_lstroke,
+ "m": XK_m,
+ "mabovedot": XK_mabovedot,
+ "macron": XK_macron,
+ "malesymbol": XK_malesymbol,
+ "maltesecross": XK_maltesecross,
+ "marker": XK_marker,
+ "masculine": XK_masculine,
+ "minus": XK_minus,
+ "minutes": XK_minutes,
+ "mu": XK_mu,
+ "multiply": XK_multiply,
+ "musicalflat": XK_musicalflat,
+ "musicalsharp": XK_musicalsharp,
+ "n": XK_n,
+ "nabla": XK_nabla,
+ "nacute": XK_nacute,
+ "ncaron": XK_ncaron,
+ "ncedilla": XK_ncedilla,
+ "ninesubscript": XK_ninesubscript,
+ "ninesuperior": XK_ninesuperior,
+ "nl": XK_nl,
+ "nobreakspace": XK_nobreakspace,
+ "notapproxeq": XK_notapproxeq,
+ "notelementof": XK_notelementof,
+ "notequal": XK_notequal,
+ "notidentical": XK_notidentical,
+ "notsign": XK_notsign,
+ "ntilde": XK_ntilde,
+ "numbersign": XK_numbersign,
+ "numerosign": XK_numerosign,
+ "o": XK_o,
+ "oacute": XK_oacute,
+ "obarred": XK_obarred,
+ "obelowdot": XK_obelowdot,
+ "ocaron": XK_ocaron,
+ "ocircumflex": XK_ocircumflex,
+ "ocircumflexacute": XK_ocircumflexacute,
+ "ocircumflexbelowdot": XK_ocircumflexbelowdot,
+ "ocircumflexgrave": XK_ocircumflexgrave,
+ "ocircumflexhook": XK_ocircumflexhook,
+ "ocircumflextilde": XK_ocircumflextilde,
+ "odiaeresis": XK_odiaeresis,
+ "odoubleacute": XK_odoubleacute,
+ "oe": XK_oe,
+ "ogonek": XK_ogonek,
+ "ograve": XK_ograve,
+ "ohook": XK_ohook,
+ "ohorn": XK_ohorn,
+ "ohornacute": XK_ohornacute,
+ "ohornbelowdot": XK_ohornbelowdot,
+ "ohorngrave": XK_ohorngrave,
+ "ohornhook": XK_ohornhook,
+ "ohorntilde": XK_ohorntilde,
+ "omacron": XK_omacron,
+ "oneeighth": XK_oneeighth,
+ "onefifth": XK_onefifth,
+ "onehalf": XK_onehalf,
+ "onequarter": XK_onequarter,
+ "onesixth": XK_onesixth,
+ "onesubscript": XK_onesubscript,
+ "onesuperior": XK_onesuperior,
+ "onethird": XK_onethird,
+ "ooblique": XK_ooblique,
+ "openrectbullet": XK_openrectbullet,
+ "openstar": XK_openstar,
+ "opentribulletdown": XK_opentribulletdown,
+ "opentribulletup": XK_opentribulletup,
+ "ordfeminine": XK_ordfeminine,
+ "oslash": XK_oslash,
+ "otilde": XK_otilde,
+ "overbar": XK_overbar,
+ "overline": XK_overline,
+ "p": XK_p,
+ "pabovedot": XK_pabovedot,
+ "paragraph": XK_paragraph,
+ "parenleft": XK_parenleft,
+ "parenright": XK_parenright,
+ "partdifferential": XK_partdifferential,
+ "partialderivative": XK_partialderivative,
+ "percent": XK_percent,
+ "period": XK_period,
+ "periodcentered": XK_periodcentered,
+ "permille": XK_permille,
+ "phonographcopyright": XK_phonographcopyright,
+ "plus": XK_plus,
+ "plusminus": XK_plusminus,
+ "prescription": XK_prescription,
+ "prolongedsound": XK_prolongedsound,
+ "punctspace": XK_punctspace,
+ "q": XK_q,
+ "quad": XK_quad,
+ "question": XK_question,
+ "questiondown": XK_questiondown,
+ "quotedbl": XK_quotedbl,
+ "quoteleft": XK_quoteleft,
+ "quoteright": XK_quoteright,
+ "r": XK_r,
+ "racute": XK_racute,
+ "radical": XK_radical,
+ "rcaron": XK_rcaron,
+ "rcedilla": XK_rcedilla,
+ "registered": XK_registered,
+ "rightanglebracket": XK_rightanglebracket,
+ "rightarrow": XK_rightarrow,
+ "rightcaret": XK_rightcaret,
+ "rightdoublequotemark": XK_rightdoublequotemark,
+ "rightmiddlecurlybrace": XK_rightmiddlecurlybrace,
+ "rightmiddlesummation": XK_rightmiddlesummation,
+ "rightopentriangle": XK_rightopentriangle,
+ "rightpointer": XK_rightpointer,
+ "rightshoe": XK_rightshoe,
+ "rightsinglequotemark": XK_rightsinglequotemark,
+ "rightt": XK_rightt,
+ "righttack": XK_righttack,
+ "s": XK_s,
+ "sabovedot": XK_sabovedot,
+ "sacute": XK_sacute,
+ "scaron": XK_scaron,
+ "scedilla": XK_scedilla,
+ "schwa": XK_schwa,
+ "scircumflex": XK_scircumflex,
+ "script_switch": XK_script_switch,
+ "seconds": XK_seconds,
+ "section": XK_section,
+ "semicolon": XK_semicolon,
+ "semivoicedsound": XK_semivoicedsound,
+ "seveneighths": XK_seveneighths,
+ "sevensubscript": XK_sevensubscript,
+ "sevensuperior": XK_sevensuperior,
+ "signaturemark": XK_signaturemark,
+ "signifblank": XK_signifblank,
+ "similarequal": XK_similarequal,
+ "singlelowquotemark": XK_singlelowquotemark,
+ "sixsubscript": XK_sixsubscript,
+ "sixsuperior": XK_sixsuperior,
+ "slash": XK_slash,
+ "soliddiamond": XK_soliddiamond,
+ "space": XK_space,
+ "squareroot": XK_squareroot,
+ "ssharp": XK_ssharp,
+ "sterling": XK_sterling,
+ "stricteq": XK_stricteq,
+ "t": XK_t,
+ "tabovedot": XK_tabovedot,
+ "tcaron": XK_tcaron,
+ "tcedilla": XK_tcedilla,
+ "telephone": XK_telephone,
+ "telephonerecorder": XK_telephonerecorder,
+ "therefore": XK_therefore,
+ "thinspace": XK_thinspace,
+ "thorn": XK_thorn,
+ "threeeighths": XK_threeeighths,
+ "threefifths": XK_threefifths,
+ "threequarters": XK_threequarters,
+ "threesubscript": XK_threesubscript,
+ "threesuperior": XK_threesuperior,
+ "tintegral": XK_tintegral,
+ "topintegral": XK_topintegral,
+ "topleftparens": XK_topleftparens,
+ "topleftradical": XK_topleftradical,
+ "topleftsqbracket": XK_topleftsqbracket,
+ "topleftsummation": XK_topleftsummation,
+ "toprightparens": XK_toprightparens,
+ "toprightsqbracket": XK_toprightsqbracket,
+ "toprightsummation": XK_toprightsummation,
+ "topt": XK_topt,
+ "topvertsummationconnector": XK_topvertsummationconnector,
+ "trademark": XK_trademark,
+ "trademarkincircle": XK_trademarkincircle,
+ "tslash": XK_tslash,
+ "twofifths": XK_twofifths,
+ "twosubscript": XK_twosubscript,
+ "twosuperior": XK_twosuperior,
+ "twothirds": XK_twothirds,
+ "u": XK_u,
+ "uacute": XK_uacute,
+ "ubelowdot": XK_ubelowdot,
+ "ubreve": XK_ubreve,
+ "ucircumflex": XK_ucircumflex,
+ "udiaeresis": XK_udiaeresis,
+ "udoubleacute": XK_udoubleacute,
+ "ugrave": XK_ugrave,
+ "uhook": XK_uhook,
+ "uhorn": XK_uhorn,
+ "uhornacute": XK_uhornacute,
+ "uhornbelowdot": XK_uhornbelowdot,
+ "uhorngrave": XK_uhorngrave,
+ "uhornhook": XK_uhornhook,
+ "uhorntilde": XK_uhorntilde,
+ "umacron": XK_umacron,
+ "underbar": XK_underbar,
+ "underscore": XK_underscore,
+ "union": XK_union,
+ "uogonek": XK_uogonek,
+ "uparrow": XK_uparrow,
+ "upcaret": XK_upcaret,
+ "upleftcorner": XK_upleftcorner,
+ "uprightcorner": XK_uprightcorner,
+ "upshoe": XK_upshoe,
+ "upstile": XK_upstile,
+ "uptack": XK_uptack,
+ "uring": XK_uring,
+ "utilde": XK_utilde,
+ "v": XK_v,
+ "variation": XK_variation,
+ "vertbar": XK_vertbar,
+ "vertconnector": XK_vertconnector,
+ "voicedsound": XK_voicedsound,
+ "vt": XK_vt,
+ "w": XK_w,
+ "wacute": XK_wacute,
+ "wcircumflex": XK_wcircumflex,
+ "wdiaeresis": XK_wdiaeresis,
+ "wgrave": XK_wgrave,
+ "x": XK_x,
+ "xabovedot": XK_xabovedot,
+ "y": XK_y,
+ "yacute": XK_yacute,
+ "ybelowdot": XK_ybelowdot,
+ "ycircumflex": XK_ycircumflex,
+ "ydiaeresis": XK_ydiaeresis,
+ "yen": XK_yen,
+ "ygrave": XK_ygrave,
+ "yhook": XK_yhook,
+ "ytilde": XK_ytilde,
+ "z": XK_z,
+ "zabovedot": XK_zabovedot,
+ "zacute": XK_zacute,
+ "zcaron": XK_zcaron,
+ "zerosubscript": XK_zerosubscript,
+ "zerosuperior": XK_zerosuperior,
+ "zstroke": XK_zstroke,
+}
diff --git a/ht/unicode_map.go b/ht/unicode_map.go
new file mode 100644
index 0000000..f7b91de
--- /dev/null
+++ b/ht/unicode_map.go
@@ -0,0 +1,859 @@
+// Code generated by running "go generate" in janouch.name/haven. DO NOT EDIT.
+
+package main
+
+import "janouch.name/haven/nexgb/xproto"
+
+// KeysymToRune tries to translate an X11 keysym to an appropriate rune.
+// Returns -1 when no match is found.
+func KeysymToRune(ks xproto.Keysym) rune {
+ // Visible Latin-1 is mapped 1:1
+ if (ks >= 0x20 && ks <= 0x7e) || (ks >= 0xa0 && ks <= 0xff) {
+ return rune(ks)
+ }
+ // Directly encoded 24-bit Unicode (going even above plane 16)
+ if (ks & 0xff000000) == 0x01000000 {
+ return rune(ks & 0x00ffffff)
+ }
+
+ min, max := 0, len(keysymToRuneTable)-1
+ for max >= min {
+ mid := (min + max) / 2
+ if keysymToRuneTable[mid].keysym < ks {
+ min = mid + 1
+ } else if keysymToRuneTable[mid].keysym > ks {
+ max = mid - 1
+ } else {
+ return keysymToRuneTable[mid].unicode
+ }
+ }
+ return -1
+}
+
+var keysymToRuneTable = []struct {
+ keysym xproto.Keysym
+ unicode rune
+}{
+ {0x01a1, 0x0104}, // Aogonek
+ {0x01a2, 0x02d8}, // breve
+ {0x01a3, 0x0141}, // Lstroke
+ {0x01a5, 0x013d}, // Lcaron
+ {0x01a6, 0x015a}, // Sacute
+ {0x01a9, 0x0160}, // Scaron
+ {0x01aa, 0x015e}, // Scedilla
+ {0x01ab, 0x0164}, // Tcaron
+ {0x01ac, 0x0179}, // Zacute
+ {0x01ae, 0x017d}, // Zcaron
+ {0x01af, 0x017b}, // Zabovedot
+ {0x01b1, 0x0105}, // aogonek
+ {0x01b2, 0x02db}, // ogonek
+ {0x01b3, 0x0142}, // lstroke
+ {0x01b5, 0x013e}, // lcaron
+ {0x01b6, 0x015b}, // sacute
+ {0x01b7, 0x02c7}, // caron
+ {0x01b9, 0x0161}, // scaron
+ {0x01ba, 0x015f}, // scedilla
+ {0x01bb, 0x0165}, // tcaron
+ {0x01bc, 0x017a}, // zacute
+ {0x01bd, 0x02dd}, // doubleacute
+ {0x01be, 0x017e}, // zcaron
+ {0x01bf, 0x017c}, // zabovedot
+ {0x01c0, 0x0154}, // Racute
+ {0x01c3, 0x0102}, // Abreve
+ {0x01c5, 0x0139}, // Lacute
+ {0x01c6, 0x0106}, // Cacute
+ {0x01c8, 0x010c}, // Ccaron
+ {0x01ca, 0x0118}, // Eogonek
+ {0x01cc, 0x011a}, // Ecaron
+ {0x01cf, 0x010e}, // Dcaron
+ {0x01d0, 0x0110}, // Dstroke
+ {0x01d1, 0x0143}, // Nacute
+ {0x01d2, 0x0147}, // Ncaron
+ {0x01d5, 0x0150}, // Odoubleacute
+ {0x01d8, 0x0158}, // Rcaron
+ {0x01d9, 0x016e}, // Uring
+ {0x01db, 0x0170}, // Udoubleacute
+ {0x01de, 0x0162}, // Tcedilla
+ {0x01e0, 0x0155}, // racute
+ {0x01e3, 0x0103}, // abreve
+ {0x01e5, 0x013a}, // lacute
+ {0x01e6, 0x0107}, // cacute
+ {0x01e8, 0x010d}, // ccaron
+ {0x01ea, 0x0119}, // eogonek
+ {0x01ec, 0x011b}, // ecaron
+ {0x01ef, 0x010f}, // dcaron
+ {0x01f0, 0x0111}, // dstroke
+ {0x01f1, 0x0144}, // nacute
+ {0x01f2, 0x0148}, // ncaron
+ {0x01f5, 0x0151}, // odoubleacute
+ {0x01f8, 0x0159}, // rcaron
+ {0x01f9, 0x016f}, // uring
+ {0x01fb, 0x0171}, // udoubleacute
+ {0x01fe, 0x0163}, // tcedilla
+ {0x01ff, 0x02d9}, // abovedot
+ {0x02a1, 0x0126}, // Hstroke
+ {0x02a6, 0x0124}, // Hcircumflex
+ {0x02a9, 0x0130}, // Iabovedot
+ {0x02ab, 0x011e}, // Gbreve
+ {0x02ac, 0x0134}, // Jcircumflex
+ {0x02b1, 0x0127}, // hstroke
+ {0x02b6, 0x0125}, // hcircumflex
+ {0x02b9, 0x0131}, // idotless
+ {0x02bb, 0x011f}, // gbreve
+ {0x02bc, 0x0135}, // jcircumflex
+ {0x02c5, 0x010a}, // Cabovedot
+ {0x02c6, 0x0108}, // Ccircumflex
+ {0x02d5, 0x0120}, // Gabovedot
+ {0x02d8, 0x011c}, // Gcircumflex
+ {0x02dd, 0x016c}, // Ubreve
+ {0x02de, 0x015c}, // Scircumflex
+ {0x02e5, 0x010b}, // cabovedot
+ {0x02e6, 0x0109}, // ccircumflex
+ {0x02f5, 0x0121}, // gabovedot
+ {0x02f8, 0x011d}, // gcircumflex
+ {0x02fd, 0x016d}, // ubreve
+ {0x02fe, 0x015d}, // scircumflex
+ {0x03a2, 0x0138}, // kra
+ {0x03a3, 0x0156}, // Rcedilla
+ {0x03a5, 0x0128}, // Itilde
+ {0x03a6, 0x013b}, // Lcedilla
+ {0x03aa, 0x0112}, // Emacron
+ {0x03ab, 0x0122}, // Gcedilla
+ {0x03ac, 0x0166}, // Tslash
+ {0x03b3, 0x0157}, // rcedilla
+ {0x03b5, 0x0129}, // itilde
+ {0x03b6, 0x013c}, // lcedilla
+ {0x03ba, 0x0113}, // emacron
+ {0x03bb, 0x0123}, // gcedilla
+ {0x03bc, 0x0167}, // tslash
+ {0x03bd, 0x014a}, // ENG
+ {0x03bf, 0x014b}, // eng
+ {0x03c0, 0x0100}, // Amacron
+ {0x03c7, 0x012e}, // Iogonek
+ {0x03cc, 0x0116}, // Eabovedot
+ {0x03cf, 0x012a}, // Imacron
+ {0x03d1, 0x0145}, // Ncedilla
+ {0x03d2, 0x014c}, // Omacron
+ {0x03d3, 0x0136}, // Kcedilla
+ {0x03d9, 0x0172}, // Uogonek
+ {0x03dd, 0x0168}, // Utilde
+ {0x03de, 0x016a}, // Umacron
+ {0x03e0, 0x0101}, // amacron
+ {0x03e7, 0x012f}, // iogonek
+ {0x03ec, 0x0117}, // eabovedot
+ {0x03ef, 0x012b}, // imacron
+ {0x03f1, 0x0146}, // ncedilla
+ {0x03f2, 0x014d}, // omacron
+ {0x03f3, 0x0137}, // kcedilla
+ {0x03f9, 0x0173}, // uogonek
+ {0x03fd, 0x0169}, // utilde
+ {0x03fe, 0x016b}, // umacron
+ {0x047e, 0x203e}, // overline
+ {0x04a1, 0x3002}, // kana_fullstop
+ {0x04a2, 0x300c}, // kana_openingbracket
+ {0x04a3, 0x300d}, // kana_closingbracket
+ {0x04a4, 0x3001}, // kana_comma
+ {0x04a5, 0x30fb}, // kana_conjunctive
+ {0x04a6, 0x30f2}, // kana_WO
+ {0x04a7, 0x30a1}, // kana_a
+ {0x04a8, 0x30a3}, // kana_i
+ {0x04a9, 0x30a5}, // kana_u
+ {0x04aa, 0x30a7}, // kana_e
+ {0x04ab, 0x30a9}, // kana_o
+ {0x04ac, 0x30e3}, // kana_ya
+ {0x04ad, 0x30e5}, // kana_yu
+ {0x04ae, 0x30e7}, // kana_yo
+ {0x04af, 0x30c3}, // kana_tsu
+ {0x04b0, 0x30fc}, // prolongedsound
+ {0x04b1, 0x30a2}, // kana_A
+ {0x04b2, 0x30a4}, // kana_I
+ {0x04b3, 0x30a6}, // kana_U
+ {0x04b4, 0x30a8}, // kana_E
+ {0x04b5, 0x30aa}, // kana_O
+ {0x04b6, 0x30ab}, // kana_KA
+ {0x04b7, 0x30ad}, // kana_KI
+ {0x04b8, 0x30af}, // kana_KU
+ {0x04b9, 0x30b1}, // kana_KE
+ {0x04ba, 0x30b3}, // kana_KO
+ {0x04bb, 0x30b5}, // kana_SA
+ {0x04bc, 0x30b7}, // kana_SHI
+ {0x04bd, 0x30b9}, // kana_SU
+ {0x04be, 0x30bb}, // kana_SE
+ {0x04bf, 0x30bd}, // kana_SO
+ {0x04c0, 0x30bf}, // kana_TA
+ {0x04c1, 0x30c1}, // kana_CHI
+ {0x04c2, 0x30c4}, // kana_TSU
+ {0x04c3, 0x30c6}, // kana_TE
+ {0x04c4, 0x30c8}, // kana_TO
+ {0x04c5, 0x30ca}, // kana_NA
+ {0x04c6, 0x30cb}, // kana_NI
+ {0x04c7, 0x30cc}, // kana_NU
+ {0x04c8, 0x30cd}, // kana_NE
+ {0x04c9, 0x30ce}, // kana_NO
+ {0x04ca, 0x30cf}, // kana_HA
+ {0x04cb, 0x30d2}, // kana_HI
+ {0x04cc, 0x30d5}, // kana_FU
+ {0x04cd, 0x30d8}, // kana_HE
+ {0x04ce, 0x30db}, // kana_HO
+ {0x04cf, 0x30de}, // kana_MA
+ {0x04d0, 0x30df}, // kana_MI
+ {0x04d1, 0x30e0}, // kana_MU
+ {0x04d2, 0x30e1}, // kana_ME
+ {0x04d3, 0x30e2}, // kana_MO
+ {0x04d4, 0x30e4}, // kana_YA
+ {0x04d5, 0x30e6}, // kana_YU
+ {0x04d6, 0x30e8}, // kana_YO
+ {0x04d7, 0x30e9}, // kana_RA
+ {0x04d8, 0x30ea}, // kana_RI
+ {0x04d9, 0x30eb}, // kana_RU
+ {0x04da, 0x30ec}, // kana_RE
+ {0x04db, 0x30ed}, // kana_RO
+ {0x04dc, 0x30ef}, // kana_WA
+ {0x04dd, 0x30f3}, // kana_N
+ {0x04de, 0x309b}, // voicedsound
+ {0x04df, 0x309c}, // semivoicedsound
+ {0x05ac, 0x060c}, // Arabic_comma
+ {0x05bb, 0x061b}, // Arabic_semicolon
+ {0x05bf, 0x061f}, // Arabic_question_mark
+ {0x05c1, 0x0621}, // Arabic_hamza
+ {0x05c2, 0x0622}, // Arabic_maddaonalef
+ {0x05c3, 0x0623}, // Arabic_hamzaonalef
+ {0x05c4, 0x0624}, // Arabic_hamzaonwaw
+ {0x05c5, 0x0625}, // Arabic_hamzaunderalef
+ {0x05c6, 0x0626}, // Arabic_hamzaonyeh
+ {0x05c7, 0x0627}, // Arabic_alef
+ {0x05c8, 0x0628}, // Arabic_beh
+ {0x05c9, 0x0629}, // Arabic_tehmarbuta
+ {0x05ca, 0x062a}, // Arabic_teh
+ {0x05cb, 0x062b}, // Arabic_theh
+ {0x05cc, 0x062c}, // Arabic_jeem
+ {0x05cd, 0x062d}, // Arabic_hah
+ {0x05ce, 0x062e}, // Arabic_khah
+ {0x05cf, 0x062f}, // Arabic_dal
+ {0x05d0, 0x0630}, // Arabic_thal
+ {0x05d1, 0x0631}, // Arabic_ra
+ {0x05d2, 0x0632}, // Arabic_zain
+ {0x05d3, 0x0633}, // Arabic_seen
+ {0x05d4, 0x0634}, // Arabic_sheen
+ {0x05d5, 0x0635}, // Arabic_sad
+ {0x05d6, 0x0636}, // Arabic_dad
+ {0x05d7, 0x0637}, // Arabic_tah
+ {0x05d8, 0x0638}, // Arabic_zah
+ {0x05d9, 0x0639}, // Arabic_ain
+ {0x05da, 0x063a}, // Arabic_ghain
+ {0x05e0, 0x0640}, // Arabic_tatweel
+ {0x05e1, 0x0641}, // Arabic_feh
+ {0x05e2, 0x0642}, // Arabic_qaf
+ {0x05e3, 0x0643}, // Arabic_kaf
+ {0x05e4, 0x0644}, // Arabic_lam
+ {0x05e5, 0x0645}, // Arabic_meem
+ {0x05e6, 0x0646}, // Arabic_noon
+ {0x05e7, 0x0647}, // Arabic_ha
+ {0x05e8, 0x0648}, // Arabic_waw
+ {0x05e9, 0x0649}, // Arabic_alefmaksura
+ {0x05ea, 0x064a}, // Arabic_yeh
+ {0x05eb, 0x064b}, // Arabic_fathatan
+ {0x05ec, 0x064c}, // Arabic_dammatan
+ {0x05ed, 0x064d}, // Arabic_kasratan
+ {0x05ee, 0x064e}, // Arabic_fatha
+ {0x05ef, 0x064f}, // Arabic_damma
+ {0x05f0, 0x0650}, // Arabic_kasra
+ {0x05f1, 0x0651}, // Arabic_shadda
+ {0x05f2, 0x0652}, // Arabic_sukun
+ {0x06a1, 0x0452}, // Serbian_dje
+ {0x06a2, 0x0453}, // Macedonia_gje
+ {0x06a3, 0x0451}, // Cyrillic_io
+ {0x06a4, 0x0454}, // Ukrainian_ie
+ {0x06a5, 0x0455}, // Macedonia_dse
+ {0x06a6, 0x0456}, // Ukrainian_i
+ {0x06a7, 0x0457}, // Ukrainian_yi
+ {0x06a8, 0x0458}, // Cyrillic_je
+ {0x06a9, 0x0459}, // Cyrillic_lje
+ {0x06aa, 0x045a}, // Cyrillic_nje
+ {0x06ab, 0x045b}, // Serbian_tshe
+ {0x06ac, 0x045c}, // Macedonia_kje
+ {0x06ad, 0x0491}, // Ukrainian_ghe_with_upturn
+ {0x06ae, 0x045e}, // Byelorussian_shortu
+ {0x06af, 0x045f}, // Cyrillic_dzhe
+ {0x06b0, 0x2116}, // numerosign
+ {0x06b1, 0x0402}, // Serbian_DJE
+ {0x06b2, 0x0403}, // Macedonia_GJE
+ {0x06b3, 0x0401}, // Cyrillic_IO
+ {0x06b4, 0x0404}, // Ukrainian_IE
+ {0x06b5, 0x0405}, // Macedonia_DSE
+ {0x06b6, 0x0406}, // Ukrainian_I
+ {0x06b7, 0x0407}, // Ukrainian_YI
+ {0x06b8, 0x0408}, // Cyrillic_JE
+ {0x06b9, 0x0409}, // Cyrillic_LJE
+ {0x06ba, 0x040a}, // Cyrillic_NJE
+ {0x06bb, 0x040b}, // Serbian_TSHE
+ {0x06bc, 0x040c}, // Macedonia_KJE
+ {0x06bd, 0x0490}, // Ukrainian_GHE_WITH_UPTURN
+ {0x06be, 0x040e}, // Byelorussian_SHORTU
+ {0x06bf, 0x040f}, // Cyrillic_DZHE
+ {0x06c0, 0x044e}, // Cyrillic_yu
+ {0x06c1, 0x0430}, // Cyrillic_a
+ {0x06c2, 0x0431}, // Cyrillic_be
+ {0x06c3, 0x0446}, // Cyrillic_tse
+ {0x06c4, 0x0434}, // Cyrillic_de
+ {0x06c5, 0x0435}, // Cyrillic_ie
+ {0x06c6, 0x0444}, // Cyrillic_ef
+ {0x06c7, 0x0433}, // Cyrillic_ghe
+ {0x06c8, 0x0445}, // Cyrillic_ha
+ {0x06c9, 0x0438}, // Cyrillic_i
+ {0x06ca, 0x0439}, // Cyrillic_shorti
+ {0x06cb, 0x043a}, // Cyrillic_ka
+ {0x06cc, 0x043b}, // Cyrillic_el
+ {0x06cd, 0x043c}, // Cyrillic_em
+ {0x06ce, 0x043d}, // Cyrillic_en
+ {0x06cf, 0x043e}, // Cyrillic_o
+ {0x06d0, 0x043f}, // Cyrillic_pe
+ {0x06d1, 0x044f}, // Cyrillic_ya
+ {0x06d2, 0x0440}, // Cyrillic_er
+ {0x06d3, 0x0441}, // Cyrillic_es
+ {0x06d4, 0x0442}, // Cyrillic_te
+ {0x06d5, 0x0443}, // Cyrillic_u
+ {0x06d6, 0x0436}, // Cyrillic_zhe
+ {0x06d7, 0x0432}, // Cyrillic_ve
+ {0x06d8, 0x044c}, // Cyrillic_softsign
+ {0x06d9, 0x044b}, // Cyrillic_yeru
+ {0x06da, 0x0437}, // Cyrillic_ze
+ {0x06db, 0x0448}, // Cyrillic_sha
+ {0x06dc, 0x044d}, // Cyrillic_e
+ {0x06dd, 0x0449}, // Cyrillic_shcha
+ {0x06de, 0x0447}, // Cyrillic_che
+ {0x06df, 0x044a}, // Cyrillic_hardsign
+ {0x06e0, 0x042e}, // Cyrillic_YU
+ {0x06e1, 0x0410}, // Cyrillic_A
+ {0x06e2, 0x0411}, // Cyrillic_BE
+ {0x06e3, 0x0426}, // Cyrillic_TSE
+ {0x06e4, 0x0414}, // Cyrillic_DE
+ {0x06e5, 0x0415}, // Cyrillic_IE
+ {0x06e6, 0x0424}, // Cyrillic_EF
+ {0x06e7, 0x0413}, // Cyrillic_GHE
+ {0x06e8, 0x0425}, // Cyrillic_HA
+ {0x06e9, 0x0418}, // Cyrillic_I
+ {0x06ea, 0x0419}, // Cyrillic_SHORTI
+ {0x06eb, 0x041a}, // Cyrillic_KA
+ {0x06ec, 0x041b}, // Cyrillic_EL
+ {0x06ed, 0x041c}, // Cyrillic_EM
+ {0x06ee, 0x041d}, // Cyrillic_EN
+ {0x06ef, 0x041e}, // Cyrillic_O
+ {0x06f0, 0x041f}, // Cyrillic_PE
+ {0x06f1, 0x042f}, // Cyrillic_YA
+ {0x06f2, 0x0420}, // Cyrillic_ER
+ {0x06f3, 0x0421}, // Cyrillic_ES
+ {0x06f4, 0x0422}, // Cyrillic_TE
+ {0x06f5, 0x0423}, // Cyrillic_U
+ {0x06f6, 0x0416}, // Cyrillic_ZHE
+ {0x06f7, 0x0412}, // Cyrillic_VE
+ {0x06f8, 0x042c}, // Cyrillic_SOFTSIGN
+ {0x06f9, 0x042b}, // Cyrillic_YERU
+ {0x06fa, 0x0417}, // Cyrillic_ZE
+ {0x06fb, 0x0428}, // Cyrillic_SHA
+ {0x06fc, 0x042d}, // Cyrillic_E
+ {0x06fd, 0x0429}, // Cyrillic_SHCHA
+ {0x06fe, 0x0427}, // Cyrillic_CHE
+ {0x06ff, 0x042a}, // Cyrillic_HARDSIGN
+ {0x07a1, 0x0386}, // Greek_ALPHAaccent
+ {0x07a2, 0x0388}, // Greek_EPSILONaccent
+ {0x07a3, 0x0389}, // Greek_ETAaccent
+ {0x07a4, 0x038a}, // Greek_IOTAaccent
+ {0x07a5, 0x03aa}, // Greek_IOTAdieresis
+ {0x07a7, 0x038c}, // Greek_OMICRONaccent
+ {0x07a8, 0x038e}, // Greek_UPSILONaccent
+ {0x07a9, 0x03ab}, // Greek_UPSILONdieresis
+ {0x07ab, 0x038f}, // Greek_OMEGAaccent
+ {0x07ae, 0x0385}, // Greek_accentdieresis
+ {0x07af, 0x2015}, // Greek_horizbar
+ {0x07b1, 0x03ac}, // Greek_alphaaccent
+ {0x07b2, 0x03ad}, // Greek_epsilonaccent
+ {0x07b3, 0x03ae}, // Greek_etaaccent
+ {0x07b4, 0x03af}, // Greek_iotaaccent
+ {0x07b5, 0x03ca}, // Greek_IOTAdieresis
+ {0x07b6, 0x0390}, // Greek_iotaaccentdieresis
+ {0x07b7, 0x03cc}, // Greek_omicronaccent
+ {0x07b8, 0x03cd}, // Greek_upsilonaccent
+ {0x07b9, 0x03cb}, // Greek_upsilondieresis
+ {0x07ba, 0x03b0}, // Greek_upsilonaccentdieresis
+ {0x07bb, 0x03ce}, // Greek_omegaaccent
+ {0x07c1, 0x0391}, // Greek_ALPHA
+ {0x07c2, 0x0392}, // Greek_BETA
+ {0x07c3, 0x0393}, // Greek_GAMMA
+ {0x07c4, 0x0394}, // Greek_DELTA
+ {0x07c5, 0x0395}, // Greek_EPSILON
+ {0x07c6, 0x0396}, // Greek_ZETA
+ {0x07c7, 0x0397}, // Greek_ETA
+ {0x07c8, 0x0398}, // Greek_THETA
+ {0x07c9, 0x0399}, // Greek_IOTA
+ {0x07ca, 0x039a}, // Greek_KAPPA
+ {0x07cb, 0x039b}, // Greek_LAMBDA
+ {0x07cb, 0x039b}, // Greek_LAMDA
+ {0x07cc, 0x039c}, // Greek_MU
+ {0x07cd, 0x039d}, // Greek_NU
+ {0x07ce, 0x039e}, // Greek_XI
+ {0x07cf, 0x039f}, // Greek_OMICRON
+ {0x07d0, 0x03a0}, // Greek_PI
+ {0x07d1, 0x03a1}, // Greek_RHO
+ {0x07d2, 0x03a3}, // Greek_SIGMA
+ {0x07d4, 0x03a4}, // Greek_TAU
+ {0x07d5, 0x03a5}, // Greek_UPSILON
+ {0x07d6, 0x03a6}, // Greek_PHI
+ {0x07d7, 0x03a7}, // Greek_CHI
+ {0x07d8, 0x03a8}, // Greek_PSI
+ {0x07d9, 0x03a9}, // Greek_OMEGA
+ {0x07e1, 0x03b1}, // Greek_alpha
+ {0x07e2, 0x03b2}, // Greek_beta
+ {0x07e3, 0x03b3}, // Greek_gamma
+ {0x07e4, 0x03b4}, // Greek_delta
+ {0x07e5, 0x03b5}, // Greek_epsilon
+ {0x07e6, 0x03b6}, // Greek_zeta
+ {0x07e7, 0x03b7}, // Greek_eta
+ {0x07e8, 0x03b8}, // Greek_theta
+ {0x07e9, 0x03b9}, // Greek_iota
+ {0x07ea, 0x03ba}, // Greek_kappa
+ {0x07eb, 0x03bb}, // Greek_lambda
+ {0x07ec, 0x03bc}, // Greek_mu
+ {0x07ed, 0x03bd}, // Greek_nu
+ {0x07ee, 0x03be}, // Greek_xi
+ {0x07ef, 0x03bf}, // Greek_omicron
+ {0x07f0, 0x03c0}, // Greek_pi
+ {0x07f1, 0x03c1}, // Greek_rho
+ {0x07f2, 0x03c3}, // Greek_sigma
+ {0x07f3, 0x03c2}, // Greek_finalsmallsigma
+ {0x07f4, 0x03c4}, // Greek_tau
+ {0x07f5, 0x03c5}, // Greek_upsilon
+ {0x07f6, 0x03c6}, // Greek_phi
+ {0x07f7, 0x03c7}, // Greek_chi
+ {0x07f8, 0x03c8}, // Greek_psi
+ {0x07f9, 0x03c9}, // Greek_omega
+ {0x08a1, 0x23b7}, // leftradical
+ {0x08a2, 0x250c}, // topleftradical
+ {0x08a3, 0x2500}, // horizconnector
+ {0x08a4, 0x2320}, // topintegral
+ {0x08a5, 0x2321}, // botintegral
+ {0x08a6, 0x2502}, // vertconnector
+ {0x08a7, 0x23a1}, // topleftsqbracket
+ {0x08a8, 0x23a3}, // botleftsqbracket
+ {0x08a9, 0x23a4}, // toprightsqbracket
+ {0x08aa, 0x23a6}, // botrightsqbracket
+ {0x08ab, 0x239b}, // topleftparens
+ {0x08ac, 0x239d}, // botleftparens
+ {0x08ad, 0x239e}, // toprightparens
+ {0x08ae, 0x23a0}, // botrightparens
+ {0x08af, 0x23a8}, // leftmiddlecurlybrace
+ {0x08b0, 0x23ac}, // rightmiddlecurlybrace
+ {0x08bc, 0x2264}, // lessthanequal
+ {0x08bd, 0x2260}, // notequal
+ {0x08be, 0x2265}, // greaterthanequal
+ {0x08bf, 0x222b}, // integral
+ {0x08c0, 0x2234}, // therefore
+ {0x08c1, 0x221d}, // variation
+ {0x08c2, 0x221e}, // infinity
+ {0x08c5, 0x2207}, // nabla
+ {0x08c8, 0x223c}, // approximate
+ {0x08c9, 0x2243}, // similarequal
+ {0x08cd, 0x21d4}, // ifonlyif
+ {0x08ce, 0x21d2}, // implies
+ {0x08cf, 0x2261}, // identical
+ {0x08d6, 0x221a}, // radical
+ {0x08da, 0x2282}, // includedin
+ {0x08db, 0x2283}, // includes
+ {0x08dc, 0x2229}, // intersection
+ {0x08dd, 0x222a}, // union
+ {0x08de, 0x2227}, // logicaland
+ {0x08df, 0x2228}, // logicalor
+ {0x08ef, 0x2202}, // partialderivative
+ {0x08f6, 0x0192}, // function
+ {0x08fb, 0x2190}, // leftarrow
+ {0x08fc, 0x2191}, // uparrow
+ {0x08fd, 0x2192}, // rightarrow
+ {0x08fe, 0x2193}, // downarrow
+ {0x09df, 0x2422}, // blank
+ {0x09e0, 0x25c6}, // soliddiamond
+ {0x09e1, 0x2592}, // checkerboard
+ {0x09e2, 0x2409}, // ht
+ {0x09e3, 0x240c}, // ff
+ {0x09e4, 0x240d}, // cr
+ {0x09e5, 0x240a}, // lf
+ {0x09e8, 0x2424}, // nl
+ {0x09e9, 0x240b}, // vt
+ {0x09ea, 0x2518}, // lowrightcorner
+ {0x09eb, 0x2510}, // uprightcorner
+ {0x09ec, 0x250c}, // upleftcorner
+ {0x09ed, 0x2514}, // lowleftcorner
+ {0x09ee, 0x253c}, // crossinglines
+ {0x09ef, 0x23ba}, // horizlinescan1
+ {0x09f0, 0x23bb}, // horizlinescan3
+ {0x09f1, 0x2500}, // horizlinescan5
+ {0x09f2, 0x23bc}, // horizlinescan7
+ {0x09f3, 0x23bd}, // horizlinescan9
+ {0x09f4, 0x251c}, // leftt
+ {0x09f5, 0x2524}, // rightt
+ {0x09f6, 0x2534}, // bott
+ {0x09f7, 0x252c}, // topt
+ {0x09f8, 0x2502}, // vertbar
+ {0x0aa1, 0x2003}, // emspace
+ {0x0aa2, 0x2002}, // enspace
+ {0x0aa3, 0x2004}, // em3space
+ {0x0aa4, 0x2005}, // em4space
+ {0x0aa5, 0x2007}, // digitspace
+ {0x0aa6, 0x2008}, // punctspace
+ {0x0aa7, 0x2009}, // thinspace
+ {0x0aa8, 0x200a}, // hairspace
+ {0x0aa9, 0x2014}, // emdash
+ {0x0aaa, 0x2013}, // endash
+ {0x0aac, 0x2423}, // signifblank
+ {0x0aae, 0x2026}, // ellipsis
+ {0x0aaf, 0x2025}, // doubbaselinedot
+ {0x0ab0, 0x2153}, // onethird
+ {0x0ab1, 0x2154}, // twothirds
+ {0x0ab2, 0x2155}, // onefifth
+ {0x0ab3, 0x2156}, // twofifths
+ {0x0ab4, 0x2157}, // threefifths
+ {0x0ab5, 0x2158}, // fourfifths
+ {0x0ab6, 0x2159}, // onesixth
+ {0x0ab7, 0x215a}, // fivesixths
+ {0x0ab8, 0x2105}, // careof
+ {0x0abb, 0x2012}, // figdash
+ {0x0abc, 0x2329}, // leftanglebracket (not U+27E8)
+ {0x0abd, 0x002e}, // decimalpoint
+ {0x0abe, 0x232a}, // rightanglebracket (not U+27E9)
+ {0x0ac3, 0x215b}, // oneeighth
+ {0x0ac4, 0x215c}, // threeeighths
+ {0x0ac5, 0x215d}, // fiveeighths
+ {0x0ac6, 0x215e}, // seveneighths
+ {0x0ac9, 0x2122}, // trademark
+ {0x0aca, 0x2613}, // signaturemark
+ {0x0acc, 0x25c1}, // leftopentriangle
+ {0x0acd, 0x25b7}, // rightopentriangle
+ {0x0ace, 0x25cb}, // emopencircle
+ {0x0acf, 0x25af}, // emopenrectangle
+ {0x0ad0, 0x2018}, // leftsinglequotemark
+ {0x0ad1, 0x2019}, // rightsinglequotemark
+ {0x0ad2, 0x201c}, // leftdoublequotemark
+ {0x0ad3, 0x201d}, // rightdoublequotemark
+ {0x0ad4, 0x211e}, // prescription
+ {0x0ad5, 0x2030}, // per mille
+ {0x0ad6, 0x2032}, // minutes
+ {0x0ad7, 0x2033}, // seconds
+ {0x0ad9, 0x271d}, // latincross
+ {0x0adb, 0x25ac}, // filledrectbullet
+ {0x0adc, 0x25c0}, // filledlefttribullet
+ {0x0add, 0x25b6}, // filledrighttribullet
+ {0x0ade, 0x25cf}, // emfilledcircle
+ {0x0adf, 0x25ae}, // emfilledrect
+ {0x0ae0, 0x25e6}, // enopencircbullet
+ {0x0ae1, 0x25ab}, // enopensquarebullet
+ {0x0ae2, 0x25ad}, // openrectbullet
+ {0x0ae3, 0x25b3}, // opentribulletup
+ {0x0ae4, 0x25bd}, // opentribulletdown
+ {0x0ae5, 0x2606}, // openstar
+ {0x0ae6, 0x2022}, // enfilledcircbullet
+ {0x0ae7, 0x25aa}, // enfilledsqbullet
+ {0x0ae8, 0x25b2}, // filledtribulletup
+ {0x0ae9, 0x25bc}, // filledtribulletdown
+ {0x0aea, 0x261c}, // leftpointer
+ {0x0aeb, 0x261e}, // rightpointer
+ {0x0aec, 0x2663}, // club
+ {0x0aed, 0x2666}, // diamond
+ {0x0aee, 0x2665}, // heart
+ {0x0af0, 0x2720}, // maltesecross
+ {0x0af1, 0x2020}, // dagger
+ {0x0af2, 0x2021}, // doubledagger
+ {0x0af3, 0x2713}, // checkmark
+ {0x0af4, 0x2717}, // ballotcross
+ {0x0af5, 0x266f}, // musicalsharp
+ {0x0af6, 0x266d}, // musicalflat
+ {0x0af7, 0x2642}, // malesymbol
+ {0x0af8, 0x2640}, // femalesymbol
+ {0x0af9, 0x260e}, // telephone
+ {0x0afa, 0x2315}, // telephonerecorder
+ {0x0afb, 0x2117}, // phonographcopyright
+ {0x0afc, 0x2038}, // caret
+ {0x0afd, 0x201a}, // singlelowquotemark
+ {0x0afe, 0x201e}, // doublelowquotemark
+ {0x0ba3, 0x003c}, // leftcaret
+ {0x0ba6, 0x003e}, // rightcaret
+ {0x0ba8, 0x2228}, // downcaret
+ {0x0ba9, 0x2227}, // upcaret
+ {0x0bc0, 0x00af}, // overbar
+ {0x0bc2, 0x22a4}, // downtack
+ {0x0bc3, 0x2229}, // upshoe
+ {0x0bc4, 0x230a}, // downstile
+ {0x0bc6, 0x005f}, // underbar
+ {0x0bca, 0x2218}, // jot
+ {0x0bcc, 0x2395}, // quad
+ {0x0bce, 0x22a5}, // uptack
+ {0x0bcf, 0x25cb}, // circle
+ {0x0bd3, 0x2308}, // upstile
+ {0x0bd6, 0x222a}, // downshoe
+ {0x0bd8, 0x2283}, // rightshoe
+ {0x0bda, 0x2282}, // leftshoe
+ {0x0bdc, 0x22a3}, // lefttack
+ {0x0bfc, 0x22a2}, // righttack
+ {0x0cdf, 0x2017}, // hebrew_doublelowline
+ {0x0ce0, 0x05d0}, // hebrew_aleph
+ {0x0ce1, 0x05d1}, // hebrew_bet
+ {0x0ce2, 0x05d2}, // hebrew_gimel
+ {0x0ce3, 0x05d3}, // hebrew_dalet
+ {0x0ce4, 0x05d4}, // hebrew_he
+ {0x0ce5, 0x05d5}, // hebrew_waw
+ {0x0ce6, 0x05d6}, // hebrew_zain
+ {0x0ce7, 0x05d7}, // hebrew_chet
+ {0x0ce8, 0x05d8}, // hebrew_tet
+ {0x0ce9, 0x05d9}, // hebrew_yod
+ {0x0cea, 0x05da}, // hebrew_finalkaph
+ {0x0ceb, 0x05db}, // hebrew_kaph
+ {0x0cec, 0x05dc}, // hebrew_lamed
+ {0x0ced, 0x05dd}, // hebrew_finalmem
+ {0x0cee, 0x05de}, // hebrew_mem
+ {0x0cef, 0x05df}, // hebrew_finalnun
+ {0x0cf0, 0x05e0}, // hebrew_nun
+ {0x0cf1, 0x05e1}, // hebrew_samech
+ {0x0cf2, 0x05e2}, // hebrew_ayin
+ {0x0cf3, 0x05e3}, // hebrew_finalpe
+ {0x0cf4, 0x05e4}, // hebrew_pe
+ {0x0cf5, 0x05e5}, // hebrew_finalzade
+ {0x0cf6, 0x05e6}, // hebrew_zade
+ {0x0cf7, 0x05e7}, // hebrew_qoph
+ {0x0cf8, 0x05e8}, // hebrew_resh
+ {0x0cf9, 0x05e9}, // hebrew_shin
+ {0x0cfa, 0x05ea}, // hebrew_taw
+ {0x0da1, 0x0e01}, // Thai_kokai
+ {0x0da2, 0x0e02}, // Thai_khokhai
+ {0x0da3, 0x0e03}, // Thai_khokhuat
+ {0x0da4, 0x0e04}, // Thai_khokhwai
+ {0x0da5, 0x0e05}, // Thai_khokhon
+ {0x0da6, 0x0e06}, // Thai_khorakhang
+ {0x0da7, 0x0e07}, // Thai_ngongu
+ {0x0da8, 0x0e08}, // Thai_chochan
+ {0x0da9, 0x0e09}, // Thai_choching
+ {0x0daa, 0x0e0a}, // Thai_chochang
+ {0x0dab, 0x0e0b}, // Thai_soso
+ {0x0dac, 0x0e0c}, // Thai_chochoe
+ {0x0dad, 0x0e0d}, // Thai_yoying
+ {0x0dae, 0x0e0e}, // Thai_dochada
+ {0x0daf, 0x0e0f}, // Thai_topatak
+ {0x0db0, 0x0e10}, // Thai_thothan
+ {0x0db1, 0x0e11}, // Thai_thonangmontho
+ {0x0db2, 0x0e12}, // Thai_thophuthao
+ {0x0db3, 0x0e13}, // Thai_nonen
+ {0x0db4, 0x0e14}, // Thai_dodek
+ {0x0db5, 0x0e15}, // Thai_totao
+ {0x0db6, 0x0e16}, // Thai_thothung
+ {0x0db7, 0x0e17}, // Thai_thothahan
+ {0x0db8, 0x0e18}, // Thai_thothong
+ {0x0db9, 0x0e19}, // Thai_nonu
+ {0x0dba, 0x0e1a}, // Thai_bobaimai
+ {0x0dbb, 0x0e1b}, // Thai_popla
+ {0x0dbc, 0x0e1c}, // Thai_phophung
+ {0x0dbd, 0x0e1d}, // Thai_fofa
+ {0x0dbe, 0x0e1e}, // Thai_phophan
+ {0x0dbf, 0x0e1f}, // Thai_fofan
+ {0x0dc0, 0x0e20}, // Thai_phosamphao
+ {0x0dc1, 0x0e21}, // Thai_moma
+ {0x0dc2, 0x0e22}, // Thai_yoyak
+ {0x0dc3, 0x0e23}, // Thai_rorua
+ {0x0dc4, 0x0e24}, // Thai_ru
+ {0x0dc5, 0x0e25}, // Thai_loling
+ {0x0dc6, 0x0e26}, // Thai_lu
+ {0x0dc7, 0x0e27}, // Thai_wowaen
+ {0x0dc8, 0x0e28}, // Thai_sosala
+ {0x0dc9, 0x0e29}, // Thai_sorusi
+ {0x0dca, 0x0e2a}, // Thai_sosua
+ {0x0dcb, 0x0e2b}, // Thai_hohip
+ {0x0dcc, 0x0e2c}, // Thai_lochula
+ {0x0dcd, 0x0e2d}, // Thai_oang
+ {0x0dce, 0x0e2e}, // Thai_honokhuk
+ {0x0dcf, 0x0e2f}, // Thai_paiyannoi
+ {0x0dd0, 0x0e30}, // Thai_saraa
+ {0x0dd1, 0x0e31}, // Thai_maihanakat
+ {0x0dd2, 0x0e32}, // Thai_saraaa
+ {0x0dd3, 0x0e33}, // Thai_saraam
+ {0x0dd4, 0x0e34}, // Thai_sarai
+ {0x0dd5, 0x0e35}, // Thai_saraii
+ {0x0dd6, 0x0e36}, // Thai_saraue
+ {0x0dd7, 0x0e37}, // Thai_sarauee
+ {0x0dd8, 0x0e38}, // Thai_sarau
+ {0x0dd9, 0x0e39}, // Thai_sarauu
+ {0x0dda, 0x0e3a}, // Thai_phinthu
+ {0x0ddf, 0x0e3f}, // Thai_baht
+ {0x0de0, 0x0e40}, // Thai_sarae
+ {0x0de1, 0x0e41}, // Thai_saraae
+ {0x0de2, 0x0e42}, // Thai_sarao
+ {0x0de3, 0x0e43}, // Thai_saraaimaimuan
+ {0x0de4, 0x0e44}, // Thai_saraaimaimalai
+ {0x0de5, 0x0e45}, // Thai_lakkhangyao
+ {0x0de6, 0x0e46}, // Thai_maiyamok
+ {0x0de7, 0x0e47}, // Thai_maitaikhu
+ {0x0de8, 0x0e48}, // Thai_maiek
+ {0x0de9, 0x0e49}, // Thai_maitho
+ {0x0dea, 0x0e4a}, // Thai_maitri
+ {0x0deb, 0x0e4b}, // Thai_maichattawa
+ {0x0dec, 0x0e4c}, // Thai_thanthakhat
+ {0x0ded, 0x0e4d}, // Thai_nikhahit
+ {0x0df0, 0x0e50}, // Thai_leksun
+ {0x0df1, 0x0e51}, // Thai_leknung
+ {0x0df2, 0x0e52}, // Thai_leksong
+ {0x0df3, 0x0e53}, // Thai_leksam
+ {0x0df4, 0x0e54}, // Thai_leksi
+ {0x0df5, 0x0e55}, // Thai_lekha
+ {0x0df6, 0x0e56}, // Thai_lekhok
+ {0x0df7, 0x0e57}, // Thai_lekchet
+ {0x0df8, 0x0e58}, // Thai_lekpaet
+ {0x0df9, 0x0e59}, // Thai_lekkao
+ {0x0ea1, 0x3131}, // Hangul_Kiyeog
+ {0x0ea2, 0x3132}, // Hangul_SsangKiyeog
+ {0x0ea3, 0x3133}, // Hangul_KiyeogSios
+ {0x0ea4, 0x3134}, // Hangul_Nieun
+ {0x0ea5, 0x3135}, // Hangul_NieunJieuj
+ {0x0ea6, 0x3136}, // Hangul_NieunHieuh
+ {0x0ea7, 0x3137}, // Hangul_Dikeud
+ {0x0ea8, 0x3138}, // Hangul_SsangDikeud
+ {0x0ea9, 0x3139}, // Hangul_Rieul
+ {0x0eaa, 0x313a}, // Hangul_RieulKiyeog
+ {0x0eab, 0x313b}, // Hangul_RieulMieum
+ {0x0eac, 0x313c}, // Hangul_RieulPieub
+ {0x0ead, 0x313d}, // Hangul_RieulSios
+ {0x0eae, 0x313e}, // Hangul_RieulTieut
+ {0x0eaf, 0x313f}, // Hangul_RieulPhieuf
+ {0x0eb0, 0x3140}, // Hangul_RieulHieuh
+ {0x0eb1, 0x3141}, // Hangul_Mieum
+ {0x0eb2, 0x3142}, // Hangul_Pieub
+ {0x0eb3, 0x3143}, // Hangul_SsangPieub
+ {0x0eb4, 0x3144}, // Hangul_PieubSios
+ {0x0eb5, 0x3145}, // Hangul_Sios
+ {0x0eb6, 0x3146}, // Hangul_SsangSios
+ {0x0eb7, 0x3147}, // Hangul_Ieung
+ {0x0eb8, 0x3148}, // Hangul_Jieuj
+ {0x0eb9, 0x3149}, // Hangul_SsangJieuj
+ {0x0eba, 0x314a}, // Hangul_Cieuc
+ {0x0ebb, 0x314b}, // Hangul_Khieuq
+ {0x0ebc, 0x314c}, // Hangul_Tieut
+ {0x0ebd, 0x314d}, // Hangul_Phieuf
+ {0x0ebe, 0x314e}, // Hangul_Hieuh
+ {0x0ebf, 0x314f}, // Hangul_A
+ {0x0ec0, 0x3150}, // Hangul_AE
+ {0x0ec1, 0x3151}, // Hangul_YA
+ {0x0ec2, 0x3152}, // Hangul_YAE
+ {0x0ec3, 0x3153}, // Hangul_EO
+ {0x0ec4, 0x3154}, // Hangul_E
+ {0x0ec5, 0x3155}, // Hangul_YEO
+ {0x0ec6, 0x3156}, // Hangul_YE
+ {0x0ec7, 0x3157}, // Hangul_O
+ {0x0ec8, 0x3158}, // Hangul_WA
+ {0x0ec9, 0x3159}, // Hangul_WAE
+ {0x0eca, 0x315a}, // Hangul_OE
+ {0x0ecb, 0x315b}, // Hangul_YO
+ {0x0ecc, 0x315c}, // Hangul_U
+ {0x0ecd, 0x315d}, // Hangul_WEO
+ {0x0ece, 0x315e}, // Hangul_WE
+ {0x0ecf, 0x315f}, // Hangul_WI
+ {0x0ed0, 0x3160}, // Hangul_YU
+ {0x0ed1, 0x3161}, // Hangul_EU
+ {0x0ed2, 0x3162}, // Hangul_YI
+ {0x0ed3, 0x3163}, // Hangul_I
+ {0x0ed4, 0x11a8}, // Hangul_J_Kiyeog
+ {0x0ed5, 0x11a9}, // Hangul_J_SsangKiyeog
+ {0x0ed6, 0x11aa}, // Hangul_J_KiyeogSios
+ {0x0ed7, 0x11ab}, // Hangul_J_Nieun
+ {0x0ed8, 0x11ac}, // Hangul_J_NieunJieuj
+ {0x0ed9, 0x11ad}, // Hangul_J_NieunHieuh
+ {0x0eda, 0x11ae}, // Hangul_J_Dikeud
+ {0x0edb, 0x11af}, // Hangul_J_Rieul
+ {0x0edc, 0x11b0}, // Hangul_J_RieulKiyeog
+ {0x0edd, 0x11b1}, // Hangul_J_RieulMieum
+ {0x0ede, 0x11b2}, // Hangul_J_RieulPieub
+ {0x0edf, 0x11b3}, // Hangul_J_RieulSios
+ {0x0ee0, 0x11b4}, // Hangul_J_RieulTieut
+ {0x0ee1, 0x11b5}, // Hangul_J_RieulPhieuf
+ {0x0ee2, 0x11b6}, // Hangul_J_RieulHieuh
+ {0x0ee3, 0x11b7}, // Hangul_J_Mieum
+ {0x0ee4, 0x11b8}, // Hangul_J_Pieub
+ {0x0ee5, 0x11b9}, // Hangul_J_PieubSios
+ {0x0ee6, 0x11ba}, // Hangul_J_Sios
+ {0x0ee7, 0x11bb}, // Hangul_J_SsangSios
+ {0x0ee8, 0x11bc}, // Hangul_J_Ieung
+ {0x0ee9, 0x11bd}, // Hangul_J_Jieuj
+ {0x0eea, 0x11be}, // Hangul_J_Cieuc
+ {0x0eeb, 0x11bf}, // Hangul_J_Khieuq
+ {0x0eec, 0x11c0}, // Hangul_J_Tieut
+ {0x0eed, 0x11c1}, // Hangul_J_Phieuf
+ {0x0eee, 0x11c2}, // Hangul_J_Hieuh
+ {0x0eef, 0x316d}, // Hangul_RieulYeorinHieuh
+ {0x0ef0, 0x3171}, // Hangul_SunkyeongeumMieum
+ {0x0ef1, 0x3178}, // Hangul_SunkyeongeumPieub
+ {0x0ef2, 0x317f}, // Hangul_PanSios
+ {0x0ef3, 0x3181}, // Hangul_KkogjiDalrinIeung
+ {0x0ef4, 0x3184}, // Hangul_SunkyeongeumPhieuf
+ {0x0ef5, 0x3186}, // Hangul_YeorinHieuh
+ {0x0ef6, 0x318d}, // Hangul_AraeA
+ {0x0ef7, 0x318e}, // Hangul_AraeAE
+ {0x0ef8, 0x11eb}, // Hangul_J_PanSios
+ {0x0ef9, 0x11f0}, // Hangul_J_KkogjiDalrinIeung
+ {0x0efa, 0x11f9}, // Hangul_J_YeorinHieuh
+ {0x0eff, 0x20a9}, // Korean_Won
+ {0x13a4, 0x20ac}, // Euro
+ {0x13bc, 0x0152}, // OE
+ {0x13bd, 0x0153}, // oe
+ {0x13be, 0x0178}, // Ydiaeresis
+ {0x20a0, 0x20a0}, // EcuSign
+ {0x20a1, 0x20a1}, // ColonSign
+ {0x20a2, 0x20a2}, // CruzeiroSign
+ {0x20a3, 0x20a3}, // FFrancSign
+ {0x20a4, 0x20a4}, // LiraSign
+ {0x20a5, 0x20a5}, // MillSign
+ {0x20a6, 0x20a6}, // NairaSign
+ {0x20a7, 0x20a7}, // PesetaSign
+ {0x20a8, 0x20a8}, // RupeeSign
+ {0x20a9, 0x20a9}, // WonSign
+ {0x20aa, 0x20aa}, // NewSheqelSign
+ {0x20ab, 0x20ab}, // DongSign
+ {0x20ac, 0x20ac}, // EuroSign
+ {0xfe50, 0x0300}, // dead_grave
+ {0xfe51, 0x0301}, // dead_acute
+ {0xfe52, 0x0302}, // dead_circumflex
+ {0xfe53, 0x0303}, // dead_tilde
+ {0xfe54, 0x0304}, // dead_macron
+ {0xfe55, 0x0306}, // dead_breve
+ {0xfe56, 0x0307}, // dead_abovedot
+ {0xfe57, 0x0308}, // dead_diaeresis
+ {0xfe58, 0x030a}, // dead_abovering
+ {0xfe59, 0x030b}, // dead_doubleacute
+ {0xfe5a, 0x030c}, // dead_caron
+ {0xfe5b, 0x0327}, // dead_cedilla
+ {0xfe5c, 0x0328}, // dead_ogonek
+ {0xfe5d, 0x0345}, // dead_iota
+ {0xfe5e, 0x3099}, // dead_voiced_sound
+ {0xfe5f, 0x309a}, // dead_semivoiced_sound
+ {0xff08, 0x0008}, // BackSpace /* back space, back char */
+ {0xff09, 0x0009}, // Tab
+ {0xff0a, 0x000a}, // Linefeed /* Linefeed, LF */
+ {0xff0b, 0x000b}, // Clear
+ {0xff0d, 0x000d}, // Return /* Return, enter */
+ {0xff13, 0x0013}, // Pause /* Pause, hold */
+ {0xff14, 0x0014}, // Scroll_Lock
+ {0xff15, 0x0015}, // Sys_Req
+ {0xff1b, 0x001b}, // Escape
+ {0xff80, 0x0032}, // KP_Space /* space */
+ {0xff89, 0x0009}, // KP_Tab
+ {0xff8d, 0x000d}, // KP_Enter /* enter */
+ {0xffaa, 0x002a}, // KP_Multiply
+ {0xffab, 0x002b}, // KP_Add
+ {0xffac, 0x002c}, // KP_Separator /* separator, often comma */
+ {0xffad, 0x002d}, // KP_Subtract
+ {0xffae, 0x002e}, // KP_Decimal
+ {0xffaf, 0x002f}, // KP_Divide
+ {0xffb0, 0x0030}, // KP_0
+ {0xffb1, 0x0031}, // KP_1
+ {0xffb2, 0x0032}, // KP_2
+ {0xffb3, 0x0033}, // KP_3
+ {0xffb4, 0x0034}, // KP_4
+ {0xffb5, 0x0035}, // KP_5
+ {0xffb6, 0x0036}, // KP_6
+ {0xffb7, 0x0037}, // KP_7
+ {0xffb8, 0x0038}, // KP_8
+ {0xffb9, 0x0039}, // KP_9
+ {0xffbd, 0x003d}, // KP_Equal /* equals */
+}