1#if 0 2generated by util script makekeysyms.pl: 3 4----- 5#!/usr/bin/perl 6 7print "#if 0\n"; 8print "generated by util script makekeysyms.pl:\n\n"; 9print "-----\n"; 10system("cat $0"); 11print "-----\n"; 12print "#endif\n\n"; 13 14# probably should use rfb/keysym.h: 15$file = shift; 16$file = "/usr/X11R6/include/X11/keysymdef.h" unless $file; 17 18open(KS, "<$file") || die "$file: $!"; 19 20while (<KS>) { 21 chomp; 22 next if /^#define (XK_MISCELLANY|XK_XKB_KEYS|XK_LATIN1|XK_LATIN2|XK_LATIN3|XK_LATIN4|XK_GREEK)/; 23 next if /^#define (XK_LATIN8|XK_LATIN9|XK_CAUCASUS|XK_KATAKANA|XK_ARABIC|XK_CYRILLIC|XK_HEBREW|XK_THAI|XK_KOREAN|XK_ARMENIAN|XK_GEORGIAN|XK_VIETNAMESE|XK_CURRENCY)/; 24 if (/^#define\s+(XK_\w+)/) { 25 push @xk, $1; 26 } elsif (/^#(ifdef|ifndef|endif)/) { 27 $_ =~ s/ifndef XK_0/ifndef XK_0_nosuch/; 28 push @xk, $_; 29 } 30} 31close(KS); 32 33print <<"END"; 34 35KeySym XStringToKeysym(char *s) { 36END 37foreach $ks (@xk) { 38 $s = $ks; 39 if ($ks =~ /#/) { 40 print "$ks\n"; 41 next; 42 } 43 $s =~ s/^XK_//; 44 print " if (!strcmp(s, \"$s\")) return $ks;\n"; 45} 46print <<"END"; 47 return NoSymbol; 48} 49 50END 51 52print <<"END"; 53 54char *XKeysymToString(KeySym k) { 55END 56foreach $ks (@xk) { 57 $s = $ks; 58 if ($ks =~ /#/) { 59 print "$ks\n"; 60 next; 61 } 62 $s =~ s/^XK_//; 63 print " if (k == $ks) return \"$s\";\n"; 64} 65print <<"END"; 66 return NULL; 67} 68 69KeySym XKeycodeToKeysym(Display *display, KeyCode keycode, int index) { 70 return NoSymbol; 71} 72 73KeyCode XKeysymToKeycode(Display *display, KeySym keysym) { 74 return NoSymbol; 75} 76 77XErrorHandler XSetErrorHandler (XErrorHandler h) { 78 return h; 79} 80 81END 82 83exit 0; 84----- 85#endif 86 87 88KeySym XStringToKeysym(char *s) { 89#ifndef XK_0_nosuch 90 if (!strcmp(s, "VoidSymbol")) return XK_VoidSymbol; 91#ifdef XK_MISCELLANY 92 if (!strcmp(s, "BackSpace")) return XK_BackSpace; 93 if (!strcmp(s, "Tab")) return XK_Tab; 94 if (!strcmp(s, "Linefeed")) return XK_Linefeed; 95 if (!strcmp(s, "Clear")) return XK_Clear; 96 if (!strcmp(s, "Return")) return XK_Return; 97 if (!strcmp(s, "Pause")) return XK_Pause; 98 if (!strcmp(s, "Scroll_Lock")) return XK_Scroll_Lock; 99 if (!strcmp(s, "Sys_Req")) return XK_Sys_Req; 100 if (!strcmp(s, "Escape")) return XK_Escape; 101 if (!strcmp(s, "Delete")) return XK_Delete; 102 if (!strcmp(s, "Multi_key")) return XK_Multi_key; 103 if (!strcmp(s, "SingleCandidate")) return XK_SingleCandidate; 104 if (!strcmp(s, "MultipleCandidate")) return XK_MultipleCandidate; 105 if (!strcmp(s, "PreviousCandidate")) return XK_PreviousCandidate; 106 if (!strcmp(s, "Kanji")) return XK_Kanji; 107 if (!strcmp(s, "Muhenkan")) return XK_Muhenkan; 108 if (!strcmp(s, "Henkan_Mode")) return XK_Henkan_Mode; 109 if (!strcmp(s, "Henkan")) return XK_Henkan; 110 if (!strcmp(s, "Romaji")) return XK_Romaji; 111 if (!strcmp(s, "Hiragana")) return XK_Hiragana; 112 if (!strcmp(s, "Katakana")) return XK_Katakana; 113 if (!strcmp(s, "Hiragana_Katakana")) return XK_Hiragana_Katakana; 114 if (!strcmp(s, "Zenkaku")) return XK_Zenkaku; 115 if (!strcmp(s, "Hankaku")) return XK_Hankaku; 116 if (!strcmp(s, "Zenkaku_Hankaku")) return XK_Zenkaku_Hankaku; 117 if (!strcmp(s, "Touroku")) return XK_Touroku; 118 if (!strcmp(s, "Massyo")) return XK_Massyo; 119 if (!strcmp(s, "Kana_Lock")) return XK_Kana_Lock; 120 if (!strcmp(s, "Kana_Shift")) return XK_Kana_Shift; 121 if (!strcmp(s, "Eisu_Shift")) return XK_Eisu_Shift; 122 if (!strcmp(s, "Eisu_toggle")) return XK_Eisu_toggle; 123 if (!strcmp(s, "Zen_Koho")) return XK_Zen_Koho; 124 if (!strcmp(s, "Mae_Koho")) return XK_Mae_Koho; 125 if (!strcmp(s, "Home")) return XK_Home; 126 if (!strcmp(s, "Left")) return XK_Left; 127 if (!strcmp(s, "Up")) return XK_Up; 128 if (!strcmp(s, "Right")) return XK_Right; 129 if (!strcmp(s, "Down")) return XK_Down; 130 if (!strcmp(s, "Prior")) return XK_Prior; 131 if (!strcmp(s, "Page_Up")) return XK_Page_Up; 132 if (!strcmp(s, "Next")) return XK_Next; 133 if (!strcmp(s, "Page_Down")) return XK_Page_Down; 134 if (!strcmp(s, "End")) return XK_End; 135 if (!strcmp(s, "Begin")) return XK_Begin; 136 if (!strcmp(s, "Select")) return XK_Select; 137 if (!strcmp(s, "Print")) return XK_Print; 138 if (!strcmp(s, "Execute")) return XK_Execute; 139 if (!strcmp(s, "Insert")) return XK_Insert; 140 if (!strcmp(s, "Undo")) return XK_Undo; 141 if (!strcmp(s, "Redo")) return XK_Redo; 142 if (!strcmp(s, "Menu")) return XK_Menu; 143 if (!strcmp(s, "Find")) return XK_Find; 144 if (!strcmp(s, "Cancel")) return XK_Cancel; 145 if (!strcmp(s, "Help")) return XK_Help; 146 if (!strcmp(s, "Break")) return XK_Break; 147 if (!strcmp(s, "Mode_switch")) return XK_Mode_switch; 148 if (!strcmp(s, "script_switch")) return XK_script_switch; 149 if (!strcmp(s, "Num_Lock")) return XK_Num_Lock; 150 if (!strcmp(s, "KP_Space")) return XK_KP_Space; 151 if (!strcmp(s, "KP_Tab")) return XK_KP_Tab; 152 if (!strcmp(s, "KP_Enter")) return XK_KP_Enter; 153 if (!strcmp(s, "KP_F1")) return XK_KP_F1; 154 if (!strcmp(s, "KP_F2")) return XK_KP_F2; 155 if (!strcmp(s, "KP_F3")) return XK_KP_F3; 156 if (!strcmp(s, "KP_F4")) return XK_KP_F4; 157 if (!strcmp(s, "KP_Home")) return XK_KP_Home; 158 if (!strcmp(s, "KP_Left")) return XK_KP_Left; 159 if (!strcmp(s, "KP_Up")) return XK_KP_Up; 160 if (!strcmp(s, "KP_Right")) return XK_KP_Right; 161 if (!strcmp(s, "KP_Down")) return XK_KP_Down; 162 if (!strcmp(s, "KP_Prior")) return XK_KP_Prior; 163 if (!strcmp(s, "KP_Page_Up")) return XK_KP_Page_Up; 164 if (!strcmp(s, "KP_Next")) return XK_KP_Next; 165 if (!strcmp(s, "KP_Page_Down")) return XK_KP_Page_Down; 166 if (!strcmp(s, "KP_End")) return XK_KP_End; 167 if (!strcmp(s, "KP_Begin")) return XK_KP_Begin; 168 if (!strcmp(s, "KP_Insert")) return XK_KP_Insert; 169 if (!strcmp(s, "KP_Delete")) return XK_KP_Delete; 170 if (!strcmp(s, "KP_Equal")) return XK_KP_Equal; 171 if (!strcmp(s, "KP_Multiply")) return XK_KP_Multiply; 172 if (!strcmp(s, "KP_Add")) return XK_KP_Add; 173 if (!strcmp(s, "KP_Separator")) return XK_KP_Separator; 174 if (!strcmp(s, "KP_Subtract")) return XK_KP_Subtract; 175 if (!strcmp(s, "KP_Decimal")) return XK_KP_Decimal; 176 if (!strcmp(s, "KP_Divide")) return XK_KP_Divide; 177 if (!strcmp(s, "KP_0")) return XK_KP_0; 178 if (!strcmp(s, "KP_1")) return XK_KP_1; 179 if (!strcmp(s, "KP_2")) return XK_KP_2; 180 if (!strcmp(s, "KP_3")) return XK_KP_3; 181 if (!strcmp(s, "KP_4")) return XK_KP_4; 182 if (!strcmp(s, "KP_5")) return XK_KP_5; 183 if (!strcmp(s, "KP_6")) return XK_KP_6; 184 if (!strcmp(s, "KP_7")) return XK_KP_7; 185 if (!strcmp(s, "KP_8")) return XK_KP_8; 186 if (!strcmp(s, "KP_9")) return XK_KP_9; 187 if (!strcmp(s, "F1")) return XK_F1; 188 if (!strcmp(s, "F2")) return XK_F2; 189 if (!strcmp(s, "F3")) return XK_F3; 190 if (!strcmp(s, "F4")) return XK_F4; 191 if (!strcmp(s, "F5")) return XK_F5; 192 if (!strcmp(s, "F6")) return XK_F6; 193 if (!strcmp(s, "F7")) return XK_F7; 194 if (!strcmp(s, "F8")) return XK_F8; 195 if (!strcmp(s, "F9")) return XK_F9; 196 if (!strcmp(s, "F10")) return XK_F10; 197 if (!strcmp(s, "F11")) return XK_F11; 198 if (!strcmp(s, "L1")) return XK_L1; 199 if (!strcmp(s, "F12")) return XK_F12; 200 if (!strcmp(s, "L2")) return XK_L2; 201 if (!strcmp(s, "F13")) return XK_F13; 202 if (!strcmp(s, "L3")) return XK_L3; 203 if (!strcmp(s, "F14")) return XK_F14; 204 if (!strcmp(s, "L4")) return XK_L4; 205 if (!strcmp(s, "F15")) return XK_F15; 206 if (!strcmp(s, "L5")) return XK_L5; 207 if (!strcmp(s, "F16")) return XK_F16; 208 if (!strcmp(s, "L6")) return XK_L6; 209 if (!strcmp(s, "F17")) return XK_F17; 210 if (!strcmp(s, "L7")) return XK_L7; 211 if (!strcmp(s, "F18")) return XK_F18; 212 if (!strcmp(s, "L8")) return XK_L8; 213 if (!strcmp(s, "F19")) return XK_F19; 214 if (!strcmp(s, "L9")) return XK_L9; 215 if (!strcmp(s, "F20")) return XK_F20; 216 if (!strcmp(s, "L10")) return XK_L10; 217 if (!strcmp(s, "F21")) return XK_F21; 218 if (!strcmp(s, "R1")) return XK_R1; 219 if (!strcmp(s, "F22")) return XK_F22; 220 if (!strcmp(s, "R2")) return XK_R2; 221 if (!strcmp(s, "F23")) return XK_F23; 222 if (!strcmp(s, "R3")) return XK_R3; 223 if (!strcmp(s, "F24")) return XK_F24; 224 if (!strcmp(s, "R4")) return XK_R4; 225 if (!strcmp(s, "F25")) return XK_F25; 226 if (!strcmp(s, "R5")) return XK_R5; 227 if (!strcmp(s, "F26")) return XK_F26; 228 if (!strcmp(s, "R6")) return XK_R6; 229 if (!strcmp(s, "F27")) return XK_F27; 230 if (!strcmp(s, "R7")) return XK_R7; 231 if (!strcmp(s, "F28")) return XK_F28; 232 if (!strcmp(s, "R8")) return XK_R8; 233 if (!strcmp(s, "F29")) return XK_F29; 234 if (!strcmp(s, "R9")) return XK_R9; 235 if (!strcmp(s, "F30")) return XK_F30; 236 if (!strcmp(s, "R10")) return XK_R10; 237 if (!strcmp(s, "F31")) return XK_F31; 238 if (!strcmp(s, "R11")) return XK_R11; 239 if (!strcmp(s, "F32")) return XK_F32; 240 if (!strcmp(s, "R12")) return XK_R12; 241 if (!strcmp(s, "F33")) return XK_F33; 242 if (!strcmp(s, "R13")) return XK_R13; 243 if (!strcmp(s, "F34")) return XK_F34; 244 if (!strcmp(s, "R14")) return XK_R14; 245 if (!strcmp(s, "F35")) return XK_F35; 246 if (!strcmp(s, "R15")) return XK_R15; 247 if (!strcmp(s, "Shift_L")) return XK_Shift_L; 248 if (!strcmp(s, "Shift_R")) return XK_Shift_R; 249 if (!strcmp(s, "Control_L")) return XK_Control_L; 250 if (!strcmp(s, "Control_R")) return XK_Control_R; 251 if (!strcmp(s, "Caps_Lock")) return XK_Caps_Lock; 252 if (!strcmp(s, "Shift_Lock")) return XK_Shift_Lock; 253 if (!strcmp(s, "Meta_L")) return XK_Meta_L; 254 if (!strcmp(s, "Meta_R")) return XK_Meta_R; 255 if (!strcmp(s, "Alt_L")) return XK_Alt_L; 256 if (!strcmp(s, "Alt_R")) return XK_Alt_R; 257 if (!strcmp(s, "Super_L")) return XK_Super_L; 258 if (!strcmp(s, "Super_R")) return XK_Super_R; 259 if (!strcmp(s, "Hyper_L")) return XK_Hyper_L; 260 if (!strcmp(s, "Hyper_R")) return XK_Hyper_R; 261#endif /* XK_MISCELLANY */ 262#ifdef XK_XKB_KEYS 263 if (!strcmp(s, "ISO_Lock")) return XK_ISO_Lock; 264 if (!strcmp(s, "ISO_Level2_Latch")) return XK_ISO_Level2_Latch; 265 if (!strcmp(s, "ISO_Level3_Shift")) return XK_ISO_Level3_Shift; 266 if (!strcmp(s, "ISO_Level3_Latch")) return XK_ISO_Level3_Latch; 267 if (!strcmp(s, "ISO_Level3_Lock")) return XK_ISO_Level3_Lock; 268 if (!strcmp(s, "ISO_Group_Shift")) return XK_ISO_Group_Shift; 269 if (!strcmp(s, "ISO_Group_Latch")) return XK_ISO_Group_Latch; 270 if (!strcmp(s, "ISO_Group_Lock")) return XK_ISO_Group_Lock; 271 if (!strcmp(s, "ISO_Next_Group")) return XK_ISO_Next_Group; 272 if (!strcmp(s, "ISO_Next_Group_Lock")) return XK_ISO_Next_Group_Lock; 273 if (!strcmp(s, "ISO_Prev_Group")) return XK_ISO_Prev_Group; 274 if (!strcmp(s, "ISO_Prev_Group_Lock")) return XK_ISO_Prev_Group_Lock; 275 if (!strcmp(s, "ISO_First_Group")) return XK_ISO_First_Group; 276 if (!strcmp(s, "ISO_First_Group_Lock")) return XK_ISO_First_Group_Lock; 277 if (!strcmp(s, "ISO_Last_Group")) return XK_ISO_Last_Group; 278 if (!strcmp(s, "ISO_Last_Group_Lock")) return XK_ISO_Last_Group_Lock; 279 if (!strcmp(s, "ISO_Left_Tab")) return XK_ISO_Left_Tab; 280 if (!strcmp(s, "ISO_Move_Line_Up")) return XK_ISO_Move_Line_Up; 281 if (!strcmp(s, "ISO_Move_Line_Down")) return XK_ISO_Move_Line_Down; 282 if (!strcmp(s, "ISO_Partial_Line_Up")) return XK_ISO_Partial_Line_Up; 283 if (!strcmp(s, "ISO_Partial_Line_Down")) return XK_ISO_Partial_Line_Down; 284 if (!strcmp(s, "ISO_Partial_Space_Left")) return XK_ISO_Partial_Space_Left; 285 if (!strcmp(s, "ISO_Partial_Space_Right")) return XK_ISO_Partial_Space_Right; 286 if (!strcmp(s, "ISO_Set_Margin_Left")) return XK_ISO_Set_Margin_Left; 287 if (!strcmp(s, "ISO_Set_Margin_Right")) return XK_ISO_Set_Margin_Right; 288 if (!strcmp(s, "ISO_Release_Margin_Left")) return XK_ISO_Release_Margin_Left; 289 if (!strcmp(s, "ISO_Release_Margin_Right")) return XK_ISO_Release_Margin_Right; 290 if (!strcmp(s, "ISO_Release_Both_Margins")) return XK_ISO_Release_Both_Margins; 291 if (!strcmp(s, "ISO_Fast_Cursor_Left")) return XK_ISO_Fast_Cursor_Left; 292 if (!strcmp(s, "ISO_Fast_Cursor_Right")) return XK_ISO_Fast_Cursor_Right; 293 if (!strcmp(s, "ISO_Fast_Cursor_Up")) return XK_ISO_Fast_Cursor_Up; 294 if (!strcmp(s, "ISO_Fast_Cursor_Down")) return XK_ISO_Fast_Cursor_Down; 295 if (!strcmp(s, "ISO_Continuous_Underline")) return XK_ISO_Continuous_Underline; 296 if (!strcmp(s, "ISO_Discontinuous_Underline")) return XK_ISO_Discontinuous_Underline; 297 if (!strcmp(s, "ISO_Emphasize")) return XK_ISO_Emphasize; 298 if (!strcmp(s, "ISO_Center_Object")) return XK_ISO_Center_Object; 299 if (!strcmp(s, "ISO_Enter")) return XK_ISO_Enter; 300 if (!strcmp(s, "dead_grave")) return XK_dead_grave; 301 if (!strcmp(s, "dead_acute")) return XK_dead_acute; 302 if (!strcmp(s, "dead_circumflex")) return XK_dead_circumflex; 303 if (!strcmp(s, "dead_tilde")) return XK_dead_tilde; 304 if (!strcmp(s, "dead_macron")) return XK_dead_macron; 305 if (!strcmp(s, "dead_breve")) return XK_dead_breve; 306 if (!strcmp(s, "dead_abovedot")) return XK_dead_abovedot; 307 if (!strcmp(s, "dead_diaeresis")) return XK_dead_diaeresis; 308 if (!strcmp(s, "dead_abovering")) return XK_dead_abovering; 309 if (!strcmp(s, "dead_doubleacute")) return XK_dead_doubleacute; 310 if (!strcmp(s, "dead_caron")) return XK_dead_caron; 311 if (!strcmp(s, "dead_cedilla")) return XK_dead_cedilla; 312 if (!strcmp(s, "dead_ogonek")) return XK_dead_ogonek; 313 if (!strcmp(s, "dead_iota")) return XK_dead_iota; 314 if (!strcmp(s, "dead_voiced_sound")) return XK_dead_voiced_sound; 315 if (!strcmp(s, "dead_semivoiced_sound")) return XK_dead_semivoiced_sound; 316 if (!strcmp(s, "dead_belowdot")) return XK_dead_belowdot; 317 if (!strcmp(s, "First_Virtual_Screen")) return XK_First_Virtual_Screen; 318 if (!strcmp(s, "Prev_Virtual_Screen")) return XK_Prev_Virtual_Screen; 319 if (!strcmp(s, "Next_Virtual_Screen")) return XK_Next_Virtual_Screen; 320 if (!strcmp(s, "Last_Virtual_Screen")) return XK_Last_Virtual_Screen; 321 if (!strcmp(s, "Terminate_Server")) return XK_Terminate_Server; 322 if (!strcmp(s, "AccessX_Enable")) return XK_AccessX_Enable; 323 if (!strcmp(s, "AccessX_Feedback_Enable")) return XK_AccessX_Feedback_Enable; 324 if (!strcmp(s, "RepeatKeys_Enable")) return XK_RepeatKeys_Enable; 325 if (!strcmp(s, "SlowKeys_Enable")) return XK_SlowKeys_Enable; 326 if (!strcmp(s, "BounceKeys_Enable")) return XK_BounceKeys_Enable; 327 if (!strcmp(s, "StickyKeys_Enable")) return XK_StickyKeys_Enable; 328 if (!strcmp(s, "MouseKeys_Enable")) return XK_MouseKeys_Enable; 329 if (!strcmp(s, "MouseKeys_Accel_Enable")) return XK_MouseKeys_Accel_Enable; 330 if (!strcmp(s, "Overlay1_Enable")) return XK_Overlay1_Enable; 331 if (!strcmp(s, "Overlay2_Enable")) return XK_Overlay2_Enable; 332 if (!strcmp(s, "AudibleBell_Enable")) return XK_AudibleBell_Enable; 333 if (!strcmp(s, "Pointer_Left")) return XK_Pointer_Left; 334 if (!strcmp(s, "Pointer_Right")) return XK_Pointer_Right; 335 if (!strcmp(s, "Pointer_Up")) return XK_Pointer_Up; 336 if (!strcmp(s, "Pointer_Down")) return XK_Pointer_Down; 337 if (!strcmp(s, "Pointer_UpLeft")) return XK_Pointer_UpLeft; 338 if (!strcmp(s, "Pointer_UpRight")) return XK_Pointer_UpRight; 339 if (!strcmp(s, "Pointer_DownLeft")) return XK_Pointer_DownLeft; 340 if (!strcmp(s, "Pointer_DownRight")) return XK_Pointer_DownRight; 341 if (!strcmp(s, "Pointer_Button_Dflt")) return XK_Pointer_Button_Dflt; 342 if (!strcmp(s, "Pointer_Button1")) return XK_Pointer_Button1; 343 if (!strcmp(s, "Pointer_Button2")) return XK_Pointer_Button2; 344 if (!strcmp(s, "Pointer_Button3")) return XK_Pointer_Button3; 345 if (!strcmp(s, "Pointer_Button4")) return XK_Pointer_Button4; 346 if (!strcmp(s, "Pointer_Button5")) return XK_Pointer_Button5; 347 if (!strcmp(s, "Pointer_DblClick_Dflt")) return XK_Pointer_DblClick_Dflt; 348 if (!strcmp(s, "Pointer_DblClick1")) return XK_Pointer_DblClick1; 349 if (!strcmp(s, "Pointer_DblClick2")) return XK_Pointer_DblClick2; 350 if (!strcmp(s, "Pointer_DblClick3")) return XK_Pointer_DblClick3; 351 if (!strcmp(s, "Pointer_DblClick4")) return XK_Pointer_DblClick4; 352 if (!strcmp(s, "Pointer_DblClick5")) return XK_Pointer_DblClick5; 353 if (!strcmp(s, "Pointer_Drag_Dflt")) return XK_Pointer_Drag_Dflt; 354 if (!strcmp(s, "Pointer_Drag1")) return XK_Pointer_Drag1; 355 if (!strcmp(s, "Pointer_Drag2")) return XK_Pointer_Drag2; 356 if (!strcmp(s, "Pointer_Drag3")) return XK_Pointer_Drag3; 357 if (!strcmp(s, "Pointer_Drag4")) return XK_Pointer_Drag4; 358 if (!strcmp(s, "Pointer_Drag5")) return XK_Pointer_Drag5; 359 if (!strcmp(s, "Pointer_EnableKeys")) return XK_Pointer_EnableKeys; 360 if (!strcmp(s, "Pointer_Accelerate")) return XK_Pointer_Accelerate; 361 if (!strcmp(s, "Pointer_DfltBtnNext")) return XK_Pointer_DfltBtnNext; 362 if (!strcmp(s, "Pointer_DfltBtnPrev")) return XK_Pointer_DfltBtnPrev; 363#endif 364#ifdef XK_3270 365 if (!strcmp(s, "3270_Duplicate")) return XK_3270_Duplicate; 366 if (!strcmp(s, "3270_FieldMark")) return XK_3270_FieldMark; 367 if (!strcmp(s, "3270_Right2")) return XK_3270_Right2; 368 if (!strcmp(s, "3270_Left2")) return XK_3270_Left2; 369 if (!strcmp(s, "3270_BackTab")) return XK_3270_BackTab; 370 if (!strcmp(s, "3270_EraseEOF")) return XK_3270_EraseEOF; 371 if (!strcmp(s, "3270_EraseInput")) return XK_3270_EraseInput; 372 if (!strcmp(s, "3270_Reset")) return XK_3270_Reset; 373 if (!strcmp(s, "3270_Quit")) return XK_3270_Quit; 374 if (!strcmp(s, "3270_PA1")) return XK_3270_PA1; 375 if (!strcmp(s, "3270_PA2")) return XK_3270_PA2; 376 if (!strcmp(s, "3270_PA3")) return XK_3270_PA3; 377 if (!strcmp(s, "3270_Test")) return XK_3270_Test; 378 if (!strcmp(s, "3270_Attn")) return XK_3270_Attn; 379 if (!strcmp(s, "3270_CursorBlink")) return XK_3270_CursorBlink; 380 if (!strcmp(s, "3270_AltCursor")) return XK_3270_AltCursor; 381 if (!strcmp(s, "3270_KeyClick")) return XK_3270_KeyClick; 382 if (!strcmp(s, "3270_Jump")) return XK_3270_Jump; 383 if (!strcmp(s, "3270_Ident")) return XK_3270_Ident; 384 if (!strcmp(s, "3270_Rule")) return XK_3270_Rule; 385 if (!strcmp(s, "3270_Copy")) return XK_3270_Copy; 386 if (!strcmp(s, "3270_Play")) return XK_3270_Play; 387 if (!strcmp(s, "3270_Setup")) return XK_3270_Setup; 388 if (!strcmp(s, "3270_Record")) return XK_3270_Record; 389 if (!strcmp(s, "3270_ChangeScreen")) return XK_3270_ChangeScreen; 390 if (!strcmp(s, "3270_DeleteWord")) return XK_3270_DeleteWord; 391 if (!strcmp(s, "3270_ExSelect")) return XK_3270_ExSelect; 392 if (!strcmp(s, "3270_CursorSelect")) return XK_3270_CursorSelect; 393 if (!strcmp(s, "3270_PrintScreen")) return XK_3270_PrintScreen; 394 if (!strcmp(s, "3270_Enter")) return XK_3270_Enter; 395#endif 396#ifdef XK_LATIN1 397 if (!strcmp(s, "space")) return XK_space; 398 if (!strcmp(s, "exclam")) return XK_exclam; 399 if (!strcmp(s, "quotedbl")) return XK_quotedbl; 400 if (!strcmp(s, "numbersign")) return XK_numbersign; 401 if (!strcmp(s, "dollar")) return XK_dollar; 402 if (!strcmp(s, "percent")) return XK_percent; 403 if (!strcmp(s, "ampersand")) return XK_ampersand; 404 if (!strcmp(s, "apostrophe")) return XK_apostrophe; 405 if (!strcmp(s, "quoteright")) return XK_quoteright; 406 if (!strcmp(s, "parenleft")) return XK_parenleft; 407 if (!strcmp(s, "parenright")) return XK_parenright; 408 if (!strcmp(s, "asterisk")) return XK_asterisk; 409 if (!strcmp(s, "plus")) return XK_plus; 410 if (!strcmp(s, "comma")) return XK_comma; 411 if (!strcmp(s, "minus")) return XK_minus; 412 if (!strcmp(s, "period")) return XK_period; 413 if (!strcmp(s, "slash")) return XK_slash; 414 if (!strcmp(s, "0")) return XK_0; 415 if (!strcmp(s, "1")) return XK_1; 416 if (!strcmp(s, "2")) return XK_2; 417 if (!strcmp(s, "3")) return XK_3; 418 if (!strcmp(s, "4")) return XK_4; 419 if (!strcmp(s, "5")) return XK_5; 420 if (!strcmp(s, "6")) return XK_6; 421 if (!strcmp(s, "7")) return XK_7; 422 if (!strcmp(s, "8")) return XK_8; 423 if (!strcmp(s, "9")) return XK_9; 424 if (!strcmp(s, "colon")) return XK_colon; 425 if (!strcmp(s, "semicolon")) return XK_semicolon; 426 if (!strcmp(s, "less")) return XK_less; 427 if (!strcmp(s, "equal")) return XK_equal; 428 if (!strcmp(s, "greater")) return XK_greater; 429 if (!strcmp(s, "question")) return XK_question; 430 if (!strcmp(s, "at")) return XK_at; 431 if (!strcmp(s, "A")) return XK_A; 432 if (!strcmp(s, "B")) return XK_B; 433 if (!strcmp(s, "C")) return XK_C; 434 if (!strcmp(s, "D")) return XK_D; 435 if (!strcmp(s, "E")) return XK_E; 436 if (!strcmp(s, "F")) return XK_F; 437 if (!strcmp(s, "G")) return XK_G; 438 if (!strcmp(s, "H")) return XK_H; 439 if (!strcmp(s, "I")) return XK_I; 440 if (!strcmp(s, "J")) return XK_J; 441 if (!strcmp(s, "K")) return XK_K; 442 if (!strcmp(s, "L")) return XK_L; 443 if (!strcmp(s, "M")) return XK_M; 444 if (!strcmp(s, "N")) return XK_N; 445 if (!strcmp(s, "O")) return XK_O; 446 if (!strcmp(s, "P")) return XK_P; 447 if (!strcmp(s, "Q")) return XK_Q; 448 if (!strcmp(s, "R")) return XK_R; 449 if (!strcmp(s, "S")) return XK_S; 450 if (!strcmp(s, "T")) return XK_T; 451 if (!strcmp(s, "U")) return XK_U; 452 if (!strcmp(s, "V")) return XK_V; 453 if (!strcmp(s, "W")) return XK_W; 454 if (!strcmp(s, "X")) return XK_X; 455 if (!strcmp(s, "Y")) return XK_Y; 456 if (!strcmp(s, "Z")) return XK_Z; 457 if (!strcmp(s, "bracketleft")) return XK_bracketleft; 458 if (!strcmp(s, "backslash")) return XK_backslash; 459 if (!strcmp(s, "bracketright")) return XK_bracketright; 460 if (!strcmp(s, "asciicircum")) return XK_asciicircum; 461 if (!strcmp(s, "underscore")) return XK_underscore; 462 if (!strcmp(s, "grave")) return XK_grave; 463 if (!strcmp(s, "quoteleft")) return XK_quoteleft; 464 if (!strcmp(s, "a")) return XK_a; 465 if (!strcmp(s, "b")) return XK_b; 466 if (!strcmp(s, "c")) return XK_c; 467 if (!strcmp(s, "d")) return XK_d; 468 if (!strcmp(s, "e")) return XK_e; 469 if (!strcmp(s, "f")) return XK_f; 470 if (!strcmp(s, "g")) return XK_g; 471 if (!strcmp(s, "h")) return XK_h; 472 if (!strcmp(s, "i")) return XK_i; 473 if (!strcmp(s, "j")) return XK_j; 474 if (!strcmp(s, "k")) return XK_k; 475 if (!strcmp(s, "l")) return XK_l; 476 if (!strcmp(s, "m")) return XK_m; 477 if (!strcmp(s, "n")) return XK_n; 478 if (!strcmp(s, "o")) return XK_o; 479 if (!strcmp(s, "p")) return XK_p; 480 if (!strcmp(s, "q")) return XK_q; 481 if (!strcmp(s, "r")) return XK_r; 482 if (!strcmp(s, "s")) return XK_s; 483 if (!strcmp(s, "t")) return XK_t; 484 if (!strcmp(s, "u")) return XK_u; 485 if (!strcmp(s, "v")) return XK_v; 486 if (!strcmp(s, "w")) return XK_w; 487 if (!strcmp(s, "x")) return XK_x; 488 if (!strcmp(s, "y")) return XK_y; 489 if (!strcmp(s, "z")) return XK_z; 490 if (!strcmp(s, "braceleft")) return XK_braceleft; 491 if (!strcmp(s, "bar")) return XK_bar; 492 if (!strcmp(s, "braceright")) return XK_braceright; 493 if (!strcmp(s, "asciitilde")) return XK_asciitilde; 494 if (!strcmp(s, "nobreakspace")) return XK_nobreakspace; 495 if (!strcmp(s, "exclamdown")) return XK_exclamdown; 496 if (!strcmp(s, "cent")) return XK_cent; 497 if (!strcmp(s, "sterling")) return XK_sterling; 498 if (!strcmp(s, "currency")) return XK_currency; 499 if (!strcmp(s, "yen")) return XK_yen; 500 if (!strcmp(s, "brokenbar")) return XK_brokenbar; 501 if (!strcmp(s, "section")) return XK_section; 502 if (!strcmp(s, "diaeresis")) return XK_diaeresis; 503 if (!strcmp(s, "copyright")) return XK_copyright; 504 if (!strcmp(s, "ordfeminine")) return XK_ordfeminine; 505 if (!strcmp(s, "guillemotleft")) return XK_guillemotleft; 506 if (!strcmp(s, "notsign")) return XK_notsign; 507 if (!strcmp(s, "hyphen")) return XK_hyphen; 508 if (!strcmp(s, "registered")) return XK_registered; 509 if (!strcmp(s, "macron")) return XK_macron; 510 if (!strcmp(s, "degree")) return XK_degree; 511 if (!strcmp(s, "plusminus")) return XK_plusminus; 512 if (!strcmp(s, "twosuperior")) return XK_twosuperior; 513 if (!strcmp(s, "threesuperior")) return XK_threesuperior; 514 if (!strcmp(s, "acute")) return XK_acute; 515 if (!strcmp(s, "mu")) return XK_mu; 516 if (!strcmp(s, "paragraph")) return XK_paragraph; 517 if (!strcmp(s, "periodcentered")) return XK_periodcentered; 518 if (!strcmp(s, "cedilla")) return XK_cedilla; 519 if (!strcmp(s, "onesuperior")) return XK_onesuperior; 520 if (!strcmp(s, "masculine")) return XK_masculine; 521 if (!strcmp(s, "guillemotright")) return XK_guillemotright; 522 if (!strcmp(s, "onequarter")) return XK_onequarter; 523 if (!strcmp(s, "onehalf")) return XK_onehalf; 524 if (!strcmp(s, "threequarters")) return XK_threequarters; 525 if (!strcmp(s, "questiondown")) return XK_questiondown; 526 if (!strcmp(s, "Agrave")) return XK_Agrave; 527 if (!strcmp(s, "Aacute")) return XK_Aacute; 528 if (!strcmp(s, "Acircumflex")) return XK_Acircumflex; 529 if (!strcmp(s, "Atilde")) return XK_Atilde; 530 if (!strcmp(s, "Adiaeresis")) return XK_Adiaeresis; 531 if (!strcmp(s, "Aring")) return XK_Aring; 532 if (!strcmp(s, "AE")) return XK_AE; 533 if (!strcmp(s, "Ccedilla")) return XK_Ccedilla; 534 if (!strcmp(s, "Egrave")) return XK_Egrave; 535 if (!strcmp(s, "Eacute")) return XK_Eacute; 536 if (!strcmp(s, "Ecircumflex")) return XK_Ecircumflex; 537 if (!strcmp(s, "Ediaeresis")) return XK_Ediaeresis; 538 if (!strcmp(s, "Igrave")) return XK_Igrave; 539 if (!strcmp(s, "Iacute")) return XK_Iacute; 540 if (!strcmp(s, "Icircumflex")) return XK_Icircumflex; 541 if (!strcmp(s, "Idiaeresis")) return XK_Idiaeresis; 542 if (!strcmp(s, "ETH")) return XK_ETH; 543 if (!strcmp(s, "Eth")) return XK_Eth; 544 if (!strcmp(s, "Ntilde")) return XK_Ntilde; 545 if (!strcmp(s, "Ograve")) return XK_Ograve; 546 if (!strcmp(s, "Oacute")) return XK_Oacute; 547 if (!strcmp(s, "Ocircumflex")) return XK_Ocircumflex; 548 if (!strcmp(s, "Otilde")) return XK_Otilde; 549 if (!strcmp(s, "Odiaeresis")) return XK_Odiaeresis; 550 if (!strcmp(s, "multiply")) return XK_multiply; 551 if (!strcmp(s, "Ooblique")) return XK_Ooblique; 552 if (!strcmp(s, "Ugrave")) return XK_Ugrave; 553 if (!strcmp(s, "Uacute")) return XK_Uacute; 554 if (!strcmp(s, "Ucircumflex")) return XK_Ucircumflex; 555 if (!strcmp(s, "Udiaeresis")) return XK_Udiaeresis; 556 if (!strcmp(s, "Yacute")) return XK_Yacute; 557 if (!strcmp(s, "THORN")) return XK_THORN; 558 if (!strcmp(s, "Thorn")) return XK_Thorn; 559 if (!strcmp(s, "ssharp")) return XK_ssharp; 560 if (!strcmp(s, "agrave")) return XK_agrave; 561 if (!strcmp(s, "aacute")) return XK_aacute; 562 if (!strcmp(s, "acircumflex")) return XK_acircumflex; 563 if (!strcmp(s, "atilde")) return XK_atilde; 564 if (!strcmp(s, "adiaeresis")) return XK_adiaeresis; 565 if (!strcmp(s, "aring")) return XK_aring; 566 if (!strcmp(s, "ae")) return XK_ae; 567 if (!strcmp(s, "ccedilla")) return XK_ccedilla; 568 if (!strcmp(s, "egrave")) return XK_egrave; 569 if (!strcmp(s, "eacute")) return XK_eacute; 570 if (!strcmp(s, "ecircumflex")) return XK_ecircumflex; 571 if (!strcmp(s, "ediaeresis")) return XK_ediaeresis; 572 if (!strcmp(s, "igrave")) return XK_igrave; 573 if (!strcmp(s, "iacute")) return XK_iacute; 574 if (!strcmp(s, "icircumflex")) return XK_icircumflex; 575 if (!strcmp(s, "idiaeresis")) return XK_idiaeresis; 576 if (!strcmp(s, "eth")) return XK_eth; 577 if (!strcmp(s, "ntilde")) return XK_ntilde; 578 if (!strcmp(s, "ograve")) return XK_ograve; 579 if (!strcmp(s, "oacute")) return XK_oacute; 580 if (!strcmp(s, "ocircumflex")) return XK_ocircumflex; 581 if (!strcmp(s, "otilde")) return XK_otilde; 582 if (!strcmp(s, "odiaeresis")) return XK_odiaeresis; 583 if (!strcmp(s, "division")) return XK_division; 584 if (!strcmp(s, "oslash")) return XK_oslash; 585 if (!strcmp(s, "ugrave")) return XK_ugrave; 586 if (!strcmp(s, "uacute")) return XK_uacute; 587 if (!strcmp(s, "ucircumflex")) return XK_ucircumflex; 588 if (!strcmp(s, "udiaeresis")) return XK_udiaeresis; 589 if (!strcmp(s, "yacute")) return XK_yacute; 590 if (!strcmp(s, "thorn")) return XK_thorn; 591 if (!strcmp(s, "ydiaeresis")) return XK_ydiaeresis; 592#endif /* XK_LATIN1 */ 593#ifdef XK_LATIN2 594 if (!strcmp(s, "Aogonek")) return XK_Aogonek; 595 if (!strcmp(s, "breve")) return XK_breve; 596 if (!strcmp(s, "Lstroke")) return XK_Lstroke; 597 if (!strcmp(s, "Lcaron")) return XK_Lcaron; 598 if (!strcmp(s, "Sacute")) return XK_Sacute; 599 if (!strcmp(s, "Scaron")) return XK_Scaron; 600 if (!strcmp(s, "Scedilla")) return XK_Scedilla; 601 if (!strcmp(s, "Tcaron")) return XK_Tcaron; 602 if (!strcmp(s, "Zacute")) return XK_Zacute; 603 if (!strcmp(s, "Zcaron")) return XK_Zcaron; 604 if (!strcmp(s, "Zabovedot")) return XK_Zabovedot; 605 if (!strcmp(s, "aogonek")) return XK_aogonek; 606 if (!strcmp(s, "ogonek")) return XK_ogonek; 607 if (!strcmp(s, "lstroke")) return XK_lstroke; 608 if (!strcmp(s, "lcaron")) return XK_lcaron; 609 if (!strcmp(s, "sacute")) return XK_sacute; 610 if (!strcmp(s, "caron")) return XK_caron; 611 if (!strcmp(s, "scaron")) return XK_scaron; 612 if (!strcmp(s, "scedilla")) return XK_scedilla; 613 if (!strcmp(s, "tcaron")) return XK_tcaron; 614 if (!strcmp(s, "zacute")) return XK_zacute; 615 if (!strcmp(s, "doubleacute")) return XK_doubleacute; 616 if (!strcmp(s, "zcaron")) return XK_zcaron; 617 if (!strcmp(s, "zabovedot")) return XK_zabovedot; 618 if (!strcmp(s, "Racute")) return XK_Racute; 619 if (!strcmp(s, "Abreve")) return XK_Abreve; 620 if (!strcmp(s, "Lacute")) return XK_Lacute; 621 if (!strcmp(s, "Cacute")) return XK_Cacute; 622 if (!strcmp(s, "Ccaron")) return XK_Ccaron; 623 if (!strcmp(s, "Eogonek")) return XK_Eogonek; 624 if (!strcmp(s, "Ecaron")) return XK_Ecaron; 625 if (!strcmp(s, "Dcaron")) return XK_Dcaron; 626 if (!strcmp(s, "Dstroke")) return XK_Dstroke; 627 if (!strcmp(s, "Nacute")) return XK_Nacute; 628 if (!strcmp(s, "Ncaron")) return XK_Ncaron; 629 if (!strcmp(s, "Odoubleacute")) return XK_Odoubleacute; 630 if (!strcmp(s, "Rcaron")) return XK_Rcaron; 631 if (!strcmp(s, "Uring")) return XK_Uring; 632 if (!strcmp(s, "Udoubleacute")) return XK_Udoubleacute; 633 if (!strcmp(s, "Tcedilla")) return XK_Tcedilla; 634 if (!strcmp(s, "racute")) return XK_racute; 635 if (!strcmp(s, "abreve")) return XK_abreve; 636 if (!strcmp(s, "lacute")) return XK_lacute; 637 if (!strcmp(s, "cacute")) return XK_cacute; 638 if (!strcmp(s, "ccaron")) return XK_ccaron; 639 if (!strcmp(s, "eogonek")) return XK_eogonek; 640 if (!strcmp(s, "ecaron")) return XK_ecaron; 641 if (!strcmp(s, "dcaron")) return XK_dcaron; 642 if (!strcmp(s, "dstroke")) return XK_dstroke; 643 if (!strcmp(s, "nacute")) return XK_nacute; 644 if (!strcmp(s, "ncaron")) return XK_ncaron; 645 if (!strcmp(s, "odoubleacute")) return XK_odoubleacute; 646 if (!strcmp(s, "udoubleacute")) return XK_udoubleacute; 647 if (!strcmp(s, "rcaron")) return XK_rcaron; 648 if (!strcmp(s, "uring")) return XK_uring; 649 if (!strcmp(s, "tcedilla")) return XK_tcedilla; 650 if (!strcmp(s, "abovedot")) return XK_abovedot; 651#endif /* XK_LATIN2 */ 652#ifdef XK_LATIN3 653 if (!strcmp(s, "Hstroke")) return XK_Hstroke; 654 if (!strcmp(s, "Hcircumflex")) return XK_Hcircumflex; 655 if (!strcmp(s, "Iabovedot")) return XK_Iabovedot; 656 if (!strcmp(s, "Gbreve")) return XK_Gbreve; 657 if (!strcmp(s, "Jcircumflex")) return XK_Jcircumflex; 658 if (!strcmp(s, "hstroke")) return XK_hstroke; 659 if (!strcmp(s, "hcircumflex")) return XK_hcircumflex; 660 if (!strcmp(s, "idotless")) return XK_idotless; 661 if (!strcmp(s, "gbreve")) return XK_gbreve; 662 if (!strcmp(s, "jcircumflex")) return XK_jcircumflex; 663 if (!strcmp(s, "Cabovedot")) return XK_Cabovedot; 664 if (!strcmp(s, "Ccircumflex")) return XK_Ccircumflex; 665 if (!strcmp(s, "Gabovedot")) return XK_Gabovedot; 666 if (!strcmp(s, "Gcircumflex")) return XK_Gcircumflex; 667 if (!strcmp(s, "Ubreve")) return XK_Ubreve; 668 if (!strcmp(s, "Scircumflex")) return XK_Scircumflex; 669 if (!strcmp(s, "cabovedot")) return XK_cabovedot; 670 if (!strcmp(s, "ccircumflex")) return XK_ccircumflex; 671 if (!strcmp(s, "gabovedot")) return XK_gabovedot; 672 if (!strcmp(s, "gcircumflex")) return XK_gcircumflex; 673 if (!strcmp(s, "ubreve")) return XK_ubreve; 674 if (!strcmp(s, "scircumflex")) return XK_scircumflex; 675#endif /* XK_LATIN3 */ 676#ifdef XK_LATIN4 677 if (!strcmp(s, "kra")) return XK_kra; 678 if (!strcmp(s, "kappa")) return XK_kappa; 679 if (!strcmp(s, "Rcedilla")) return XK_Rcedilla; 680 if (!strcmp(s, "Itilde")) return XK_Itilde; 681 if (!strcmp(s, "Lcedilla")) return XK_Lcedilla; 682 if (!strcmp(s, "Emacron")) return XK_Emacron; 683 if (!strcmp(s, "Gcedilla")) return XK_Gcedilla; 684 if (!strcmp(s, "Tslash")) return XK_Tslash; 685 if (!strcmp(s, "rcedilla")) return XK_rcedilla; 686 if (!strcmp(s, "itilde")) return XK_itilde; 687 if (!strcmp(s, "lcedilla")) return XK_lcedilla; 688 if (!strcmp(s, "emacron")) return XK_emacron; 689 if (!strcmp(s, "gcedilla")) return XK_gcedilla; 690 if (!strcmp(s, "tslash")) return XK_tslash; 691 if (!strcmp(s, "ENG")) return XK_ENG; 692 if (!strcmp(s, "eng")) return XK_eng; 693 if (!strcmp(s, "Amacron")) return XK_Amacron; 694 if (!strcmp(s, "Iogonek")) return XK_Iogonek; 695 if (!strcmp(s, "Eabovedot")) return XK_Eabovedot; 696 if (!strcmp(s, "Imacron")) return XK_Imacron; 697 if (!strcmp(s, "Ncedilla")) return XK_Ncedilla; 698 if (!strcmp(s, "Omacron")) return XK_Omacron; 699 if (!strcmp(s, "Kcedilla")) return XK_Kcedilla; 700 if (!strcmp(s, "Uogonek")) return XK_Uogonek; 701 if (!strcmp(s, "Utilde")) return XK_Utilde; 702 if (!strcmp(s, "Umacron")) return XK_Umacron; 703 if (!strcmp(s, "amacron")) return XK_amacron; 704 if (!strcmp(s, "iogonek")) return XK_iogonek; 705 if (!strcmp(s, "eabovedot")) return XK_eabovedot; 706 if (!strcmp(s, "imacron")) return XK_imacron; 707 if (!strcmp(s, "ncedilla")) return XK_ncedilla; 708 if (!strcmp(s, "omacron")) return XK_omacron; 709 if (!strcmp(s, "kcedilla")) return XK_kcedilla; 710 if (!strcmp(s, "uogonek")) return XK_uogonek; 711 if (!strcmp(s, "utilde")) return XK_utilde; 712 if (!strcmp(s, "umacron")) return XK_umacron; 713#endif /* XK_LATIN4 */ 714#ifdef XK_KATAKANA 715 if (!strcmp(s, "overline")) return XK_overline; 716 if (!strcmp(s, "kana_fullstop")) return XK_kana_fullstop; 717 if (!strcmp(s, "kana_openingbracket")) return XK_kana_openingbracket; 718 if (!strcmp(s, "kana_closingbracket")) return XK_kana_closingbracket; 719 if (!strcmp(s, "kana_comma")) return XK_kana_comma; 720 if (!strcmp(s, "kana_conjunctive")) return XK_kana_conjunctive; 721 if (!strcmp(s, "kana_middledot")) return XK_kana_middledot; 722 if (!strcmp(s, "kana_WO")) return XK_kana_WO; 723 if (!strcmp(s, "kana_a")) return XK_kana_a; 724 if (!strcmp(s, "kana_i")) return XK_kana_i; 725 if (!strcmp(s, "kana_u")) return XK_kana_u; 726 if (!strcmp(s, "kana_e")) return XK_kana_e; 727 if (!strcmp(s, "kana_o")) return XK_kana_o; 728 if (!strcmp(s, "kana_ya")) return XK_kana_ya; 729 if (!strcmp(s, "kana_yu")) return XK_kana_yu; 730 if (!strcmp(s, "kana_yo")) return XK_kana_yo; 731 if (!strcmp(s, "kana_tsu")) return XK_kana_tsu; 732 if (!strcmp(s, "kana_tu")) return XK_kana_tu; 733 if (!strcmp(s, "prolongedsound")) return XK_prolongedsound; 734 if (!strcmp(s, "kana_A")) return XK_kana_A; 735 if (!strcmp(s, "kana_I")) return XK_kana_I; 736 if (!strcmp(s, "kana_U")) return XK_kana_U; 737 if (!strcmp(s, "kana_E")) return XK_kana_E; 738 if (!strcmp(s, "kana_O")) return XK_kana_O; 739 if (!strcmp(s, "kana_KA")) return XK_kana_KA; 740 if (!strcmp(s, "kana_KI")) return XK_kana_KI; 741 if (!strcmp(s, "kana_KU")) return XK_kana_KU; 742 if (!strcmp(s, "kana_KE")) return XK_kana_KE; 743 if (!strcmp(s, "kana_KO")) return XK_kana_KO; 744 if (!strcmp(s, "kana_SA")) return XK_kana_SA; 745 if (!strcmp(s, "kana_SHI")) return XK_kana_SHI; 746 if (!strcmp(s, "kana_SU")) return XK_kana_SU; 747 if (!strcmp(s, "kana_SE")) return XK_kana_SE; 748 if (!strcmp(s, "kana_SO")) return XK_kana_SO; 749 if (!strcmp(s, "kana_TA")) return XK_kana_TA; 750 if (!strcmp(s, "kana_CHI")) return XK_kana_CHI; 751 if (!strcmp(s, "kana_TI")) return XK_kana_TI; 752 if (!strcmp(s, "kana_TSU")) return XK_kana_TSU; 753 if (!strcmp(s, "kana_TU")) return XK_kana_TU; 754 if (!strcmp(s, "kana_TE")) return XK_kana_TE; 755 if (!strcmp(s, "kana_TO")) return XK_kana_TO; 756 if (!strcmp(s, "kana_NA")) return XK_kana_NA; 757 if (!strcmp(s, "kana_NI")) return XK_kana_NI; 758 if (!strcmp(s, "kana_NU")) return XK_kana_NU; 759 if (!strcmp(s, "kana_NE")) return XK_kana_NE; 760 if (!strcmp(s, "kana_NO")) return XK_kana_NO; 761 if (!strcmp(s, "kana_HA")) return XK_kana_HA; 762 if (!strcmp(s, "kana_HI")) return XK_kana_HI; 763 if (!strcmp(s, "kana_FU")) return XK_kana_FU; 764 if (!strcmp(s, "kana_HU")) return XK_kana_HU; 765 if (!strcmp(s, "kana_HE")) return XK_kana_HE; 766 if (!strcmp(s, "kana_HO")) return XK_kana_HO; 767 if (!strcmp(s, "kana_MA")) return XK_kana_MA; 768 if (!strcmp(s, "kana_MI")) return XK_kana_MI; 769 if (!strcmp(s, "kana_MU")) return XK_kana_MU; 770 if (!strcmp(s, "kana_ME")) return XK_kana_ME; 771 if (!strcmp(s, "kana_MO")) return XK_kana_MO; 772 if (!strcmp(s, "kana_YA")) return XK_kana_YA; 773 if (!strcmp(s, "kana_YU")) return XK_kana_YU; 774 if (!strcmp(s, "kana_YO")) return XK_kana_YO; 775 if (!strcmp(s, "kana_RA")) return XK_kana_RA; 776 if (!strcmp(s, "kana_RI")) return XK_kana_RI; 777 if (!strcmp(s, "kana_RU")) return XK_kana_RU; 778 if (!strcmp(s, "kana_RE")) return XK_kana_RE; 779 if (!strcmp(s, "kana_RO")) return XK_kana_RO; 780 if (!strcmp(s, "kana_WA")) return XK_kana_WA; 781 if (!strcmp(s, "kana_N")) return XK_kana_N; 782 if (!strcmp(s, "voicedsound")) return XK_voicedsound; 783 if (!strcmp(s, "semivoicedsound")) return XK_semivoicedsound; 784 if (!strcmp(s, "kana_switch")) return XK_kana_switch; 785#endif /* XK_KATAKANA */ 786#ifdef XK_ARABIC 787 if (!strcmp(s, "Arabic_comma")) return XK_Arabic_comma; 788 if (!strcmp(s, "Arabic_semicolon")) return XK_Arabic_semicolon; 789 if (!strcmp(s, "Arabic_question_mark")) return XK_Arabic_question_mark; 790 if (!strcmp(s, "Arabic_hamza")) return XK_Arabic_hamza; 791 if (!strcmp(s, "Arabic_maddaonalef")) return XK_Arabic_maddaonalef; 792 if (!strcmp(s, "Arabic_hamzaonalef")) return XK_Arabic_hamzaonalef; 793 if (!strcmp(s, "Arabic_hamzaonwaw")) return XK_Arabic_hamzaonwaw; 794 if (!strcmp(s, "Arabic_hamzaunderalef")) return XK_Arabic_hamzaunderalef; 795 if (!strcmp(s, "Arabic_hamzaonyeh")) return XK_Arabic_hamzaonyeh; 796 if (!strcmp(s, "Arabic_alef")) return XK_Arabic_alef; 797 if (!strcmp(s, "Arabic_beh")) return XK_Arabic_beh; 798 if (!strcmp(s, "Arabic_tehmarbuta")) return XK_Arabic_tehmarbuta; 799 if (!strcmp(s, "Arabic_teh")) return XK_Arabic_teh; 800 if (!strcmp(s, "Arabic_theh")) return XK_Arabic_theh; 801 if (!strcmp(s, "Arabic_jeem")) return XK_Arabic_jeem; 802 if (!strcmp(s, "Arabic_hah")) return XK_Arabic_hah; 803 if (!strcmp(s, "Arabic_khah")) return XK_Arabic_khah; 804 if (!strcmp(s, "Arabic_dal")) return XK_Arabic_dal; 805 if (!strcmp(s, "Arabic_thal")) return XK_Arabic_thal; 806 if (!strcmp(s, "Arabic_ra")) return XK_Arabic_ra; 807 if (!strcmp(s, "Arabic_zain")) return XK_Arabic_zain; 808 if (!strcmp(s, "Arabic_seen")) return XK_Arabic_seen; 809 if (!strcmp(s, "Arabic_sheen")) return XK_Arabic_sheen; 810 if (!strcmp(s, "Arabic_sad")) return XK_Arabic_sad; 811 if (!strcmp(s, "Arabic_dad")) return XK_Arabic_dad; 812 if (!strcmp(s, "Arabic_tah")) return XK_Arabic_tah; 813 if (!strcmp(s, "Arabic_zah")) return XK_Arabic_zah; 814 if (!strcmp(s, "Arabic_ain")) return XK_Arabic_ain; 815 if (!strcmp(s, "Arabic_ghain")) return XK_Arabic_ghain; 816 if (!strcmp(s, "Arabic_tatweel")) return XK_Arabic_tatweel; 817 if (!strcmp(s, "Arabic_feh")) return XK_Arabic_feh; 818 if (!strcmp(s, "Arabic_qaf")) return XK_Arabic_qaf; 819 if (!strcmp(s, "Arabic_kaf")) return XK_Arabic_kaf; 820 if (!strcmp(s, "Arabic_lam")) return XK_Arabic_lam; 821 if (!strcmp(s, "Arabic_meem")) return XK_Arabic_meem; 822 if (!strcmp(s, "Arabic_noon")) return XK_Arabic_noon; 823 if (!strcmp(s, "Arabic_ha")) return XK_Arabic_ha; 824 if (!strcmp(s, "Arabic_heh")) return XK_Arabic_heh; 825 if (!strcmp(s, "Arabic_waw")) return XK_Arabic_waw; 826 if (!strcmp(s, "Arabic_alefmaksura")) return XK_Arabic_alefmaksura; 827 if (!strcmp(s, "Arabic_yeh")) return XK_Arabic_yeh; 828 if (!strcmp(s, "Arabic_fathatan")) return XK_Arabic_fathatan; 829 if (!strcmp(s, "Arabic_dammatan")) return XK_Arabic_dammatan; 830 if (!strcmp(s, "Arabic_kasratan")) return XK_Arabic_kasratan; 831 if (!strcmp(s, "Arabic_fatha")) return XK_Arabic_fatha; 832 if (!strcmp(s, "Arabic_damma")) return XK_Arabic_damma; 833 if (!strcmp(s, "Arabic_kasra")) return XK_Arabic_kasra; 834 if (!strcmp(s, "Arabic_shadda")) return XK_Arabic_shadda; 835 if (!strcmp(s, "Arabic_sukun")) return XK_Arabic_sukun; 836 if (!strcmp(s, "Arabic_switch")) return XK_Arabic_switch; 837#endif /* XK_ARABIC */ 838#ifdef XK_CYRILLIC 839 if (!strcmp(s, "Serbian_dje")) return XK_Serbian_dje; 840 if (!strcmp(s, "Macedonia_gje")) return XK_Macedonia_gje; 841 if (!strcmp(s, "Cyrillic_io")) return XK_Cyrillic_io; 842 if (!strcmp(s, "Ukrainian_ie")) return XK_Ukrainian_ie; 843 if (!strcmp(s, "Ukranian_je")) return XK_Ukranian_je; 844 if (!strcmp(s, "Macedonia_dse")) return XK_Macedonia_dse; 845 if (!strcmp(s, "Ukrainian_i")) return XK_Ukrainian_i; 846 if (!strcmp(s, "Ukranian_i")) return XK_Ukranian_i; 847 if (!strcmp(s, "Ukrainian_yi")) return XK_Ukrainian_yi; 848 if (!strcmp(s, "Ukranian_yi")) return XK_Ukranian_yi; 849 if (!strcmp(s, "Cyrillic_je")) return XK_Cyrillic_je; 850 if (!strcmp(s, "Serbian_je")) return XK_Serbian_je; 851 if (!strcmp(s, "Cyrillic_lje")) return XK_Cyrillic_lje; 852 if (!strcmp(s, "Serbian_lje")) return XK_Serbian_lje; 853 if (!strcmp(s, "Cyrillic_nje")) return XK_Cyrillic_nje; 854 if (!strcmp(s, "Serbian_nje")) return XK_Serbian_nje; 855 if (!strcmp(s, "Serbian_tshe")) return XK_Serbian_tshe; 856 if (!strcmp(s, "Macedonia_kje")) return XK_Macedonia_kje; 857 if (!strcmp(s, "Byelorussian_shortu")) return XK_Byelorussian_shortu; 858 if (!strcmp(s, "Cyrillic_dzhe")) return XK_Cyrillic_dzhe; 859 if (!strcmp(s, "Serbian_dze")) return XK_Serbian_dze; 860 if (!strcmp(s, "numerosign")) return XK_numerosign; 861 if (!strcmp(s, "Serbian_DJE")) return XK_Serbian_DJE; 862 if (!strcmp(s, "Macedonia_GJE")) return XK_Macedonia_GJE; 863 if (!strcmp(s, "Cyrillic_IO")) return XK_Cyrillic_IO; 864 if (!strcmp(s, "Ukrainian_IE")) return XK_Ukrainian_IE; 865 if (!strcmp(s, "Ukranian_JE")) return XK_Ukranian_JE; 866 if (!strcmp(s, "Macedonia_DSE")) return XK_Macedonia_DSE; 867 if (!strcmp(s, "Ukrainian_I")) return XK_Ukrainian_I; 868 if (!strcmp(s, "Ukranian_I")) return XK_Ukranian_I; 869 if (!strcmp(s, "Ukrainian_YI")) return XK_Ukrainian_YI; 870 if (!strcmp(s, "Ukranian_YI")) return XK_Ukranian_YI; 871 if (!strcmp(s, "Cyrillic_JE")) return XK_Cyrillic_JE; 872 if (!strcmp(s, "Serbian_JE")) return XK_Serbian_JE; 873 if (!strcmp(s, "Cyrillic_LJE")) return XK_Cyrillic_LJE; 874 if (!strcmp(s, "Serbian_LJE")) return XK_Serbian_LJE; 875 if (!strcmp(s, "Cyrillic_NJE")) return XK_Cyrillic_NJE; 876 if (!strcmp(s, "Serbian_NJE")) return XK_Serbian_NJE; 877 if (!strcmp(s, "Serbian_TSHE")) return XK_Serbian_TSHE; 878 if (!strcmp(s, "Macedonia_KJE")) return XK_Macedonia_KJE; 879 if (!strcmp(s, "Byelorussian_SHORTU")) return XK_Byelorussian_SHORTU; 880 if (!strcmp(s, "Cyrillic_DZHE")) return XK_Cyrillic_DZHE; 881 if (!strcmp(s, "Serbian_DZE")) return XK_Serbian_DZE; 882 if (!strcmp(s, "Cyrillic_yu")) return XK_Cyrillic_yu; 883 if (!strcmp(s, "Cyrillic_a")) return XK_Cyrillic_a; 884 if (!strcmp(s, "Cyrillic_be")) return XK_Cyrillic_be; 885 if (!strcmp(s, "Cyrillic_tse")) return XK_Cyrillic_tse; 886 if (!strcmp(s, "Cyrillic_de")) return XK_Cyrillic_de; 887 if (!strcmp(s, "Cyrillic_ie")) return XK_Cyrillic_ie; 888 if (!strcmp(s, "Cyrillic_ef")) return XK_Cyrillic_ef; 889 if (!strcmp(s, "Cyrillic_ghe")) return XK_Cyrillic_ghe; 890 if (!strcmp(s, "Cyrillic_ha")) return XK_Cyrillic_ha; 891 if (!strcmp(s, "Cyrillic_i")) return XK_Cyrillic_i; 892 if (!strcmp(s, "Cyrillic_shorti")) return XK_Cyrillic_shorti; 893 if (!strcmp(s, "Cyrillic_ka")) return XK_Cyrillic_ka; 894 if (!strcmp(s, "Cyrillic_el")) return XK_Cyrillic_el; 895 if (!strcmp(s, "Cyrillic_em")) return XK_Cyrillic_em; 896 if (!strcmp(s, "Cyrillic_en")) return XK_Cyrillic_en; 897 if (!strcmp(s, "Cyrillic_o")) return XK_Cyrillic_o; 898 if (!strcmp(s, "Cyrillic_pe")) return XK_Cyrillic_pe; 899 if (!strcmp(s, "Cyrillic_ya")) return XK_Cyrillic_ya; 900 if (!strcmp(s, "Cyrillic_er")) return XK_Cyrillic_er; 901 if (!strcmp(s, "Cyrillic_es")) return XK_Cyrillic_es; 902 if (!strcmp(s, "Cyrillic_te")) return XK_Cyrillic_te; 903 if (!strcmp(s, "Cyrillic_u")) return XK_Cyrillic_u; 904 if (!strcmp(s, "Cyrillic_zhe")) return XK_Cyrillic_zhe; 905 if (!strcmp(s, "Cyrillic_ve")) return XK_Cyrillic_ve; 906 if (!strcmp(s, "Cyrillic_softsign")) return XK_Cyrillic_softsign; 907 if (!strcmp(s, "Cyrillic_yeru")) return XK_Cyrillic_yeru; 908 if (!strcmp(s, "Cyrillic_ze")) return XK_Cyrillic_ze; 909 if (!strcmp(s, "Cyrillic_sha")) return XK_Cyrillic_sha; 910 if (!strcmp(s, "Cyrillic_e")) return XK_Cyrillic_e; 911 if (!strcmp(s, "Cyrillic_shcha")) return XK_Cyrillic_shcha; 912 if (!strcmp(s, "Cyrillic_che")) return XK_Cyrillic_che; 913 if (!strcmp(s, "Cyrillic_hardsign")) return XK_Cyrillic_hardsign; 914 if (!strcmp(s, "Cyrillic_YU")) return XK_Cyrillic_YU; 915 if (!strcmp(s, "Cyrillic_A")) return XK_Cyrillic_A; 916 if (!strcmp(s, "Cyrillic_BE")) return XK_Cyrillic_BE; 917 if (!strcmp(s, "Cyrillic_TSE")) return XK_Cyrillic_TSE; 918 if (!strcmp(s, "Cyrillic_DE")) return XK_Cyrillic_DE; 919 if (!strcmp(s, "Cyrillic_IE")) return XK_Cyrillic_IE; 920 if (!strcmp(s, "Cyrillic_EF")) return XK_Cyrillic_EF; 921 if (!strcmp(s, "Cyrillic_GHE")) return XK_Cyrillic_GHE; 922 if (!strcmp(s, "Cyrillic_HA")) return XK_Cyrillic_HA; 923 if (!strcmp(s, "Cyrillic_I")) return XK_Cyrillic_I; 924 if (!strcmp(s, "Cyrillic_SHORTI")) return XK_Cyrillic_SHORTI; 925 if (!strcmp(s, "Cyrillic_KA")) return XK_Cyrillic_KA; 926 if (!strcmp(s, "Cyrillic_EL")) return XK_Cyrillic_EL; 927 if (!strcmp(s, "Cyrillic_EM")) return XK_Cyrillic_EM; 928 if (!strcmp(s, "Cyrillic_EN")) return XK_Cyrillic_EN; 929 if (!strcmp(s, "Cyrillic_O")) return XK_Cyrillic_O; 930 if (!strcmp(s, "Cyrillic_PE")) return XK_Cyrillic_PE; 931 if (!strcmp(s, "Cyrillic_YA")) return XK_Cyrillic_YA; 932 if (!strcmp(s, "Cyrillic_ER")) return XK_Cyrillic_ER; 933 if (!strcmp(s, "Cyrillic_ES")) return XK_Cyrillic_ES; 934 if (!strcmp(s, "Cyrillic_TE")) return XK_Cyrillic_TE; 935 if (!strcmp(s, "Cyrillic_U")) return XK_Cyrillic_U; 936 if (!strcmp(s, "Cyrillic_ZHE")) return XK_Cyrillic_ZHE; 937 if (!strcmp(s, "Cyrillic_VE")) return XK_Cyrillic_VE; 938 if (!strcmp(s, "Cyrillic_SOFTSIGN")) return XK_Cyrillic_SOFTSIGN; 939 if (!strcmp(s, "Cyrillic_YERU")) return XK_Cyrillic_YERU; 940 if (!strcmp(s, "Cyrillic_ZE")) return XK_Cyrillic_ZE; 941 if (!strcmp(s, "Cyrillic_SHA")) return XK_Cyrillic_SHA; 942 if (!strcmp(s, "Cyrillic_E")) return XK_Cyrillic_E; 943 if (!strcmp(s, "Cyrillic_SHCHA")) return XK_Cyrillic_SHCHA; 944 if (!strcmp(s, "Cyrillic_CHE")) return XK_Cyrillic_CHE; 945 if (!strcmp(s, "Cyrillic_HARDSIGN")) return XK_Cyrillic_HARDSIGN; 946#endif /* XK_CYRILLIC */ 947#ifdef XK_GREEK 948 if (!strcmp(s, "Greek_ALPHAaccent")) return XK_Greek_ALPHAaccent; 949 if (!strcmp(s, "Greek_EPSILONaccent")) return XK_Greek_EPSILONaccent; 950 if (!strcmp(s, "Greek_ETAaccent")) return XK_Greek_ETAaccent; 951 if (!strcmp(s, "Greek_IOTAaccent")) return XK_Greek_IOTAaccent; 952 if (!strcmp(s, "Greek_IOTAdieresis")) return XK_Greek_IOTAdieresis; 953 if (!strcmp(s, "Greek_OMICRONaccent")) return XK_Greek_OMICRONaccent; 954 if (!strcmp(s, "Greek_UPSILONaccent")) return XK_Greek_UPSILONaccent; 955 if (!strcmp(s, "Greek_UPSILONdieresis")) return XK_Greek_UPSILONdieresis; 956 if (!strcmp(s, "Greek_OMEGAaccent")) return XK_Greek_OMEGAaccent; 957 if (!strcmp(s, "Greek_accentdieresis")) return XK_Greek_accentdieresis; 958 if (!strcmp(s, "Greek_horizbar")) return XK_Greek_horizbar; 959 if (!strcmp(s, "Greek_alphaaccent")) return XK_Greek_alphaaccent; 960 if (!strcmp(s, "Greek_epsilonaccent")) return XK_Greek_epsilonaccent; 961 if (!strcmp(s, "Greek_etaaccent")) return XK_Greek_etaaccent; 962 if (!strcmp(s, "Greek_iotaaccent")) return XK_Greek_iotaaccent; 963 if (!strcmp(s, "Greek_iotadieresis")) return XK_Greek_iotadieresis; 964 if (!strcmp(s, "Greek_iotaaccentdieresis")) return XK_Greek_iotaaccentdieresis; 965 if (!strcmp(s, "Greek_omicronaccent")) return XK_Greek_omicronaccent; 966 if (!strcmp(s, "Greek_upsilonaccent")) return XK_Greek_upsilonaccent; 967 if (!strcmp(s, "Greek_upsilondieresis")) return XK_Greek_upsilondieresis; 968 if (!strcmp(s, "Greek_upsilonaccentdieresis")) return XK_Greek_upsilonaccentdieresis; 969 if (!strcmp(s, "Greek_omegaaccent")) return XK_Greek_omegaaccent; 970 if (!strcmp(s, "Greek_ALPHA")) return XK_Greek_ALPHA; 971 if (!strcmp(s, "Greek_BETA")) return XK_Greek_BETA; 972 if (!strcmp(s, "Greek_GAMMA")) return XK_Greek_GAMMA; 973 if (!strcmp(s, "Greek_DELTA")) return XK_Greek_DELTA; 974 if (!strcmp(s, "Greek_EPSILON")) return XK_Greek_EPSILON; 975 if (!strcmp(s, "Greek_ZETA")) return XK_Greek_ZETA; 976 if (!strcmp(s, "Greek_ETA")) return XK_Greek_ETA; 977 if (!strcmp(s, "Greek_THETA")) return XK_Greek_THETA; 978 if (!strcmp(s, "Greek_IOTA")) return XK_Greek_IOTA; 979 if (!strcmp(s, "Greek_KAPPA")) return XK_Greek_KAPPA; 980 if (!strcmp(s, "Greek_LAMDA")) return XK_Greek_LAMDA; 981 if (!strcmp(s, "Greek_LAMBDA")) return XK_Greek_LAMBDA; 982 if (!strcmp(s, "Greek_MU")) return XK_Greek_MU; 983 if (!strcmp(s, "Greek_NU")) return XK_Greek_NU; 984 if (!strcmp(s, "Greek_XI")) return XK_Greek_XI; 985 if (!strcmp(s, "Greek_OMICRON")) return XK_Greek_OMICRON; 986 if (!strcmp(s, "Greek_PI")) return XK_Greek_PI; 987 if (!strcmp(s, "Greek_RHO")) return XK_Greek_RHO; 988 if (!strcmp(s, "Greek_SIGMA")) return XK_Greek_SIGMA; 989 if (!strcmp(s, "Greek_TAU")) return XK_Greek_TAU; 990 if (!strcmp(s, "Greek_UPSILON")) return XK_Greek_UPSILON; 991 if (!strcmp(s, "Greek_PHI")) return XK_Greek_PHI; 992 if (!strcmp(s, "Greek_CHI")) return XK_Greek_CHI; 993 if (!strcmp(s, "Greek_PSI")) return XK_Greek_PSI; 994 if (!strcmp(s, "Greek_OMEGA")) return XK_Greek_OMEGA; 995 if (!strcmp(s, "Greek_alpha")) return XK_Greek_alpha; 996 if (!strcmp(s, "Greek_beta")) return XK_Greek_beta; 997 if (!strcmp(s, "Greek_gamma")) return XK_Greek_gamma; 998 if (!strcmp(s, "Greek_delta")) return XK_Greek_delta; 999 if (!strcmp(s, "Greek_epsilon")) return XK_Greek_epsilon; 1000 if (!strcmp(s, "Greek_zeta")) return XK_Greek_zeta; 1001 if (!strcmp(s, "Greek_eta")) return XK_Greek_eta; 1002 if (!strcmp(s, "Greek_theta")) return XK_Greek_theta; 1003 if (!strcmp(s, "Greek_iota")) return XK_Greek_iota; 1004 if (!strcmp(s, "Greek_kappa")) return XK_Greek_kappa; 1005 if (!strcmp(s, "Greek_lamda")) return XK_Greek_lamda; 1006 if (!strcmp(s, "Greek_lambda")) return XK_Greek_lambda; 1007 if (!strcmp(s, "Greek_mu")) return XK_Greek_mu; 1008 if (!strcmp(s, "Greek_nu")) return XK_Greek_nu; 1009 if (!strcmp(s, "Greek_xi")) return XK_Greek_xi; 1010 if (!strcmp(s, "Greek_omicron")) return XK_Greek_omicron; 1011 if (!strcmp(s, "Greek_pi")) return XK_Greek_pi; 1012 if (!strcmp(s, "Greek_rho")) return XK_Greek_rho; 1013 if (!strcmp(s, "Greek_sigma")) return XK_Greek_sigma; 1014 if (!strcmp(s, "Greek_finalsmallsigma")) return XK_Greek_finalsmallsigma; 1015 if (!strcmp(s, "Greek_tau")) return XK_Greek_tau; 1016 if (!strcmp(s, "Greek_upsilon")) return XK_Greek_upsilon; 1017 if (!strcmp(s, "Greek_phi")) return XK_Greek_phi; 1018 if (!strcmp(s, "Greek_chi")) return XK_Greek_chi; 1019 if (!strcmp(s, "Greek_psi")) return XK_Greek_psi; 1020 if (!strcmp(s, "Greek_omega")) return XK_Greek_omega; 1021 if (!strcmp(s, "Greek_switch")) return XK_Greek_switch; 1022#endif /* XK_GREEK */ 1023#ifdef XK_TECHNICAL 1024 if (!strcmp(s, "leftradical")) return XK_leftradical; 1025 if (!strcmp(s, "topleftradical")) return XK_topleftradical; 1026 if (!strcmp(s, "horizconnector")) return XK_horizconnector; 1027 if (!strcmp(s, "topintegral")) return XK_topintegral; 1028 if (!strcmp(s, "botintegral")) return XK_botintegral; 1029 if (!strcmp(s, "vertconnector")) return XK_vertconnector; 1030 if (!strcmp(s, "topleftsqbracket")) return XK_topleftsqbracket; 1031 if (!strcmp(s, "botleftsqbracket")) return XK_botleftsqbracket; 1032 if (!strcmp(s, "toprightsqbracket")) return XK_toprightsqbracket; 1033 if (!strcmp(s, "botrightsqbracket")) return XK_botrightsqbracket; 1034 if (!strcmp(s, "topleftparens")) return XK_topleftparens; 1035 if (!strcmp(s, "botleftparens")) return XK_botleftparens; 1036 if (!strcmp(s, "toprightparens")) return XK_toprightparens; 1037 if (!strcmp(s, "botrightparens")) return XK_botrightparens; 1038 if (!strcmp(s, "leftmiddlecurlybrace")) return XK_leftmiddlecurlybrace; 1039 if (!strcmp(s, "rightmiddlecurlybrace")) return XK_rightmiddlecurlybrace; 1040 if (!strcmp(s, "topleftsummation")) return XK_topleftsummation; 1041 if (!strcmp(s, "botleftsummation")) return XK_botleftsummation; 1042 if (!strcmp(s, "topvertsummationconnector")) return XK_topvertsummationconnector; 1043 if (!strcmp(s, "botvertsummationconnector")) return XK_botvertsummationconnector; 1044 if (!strcmp(s, "toprightsummation")) return XK_toprightsummation; 1045 if (!strcmp(s, "botrightsummation")) return XK_botrightsummation; 1046 if (!strcmp(s, "rightmiddlesummation")) return XK_rightmiddlesummation; 1047 if (!strcmp(s, "lessthanequal")) return XK_lessthanequal; 1048 if (!strcmp(s, "notequal")) return XK_notequal; 1049 if (!strcmp(s, "greaterthanequal")) return XK_greaterthanequal; 1050 if (!strcmp(s, "integral")) return XK_integral; 1051 if (!strcmp(s, "therefore")) return XK_therefore; 1052 if (!strcmp(s, "variation")) return XK_variation; 1053 if (!strcmp(s, "infinity")) return XK_infinity; 1054 if (!strcmp(s, "nabla")) return XK_nabla; 1055 if (!strcmp(s, "approximate")) return XK_approximate; 1056 if (!strcmp(s, "similarequal")) return XK_similarequal; 1057 if (!strcmp(s, "ifonlyif")) return XK_ifonlyif; 1058 if (!strcmp(s, "implies")) return XK_implies; 1059 if (!strcmp(s, "identical")) return XK_identical; 1060 if (!strcmp(s, "radical")) return XK_radical; 1061 if (!strcmp(s, "includedin")) return XK_includedin; 1062 if (!strcmp(s, "includes")) return XK_includes; 1063 if (!strcmp(s, "intersection")) return XK_intersection; 1064 if (!strcmp(s, "union")) return XK_union; 1065 if (!strcmp(s, "logicaland")) return XK_logicaland; 1066 if (!strcmp(s, "logicalor")) return XK_logicalor; 1067 if (!strcmp(s, "partialderivative")) return XK_partialderivative; 1068 if (!strcmp(s, "function")) return XK_function; 1069 if (!strcmp(s, "leftarrow")) return XK_leftarrow; 1070 if (!strcmp(s, "uparrow")) return XK_uparrow; 1071 if (!strcmp(s, "rightarrow")) return XK_rightarrow; 1072 if (!strcmp(s, "downarrow")) return XK_downarrow; 1073#endif /* XK_TECHNICAL */ 1074#ifdef XK_SPECIAL 1075 if (!strcmp(s, "blank")) return XK_blank; 1076 if (!strcmp(s, "soliddiamond")) return XK_soliddiamond; 1077 if (!strcmp(s, "checkerboard")) return XK_checkerboard; 1078 if (!strcmp(s, "ht")) return XK_ht; 1079 if (!strcmp(s, "ff")) return XK_ff; 1080 if (!strcmp(s, "cr")) return XK_cr; 1081 if (!strcmp(s, "lf")) return XK_lf; 1082 if (!strcmp(s, "nl")) return XK_nl; 1083 if (!strcmp(s, "vt")) return XK_vt; 1084 if (!strcmp(s, "lowrightcorner")) return XK_lowrightcorner; 1085 if (!strcmp(s, "uprightcorner")) return XK_uprightcorner; 1086 if (!strcmp(s, "upleftcorner")) return XK_upleftcorner; 1087 if (!strcmp(s, "lowleftcorner")) return XK_lowleftcorner; 1088 if (!strcmp(s, "crossinglines")) return XK_crossinglines; 1089 if (!strcmp(s, "horizlinescan1")) return XK_horizlinescan1; 1090 if (!strcmp(s, "horizlinescan3")) return XK_horizlinescan3; 1091 if (!strcmp(s, "horizlinescan5")) return XK_horizlinescan5; 1092 if (!strcmp(s, "horizlinescan7")) return XK_horizlinescan7; 1093 if (!strcmp(s, "horizlinescan9")) return XK_horizlinescan9; 1094 if (!strcmp(s, "leftt")) return XK_leftt; 1095 if (!strcmp(s, "rightt")) return XK_rightt; 1096 if (!strcmp(s, "bott")) return XK_bott; 1097 if (!strcmp(s, "topt")) return XK_topt; 1098 if (!strcmp(s, "vertbar")) return XK_vertbar; 1099#endif /* XK_SPECIAL */ 1100#ifdef XK_PUBLISHING 1101 if (!strcmp(s, "emspace")) return XK_emspace; 1102 if (!strcmp(s, "enspace")) return XK_enspace; 1103 if (!strcmp(s, "em3space")) return XK_em3space; 1104 if (!strcmp(s, "em4space")) return XK_em4space; 1105 if (!strcmp(s, "digitspace")) return XK_digitspace; 1106 if (!strcmp(s, "punctspace")) return XK_punctspace; 1107 if (!strcmp(s, "thinspace")) return XK_thinspace; 1108 if (!strcmp(s, "hairspace")) return XK_hairspace; 1109 if (!strcmp(s, "emdash")) return XK_emdash; 1110 if (!strcmp(s, "endash")) return XK_endash; 1111 if (!strcmp(s, "signifblank")) return XK_signifblank; 1112 if (!strcmp(s, "ellipsis")) return XK_ellipsis; 1113 if (!strcmp(s, "doubbaselinedot")) return XK_doubbaselinedot; 1114 if (!strcmp(s, "onethird")) return XK_onethird; 1115 if (!strcmp(s, "twothirds")) return XK_twothirds; 1116 if (!strcmp(s, "onefifth")) return XK_onefifth; 1117 if (!strcmp(s, "twofifths")) return XK_twofifths; 1118 if (!strcmp(s, "threefifths")) return XK_threefifths; 1119 if (!strcmp(s, "fourfifths")) return XK_fourfifths; 1120 if (!strcmp(s, "onesixth")) return XK_onesixth; 1121 if (!strcmp(s, "fivesixths")) return XK_fivesixths; 1122 if (!strcmp(s, "careof")) return XK_careof; 1123 if (!strcmp(s, "figdash")) return XK_figdash; 1124 if (!strcmp(s, "leftanglebracket")) return XK_leftanglebracket; 1125 if (!strcmp(s, "decimalpoint")) return XK_decimalpoint; 1126 if (!strcmp(s, "rightanglebracket")) return XK_rightanglebracket; 1127 if (!strcmp(s, "marker")) return XK_marker; 1128 if (!strcmp(s, "oneeighth")) return XK_oneeighth; 1129 if (!strcmp(s, "threeeighths")) return XK_threeeighths; 1130 if (!strcmp(s, "fiveeighths")) return XK_fiveeighths; 1131 if (!strcmp(s, "seveneighths")) return XK_seveneighths; 1132 if (!strcmp(s, "trademark")) return XK_trademark; 1133 if (!strcmp(s, "signaturemark")) return XK_signaturemark; 1134 if (!strcmp(s, "trademarkincircle")) return XK_trademarkincircle; 1135 if (!strcmp(s, "leftopentriangle")) return XK_leftopentriangle; 1136 if (!strcmp(s, "rightopentriangle")) return XK_rightopentriangle; 1137 if (!strcmp(s, "emopencircle")) return XK_emopencircle; 1138 if (!strcmp(s, "emopenrectangle")) return XK_emopenrectangle; 1139 if (!strcmp(s, "leftsinglequotemark")) return XK_leftsinglequotemark; 1140 if (!strcmp(s, "rightsinglequotemark")) return XK_rightsinglequotemark; 1141 if (!strcmp(s, "leftdoublequotemark")) return XK_leftdoublequotemark; 1142 if (!strcmp(s, "rightdoublequotemark")) return XK_rightdoublequotemark; 1143 if (!strcmp(s, "prescription")) return XK_prescription; 1144 if (!strcmp(s, "minutes")) return XK_minutes; 1145 if (!strcmp(s, "seconds")) return XK_seconds; 1146 if (!strcmp(s, "latincross")) return XK_latincross; 1147 if (!strcmp(s, "hexagram")) return XK_hexagram; 1148 if (!strcmp(s, "filledrectbullet")) return XK_filledrectbullet; 1149 if (!strcmp(s, "filledlefttribullet")) return XK_filledlefttribullet; 1150 if (!strcmp(s, "filledrighttribullet")) return XK_filledrighttribullet; 1151 if (!strcmp(s, "emfilledcircle")) return XK_emfilledcircle; 1152 if (!strcmp(s, "emfilledrect")) return XK_emfilledrect; 1153 if (!strcmp(s, "enopencircbullet")) return XK_enopencircbullet; 1154 if (!strcmp(s, "enopensquarebullet")) return XK_enopensquarebullet; 1155 if (!strcmp(s, "openrectbullet")) return XK_openrectbullet; 1156 if (!strcmp(s, "opentribulletup")) return XK_opentribulletup; 1157 if (!strcmp(s, "opentribulletdown")) return XK_opentribulletdown; 1158 if (!strcmp(s, "openstar")) return XK_openstar; 1159 if (!strcmp(s, "enfilledcircbullet")) return XK_enfilledcircbullet; 1160 if (!strcmp(s, "enfilledsqbullet")) return XK_enfilledsqbullet; 1161 if (!strcmp(s, "filledtribulletup")) return XK_filledtribulletup; 1162 if (!strcmp(s, "filledtribulletdown")) return XK_filledtribulletdown; 1163 if (!strcmp(s, "leftpointer")) return XK_leftpointer; 1164 if (!strcmp(s, "rightpointer")) return XK_rightpointer; 1165 if (!strcmp(s, "club")) return XK_club; 1166 if (!strcmp(s, "diamond")) return XK_diamond; 1167 if (!strcmp(s, "heart")) return XK_heart; 1168 if (!strcmp(s, "maltesecross")) return XK_maltesecross; 1169 if (!strcmp(s, "dagger")) return XK_dagger; 1170 if (!strcmp(s, "doubledagger")) return XK_doubledagger; 1171 if (!strcmp(s, "checkmark")) return XK_checkmark; 1172 if (!strcmp(s, "ballotcross")) return XK_ballotcross; 1173 if (!strcmp(s, "musicalsharp")) return XK_musicalsharp; 1174 if (!strcmp(s, "musicalflat")) return XK_musicalflat; 1175 if (!strcmp(s, "malesymbol")) return XK_malesymbol; 1176 if (!strcmp(s, "femalesymbol")) return XK_femalesymbol; 1177 if (!strcmp(s, "telephone")) return XK_telephone; 1178 if (!strcmp(s, "telephonerecorder")) return XK_telephonerecorder; 1179 if (!strcmp(s, "phonographcopyright")) return XK_phonographcopyright; 1180 if (!strcmp(s, "caret")) return XK_caret; 1181 if (!strcmp(s, "singlelowquotemark")) return XK_singlelowquotemark; 1182 if (!strcmp(s, "doublelowquotemark")) return XK_doublelowquotemark; 1183 if (!strcmp(s, "cursor")) return XK_cursor; 1184#endif /* XK_PUBLISHING */ 1185#ifdef XK_APL 1186 if (!strcmp(s, "leftcaret")) return XK_leftcaret; 1187 if (!strcmp(s, "rightcaret")) return XK_rightcaret; 1188 if (!strcmp(s, "downcaret")) return XK_downcaret; 1189 if (!strcmp(s, "upcaret")) return XK_upcaret; 1190 if (!strcmp(s, "overbar")) return XK_overbar; 1191 if (!strcmp(s, "downtack")) return XK_downtack; 1192 if (!strcmp(s, "upshoe")) return XK_upshoe; 1193 if (!strcmp(s, "downstile")) return XK_downstile; 1194 if (!strcmp(s, "underbar")) return XK_underbar; 1195 if (!strcmp(s, "jot")) return XK_jot; 1196 if (!strcmp(s, "quad")) return XK_quad; 1197 if (!strcmp(s, "uptack")) return XK_uptack; 1198 if (!strcmp(s, "circle")) return XK_circle; 1199 if (!strcmp(s, "upstile")) return XK_upstile; 1200 if (!strcmp(s, "downshoe")) return XK_downshoe; 1201 if (!strcmp(s, "rightshoe")) return XK_rightshoe; 1202 if (!strcmp(s, "leftshoe")) return XK_leftshoe; 1203 if (!strcmp(s, "lefttack")) return XK_lefttack; 1204 if (!strcmp(s, "righttack")) return XK_righttack; 1205#endif /* XK_APL */ 1206#ifdef XK_HEBREW 1207 if (!strcmp(s, "hebrew_doublelowline")) return XK_hebrew_doublelowline; 1208 if (!strcmp(s, "hebrew_aleph")) return XK_hebrew_aleph; 1209 if (!strcmp(s, "hebrew_bet")) return XK_hebrew_bet; 1210 if (!strcmp(s, "hebrew_beth")) return XK_hebrew_beth; 1211 if (!strcmp(s, "hebrew_gimel")) return XK_hebrew_gimel; 1212 if (!strcmp(s, "hebrew_gimmel")) return XK_hebrew_gimmel; 1213 if (!strcmp(s, "hebrew_dalet")) return XK_hebrew_dalet; 1214 if (!strcmp(s, "hebrew_daleth")) return XK_hebrew_daleth; 1215 if (!strcmp(s, "hebrew_he")) return XK_hebrew_he; 1216 if (!strcmp(s, "hebrew_waw")) return XK_hebrew_waw; 1217 if (!strcmp(s, "hebrew_zain")) return XK_hebrew_zain; 1218 if (!strcmp(s, "hebrew_zayin")) return XK_hebrew_zayin; 1219 if (!strcmp(s, "hebrew_chet")) return XK_hebrew_chet; 1220 if (!strcmp(s, "hebrew_het")) return XK_hebrew_het; 1221 if (!strcmp(s, "hebrew_tet")) return XK_hebrew_tet; 1222 if (!strcmp(s, "hebrew_teth")) return XK_hebrew_teth; 1223 if (!strcmp(s, "hebrew_yod")) return XK_hebrew_yod; 1224 if (!strcmp(s, "hebrew_finalkaph")) return XK_hebrew_finalkaph; 1225 if (!strcmp(s, "hebrew_kaph")) return XK_hebrew_kaph; 1226 if (!strcmp(s, "hebrew_lamed")) return XK_hebrew_lamed; 1227 if (!strcmp(s, "hebrew_finalmem")) return XK_hebrew_finalmem; 1228 if (!strcmp(s, "hebrew_mem")) return XK_hebrew_mem; 1229 if (!strcmp(s, "hebrew_finalnun")) return XK_hebrew_finalnun; 1230 if (!strcmp(s, "hebrew_nun")) return XK_hebrew_nun; 1231 if (!strcmp(s, "hebrew_samech")) return XK_hebrew_samech; 1232 if (!strcmp(s, "hebrew_samekh")) return XK_hebrew_samekh; 1233 if (!strcmp(s, "hebrew_ayin")) return XK_hebrew_ayin; 1234 if (!strcmp(s, "hebrew_finalpe")) return XK_hebrew_finalpe; 1235 if (!strcmp(s, "hebrew_pe")) return XK_hebrew_pe; 1236 if (!strcmp(s, "hebrew_finalzade")) return XK_hebrew_finalzade; 1237 if (!strcmp(s, "hebrew_finalzadi")) return XK_hebrew_finalzadi; 1238 if (!strcmp(s, "hebrew_zade")) return XK_hebrew_zade; 1239 if (!strcmp(s, "hebrew_zadi")) return XK_hebrew_zadi; 1240 if (!strcmp(s, "hebrew_qoph")) return XK_hebrew_qoph; 1241 if (!strcmp(s, "hebrew_kuf")) return XK_hebrew_kuf; 1242 if (!strcmp(s, "hebrew_resh")) return XK_hebrew_resh; 1243 if (!strcmp(s, "hebrew_shin")) return XK_hebrew_shin; 1244 if (!strcmp(s, "hebrew_taw")) return XK_hebrew_taw; 1245 if (!strcmp(s, "hebrew_taf")) return XK_hebrew_taf; 1246 if (!strcmp(s, "Hebrew_switch")) return XK_Hebrew_switch; 1247#endif /* XK_HEBREW */ 1248#ifdef XK_THAI 1249 if (!strcmp(s, "Thai_kokai")) return XK_Thai_kokai; 1250 if (!strcmp(s, "Thai_khokhai")) return XK_Thai_khokhai; 1251 if (!strcmp(s, "Thai_khokhuat")) return XK_Thai_khokhuat; 1252 if (!strcmp(s, "Thai_khokhwai")) return XK_Thai_khokhwai; 1253 if (!strcmp(s, "Thai_khokhon")) return XK_Thai_khokhon; 1254 if (!strcmp(s, "Thai_khorakhang")) return XK_Thai_khorakhang; 1255 if (!strcmp(s, "Thai_ngongu")) return XK_Thai_ngongu; 1256 if (!strcmp(s, "Thai_chochan")) return XK_Thai_chochan; 1257 if (!strcmp(s, "Thai_choching")) return XK_Thai_choching; 1258 if (!strcmp(s, "Thai_chochang")) return XK_Thai_chochang; 1259 if (!strcmp(s, "Thai_soso")) return XK_Thai_soso; 1260 if (!strcmp(s, "Thai_chochoe")) return XK_Thai_chochoe; 1261 if (!strcmp(s, "Thai_yoying")) return XK_Thai_yoying; 1262 if (!strcmp(s, "Thai_dochada")) return XK_Thai_dochada; 1263 if (!strcmp(s, "Thai_topatak")) return XK_Thai_topatak; 1264 if (!strcmp(s, "Thai_thothan")) return XK_Thai_thothan; 1265 if (!strcmp(s, "Thai_thonangmontho")) return XK_Thai_thonangmontho; 1266 if (!strcmp(s, "Thai_thophuthao")) return XK_Thai_thophuthao; 1267 if (!strcmp(s, "Thai_nonen")) return XK_Thai_nonen; 1268 if (!strcmp(s, "Thai_dodek")) return XK_Thai_dodek; 1269 if (!strcmp(s, "Thai_totao")) return XK_Thai_totao; 1270 if (!strcmp(s, "Thai_thothung")) return XK_Thai_thothung; 1271 if (!strcmp(s, "Thai_thothahan")) return XK_Thai_thothahan; 1272 if (!strcmp(s, "Thai_thothong")) return XK_Thai_thothong; 1273 if (!strcmp(s, "Thai_nonu")) return XK_Thai_nonu; 1274 if (!strcmp(s, "Thai_bobaimai")) return XK_Thai_bobaimai; 1275 if (!strcmp(s, "Thai_popla")) return XK_Thai_popla; 1276 if (!strcmp(s, "Thai_phophung")) return XK_Thai_phophung; 1277 if (!strcmp(s, "Thai_fofa")) return XK_Thai_fofa; 1278 if (!strcmp(s, "Thai_phophan")) return XK_Thai_phophan; 1279 if (!strcmp(s, "Thai_fofan")) return XK_Thai_fofan; 1280 if (!strcmp(s, "Thai_phosamphao")) return XK_Thai_phosamphao; 1281 if (!strcmp(s, "Thai_moma")) return XK_Thai_moma; 1282 if (!strcmp(s, "Thai_yoyak")) return XK_Thai_yoyak; 1283 if (!strcmp(s, "Thai_rorua")) return XK_Thai_rorua; 1284 if (!strcmp(s, "Thai_ru")) return XK_Thai_ru; 1285 if (!strcmp(s, "Thai_loling")) return XK_Thai_loling; 1286 if (!strcmp(s, "Thai_lu")) return XK_Thai_lu; 1287 if (!strcmp(s, "Thai_wowaen")) return XK_Thai_wowaen; 1288 if (!strcmp(s, "Thai_sosala")) return XK_Thai_sosala; 1289 if (!strcmp(s, "Thai_sorusi")) return XK_Thai_sorusi; 1290 if (!strcmp(s, "Thai_sosua")) return XK_Thai_sosua; 1291 if (!strcmp(s, "Thai_hohip")) return XK_Thai_hohip; 1292 if (!strcmp(s, "Thai_lochula")) return XK_Thai_lochula; 1293 if (!strcmp(s, "Thai_oang")) return XK_Thai_oang; 1294 if (!strcmp(s, "Thai_honokhuk")) return XK_Thai_honokhuk; 1295 if (!strcmp(s, "Thai_paiyannoi")) return XK_Thai_paiyannoi; 1296 if (!strcmp(s, "Thai_saraa")) return XK_Thai_saraa; 1297 if (!strcmp(s, "Thai_maihanakat")) return XK_Thai_maihanakat; 1298 if (!strcmp(s, "Thai_saraaa")) return XK_Thai_saraaa; 1299 if (!strcmp(s, "Thai_saraam")) return XK_Thai_saraam; 1300 if (!strcmp(s, "Thai_sarai")) return XK_Thai_sarai; 1301 if (!strcmp(s, "Thai_saraii")) return XK_Thai_saraii; 1302 if (!strcmp(s, "Thai_saraue")) return XK_Thai_saraue; 1303 if (!strcmp(s, "Thai_sarauee")) return XK_Thai_sarauee; 1304 if (!strcmp(s, "Thai_sarau")) return XK_Thai_sarau; 1305 if (!strcmp(s, "Thai_sarauu")) return XK_Thai_sarauu; 1306 if (!strcmp(s, "Thai_phinthu")) return XK_Thai_phinthu; 1307 if (!strcmp(s, "Thai_maihanakat_maitho")) return XK_Thai_maihanakat_maitho; 1308 if (!strcmp(s, "Thai_baht")) return XK_Thai_baht; 1309 if (!strcmp(s, "Thai_sarae")) return XK_Thai_sarae; 1310 if (!strcmp(s, "Thai_saraae")) return XK_Thai_saraae; 1311 if (!strcmp(s, "Thai_sarao")) return XK_Thai_sarao; 1312 if (!strcmp(s, "Thai_saraaimaimuan")) return XK_Thai_saraaimaimuan; 1313 if (!strcmp(s, "Thai_saraaimaimalai")) return XK_Thai_saraaimaimalai; 1314 if (!strcmp(s, "Thai_lakkhangyao")) return XK_Thai_lakkhangyao; 1315 if (!strcmp(s, "Thai_maiyamok")) return XK_Thai_maiyamok; 1316 if (!strcmp(s, "Thai_maitaikhu")) return XK_Thai_maitaikhu; 1317 if (!strcmp(s, "Thai_maiek")) return XK_Thai_maiek; 1318 if (!strcmp(s, "Thai_maitho")) return XK_Thai_maitho; 1319 if (!strcmp(s, "Thai_maitri")) return XK_Thai_maitri; 1320 if (!strcmp(s, "Thai_maichattawa")) return XK_Thai_maichattawa; 1321 if (!strcmp(s, "Thai_thanthakhat")) return XK_Thai_thanthakhat; 1322 if (!strcmp(s, "Thai_nikhahit")) return XK_Thai_nikhahit; 1323 if (!strcmp(s, "Thai_leksun")) return XK_Thai_leksun; 1324 if (!strcmp(s, "Thai_leknung")) return XK_Thai_leknung; 1325 if (!strcmp(s, "Thai_leksong")) return XK_Thai_leksong; 1326 if (!strcmp(s, "Thai_leksam")) return XK_Thai_leksam; 1327 if (!strcmp(s, "Thai_leksi")) return XK_Thai_leksi; 1328 if (!strcmp(s, "Thai_lekha")) return XK_Thai_lekha; 1329 if (!strcmp(s, "Thai_lekhok")) return XK_Thai_lekhok; 1330 if (!strcmp(s, "Thai_lekchet")) return XK_Thai_lekchet; 1331 if (!strcmp(s, "Thai_lekpaet")) return XK_Thai_lekpaet; 1332 if (!strcmp(s, "Thai_lekkao")) return XK_Thai_lekkao; 1333#endif /* XK_THAI */ 1334#ifdef XK_KOREAN 1335 if (!strcmp(s, "Hangul")) return XK_Hangul; 1336 if (!strcmp(s, "Hangul_Start")) return XK_Hangul_Start; 1337 if (!strcmp(s, "Hangul_End")) return XK_Hangul_End; 1338 if (!strcmp(s, "Hangul_Hanja")) return XK_Hangul_Hanja; 1339 if (!strcmp(s, "Hangul_Jamo")) return XK_Hangul_Jamo; 1340 if (!strcmp(s, "Hangul_Romaja")) return XK_Hangul_Romaja; 1341 if (!strcmp(s, "Hangul_Codeinput")) return XK_Hangul_Codeinput; 1342 if (!strcmp(s, "Hangul_Jeonja")) return XK_Hangul_Jeonja; 1343 if (!strcmp(s, "Hangul_Banja")) return XK_Hangul_Banja; 1344 if (!strcmp(s, "Hangul_PreHanja")) return XK_Hangul_PreHanja; 1345 if (!strcmp(s, "Hangul_PostHanja")) return XK_Hangul_PostHanja; 1346 if (!strcmp(s, "Hangul_SingleCandidate")) return XK_Hangul_SingleCandidate; 1347 if (!strcmp(s, "Hangul_MultipleCandidate")) return XK_Hangul_MultipleCandidate; 1348 if (!strcmp(s, "Hangul_PreviousCandidate")) return XK_Hangul_PreviousCandidate; 1349 if (!strcmp(s, "Hangul_Special")) return XK_Hangul_Special; 1350 if (!strcmp(s, "Hangul_switch")) return XK_Hangul_switch; 1351 if (!strcmp(s, "Hangul_Kiyeog")) return XK_Hangul_Kiyeog; 1352 if (!strcmp(s, "Hangul_SsangKiyeog")) return XK_Hangul_SsangKiyeog; 1353 if (!strcmp(s, "Hangul_KiyeogSios")) return XK_Hangul_KiyeogSios; 1354 if (!strcmp(s, "Hangul_Nieun")) return XK_Hangul_Nieun; 1355 if (!strcmp(s, "Hangul_NieunJieuj")) return XK_Hangul_NieunJieuj; 1356 if (!strcmp(s, "Hangul_NieunHieuh")) return XK_Hangul_NieunHieuh; 1357 if (!strcmp(s, "Hangul_Dikeud")) return XK_Hangul_Dikeud; 1358 if (!strcmp(s, "Hangul_SsangDikeud")) return XK_Hangul_SsangDikeud; 1359 if (!strcmp(s, "Hangul_Rieul")) return XK_Hangul_Rieul; 1360 if (!strcmp(s, "Hangul_RieulKiyeog")) return XK_Hangul_RieulKiyeog; 1361 if (!strcmp(s, "Hangul_RieulMieum")) return XK_Hangul_RieulMieum; 1362 if (!strcmp(s, "Hangul_RieulPieub")) return XK_Hangul_RieulPieub; 1363 if (!strcmp(s, "Hangul_RieulSios")) return XK_Hangul_RieulSios; 1364 if (!strcmp(s, "Hangul_RieulTieut")) return XK_Hangul_RieulTieut; 1365 if (!strcmp(s, "Hangul_RieulPhieuf")) return XK_Hangul_RieulPhieuf; 1366 if (!strcmp(s, "Hangul_RieulHieuh")) return XK_Hangul_RieulHieuh; 1367 if (!strcmp(s, "Hangul_Mieum")) return XK_Hangul_Mieum; 1368 if (!strcmp(s, "Hangul_Pieub")) return XK_Hangul_Pieub; 1369 if (!strcmp(s, "Hangul_SsangPieub")) return XK_Hangul_SsangPieub; 1370 if (!strcmp(s, "Hangul_PieubSios")) return XK_Hangul_PieubSios; 1371 if (!strcmp(s, "Hangul_Sios")) return XK_Hangul_Sios; 1372 if (!strcmp(s, "Hangul_SsangSios")) return XK_Hangul_SsangSios; 1373 if (!strcmp(s, "Hangul_Ieung")) return XK_Hangul_Ieung; 1374 if (!strcmp(s, "Hangul_Jieuj")) return XK_Hangul_Jieuj; 1375 if (!strcmp(s, "Hangul_SsangJieuj")) return XK_Hangul_SsangJieuj; 1376 if (!strcmp(s, "Hangul_Cieuc")) return XK_Hangul_Cieuc; 1377 if (!strcmp(s, "Hangul_Khieuq")) return XK_Hangul_Khieuq; 1378 if (!strcmp(s, "Hangul_Tieut")) return XK_Hangul_Tieut; 1379 if (!strcmp(s, "Hangul_Phieuf")) return XK_Hangul_Phieuf; 1380 if (!strcmp(s, "Hangul_Hieuh")) return XK_Hangul_Hieuh; 1381 if (!strcmp(s, "Hangul_A")) return XK_Hangul_A; 1382 if (!strcmp(s, "Hangul_AE")) return XK_Hangul_AE; 1383 if (!strcmp(s, "Hangul_YA")) return XK_Hangul_YA; 1384 if (!strcmp(s, "Hangul_YAE")) return XK_Hangul_YAE; 1385 if (!strcmp(s, "Hangul_EO")) return XK_Hangul_EO; 1386 if (!strcmp(s, "Hangul_E")) return XK_Hangul_E; 1387 if (!strcmp(s, "Hangul_YEO")) return XK_Hangul_YEO; 1388 if (!strcmp(s, "Hangul_YE")) return XK_Hangul_YE; 1389 if (!strcmp(s, "Hangul_O")) return XK_Hangul_O; 1390 if (!strcmp(s, "Hangul_WA")) return XK_Hangul_WA; 1391 if (!strcmp(s, "Hangul_WAE")) return XK_Hangul_WAE; 1392 if (!strcmp(s, "Hangul_OE")) return XK_Hangul_OE; 1393 if (!strcmp(s, "Hangul_YO")) return XK_Hangul_YO; 1394 if (!strcmp(s, "Hangul_U")) return XK_Hangul_U; 1395 if (!strcmp(s, "Hangul_WEO")) return XK_Hangul_WEO; 1396 if (!strcmp(s, "Hangul_WE")) return XK_Hangul_WE; 1397 if (!strcmp(s, "Hangul_WI")) return XK_Hangul_WI; 1398 if (!strcmp(s, "Hangul_YU")) return XK_Hangul_YU; 1399 if (!strcmp(s, "Hangul_EU")) return XK_Hangul_EU; 1400 if (!strcmp(s, "Hangul_YI")) return XK_Hangul_YI; 1401 if (!strcmp(s, "Hangul_I")) return XK_Hangul_I; 1402 if (!strcmp(s, "Hangul_J_Kiyeog")) return XK_Hangul_J_Kiyeog; 1403 if (!strcmp(s, "Hangul_J_SsangKiyeog")) return XK_Hangul_J_SsangKiyeog; 1404 if (!strcmp(s, "Hangul_J_KiyeogSios")) return XK_Hangul_J_KiyeogSios; 1405 if (!strcmp(s, "Hangul_J_Nieun")) return XK_Hangul_J_Nieun; 1406 if (!strcmp(s, "Hangul_J_NieunJieuj")) return XK_Hangul_J_NieunJieuj; 1407 if (!strcmp(s, "Hangul_J_NieunHieuh")) return XK_Hangul_J_NieunHieuh; 1408 if (!strcmp(s, "Hangul_J_Dikeud")) return XK_Hangul_J_Dikeud; 1409 if (!strcmp(s, "Hangul_J_Rieul")) return XK_Hangul_J_Rieul; 1410 if (!strcmp(s, "Hangul_J_RieulKiyeog")) return XK_Hangul_J_RieulKiyeog; 1411 if (!strcmp(s, "Hangul_J_RieulMieum")) return XK_Hangul_J_RieulMieum; 1412 if (!strcmp(s, "Hangul_J_RieulPieub")) return XK_Hangul_J_RieulPieub; 1413 if (!strcmp(s, "Hangul_J_RieulSios")) return XK_Hangul_J_RieulSios; 1414 if (!strcmp(s, "Hangul_J_RieulTieut")) return XK_Hangul_J_RieulTieut; 1415 if (!strcmp(s, "Hangul_J_RieulPhieuf")) return XK_Hangul_J_RieulPhieuf; 1416 if (!strcmp(s, "Hangul_J_RieulHieuh")) return XK_Hangul_J_RieulHieuh; 1417 if (!strcmp(s, "Hangul_J_Mieum")) return XK_Hangul_J_Mieum; 1418 if (!strcmp(s, "Hangul_J_Pieub")) return XK_Hangul_J_Pieub; 1419 if (!strcmp(s, "Hangul_J_PieubSios")) return XK_Hangul_J_PieubSios; 1420 if (!strcmp(s, "Hangul_J_Sios")) return XK_Hangul_J_Sios; 1421 if (!strcmp(s, "Hangul_J_SsangSios")) return XK_Hangul_J_SsangSios; 1422 if (!strcmp(s, "Hangul_J_Ieung")) return XK_Hangul_J_Ieung; 1423 if (!strcmp(s, "Hangul_J_Jieuj")) return XK_Hangul_J_Jieuj; 1424 if (!strcmp(s, "Hangul_J_Cieuc")) return XK_Hangul_J_Cieuc; 1425 if (!strcmp(s, "Hangul_J_Khieuq")) return XK_Hangul_J_Khieuq; 1426 if (!strcmp(s, "Hangul_J_Tieut")) return XK_Hangul_J_Tieut; 1427 if (!strcmp(s, "Hangul_J_Phieuf")) return XK_Hangul_J_Phieuf; 1428 if (!strcmp(s, "Hangul_J_Hieuh")) return XK_Hangul_J_Hieuh; 1429 if (!strcmp(s, "Hangul_RieulYeorinHieuh")) return XK_Hangul_RieulYeorinHieuh; 1430 if (!strcmp(s, "Hangul_SunkyeongeumMieum")) return XK_Hangul_SunkyeongeumMieum; 1431 if (!strcmp(s, "Hangul_SunkyeongeumPieub")) return XK_Hangul_SunkyeongeumPieub; 1432 if (!strcmp(s, "Hangul_PanSios")) return XK_Hangul_PanSios; 1433 if (!strcmp(s, "Hangul_KkogjiDalrinIeung")) return XK_Hangul_KkogjiDalrinIeung; 1434 if (!strcmp(s, "Hangul_SunkyeongeumPhieuf")) return XK_Hangul_SunkyeongeumPhieuf; 1435 if (!strcmp(s, "Hangul_YeorinHieuh")) return XK_Hangul_YeorinHieuh; 1436 if (!strcmp(s, "Hangul_AraeA")) return XK_Hangul_AraeA; 1437 if (!strcmp(s, "Hangul_AraeAE")) return XK_Hangul_AraeAE; 1438 if (!strcmp(s, "Hangul_J_PanSios")) return XK_Hangul_J_PanSios; 1439 if (!strcmp(s, "Hangul_J_KkogjiDalrinIeung")) return XK_Hangul_J_KkogjiDalrinIeung; 1440 if (!strcmp(s, "Hangul_J_YeorinHieuh")) return XK_Hangul_J_YeorinHieuh; 1441 if (!strcmp(s, "Korean_Won")) return XK_Korean_Won; 1442#endif /* XK_KOREAN */ 1443 if (!strcmp(s, "EuroSign")) return XK_EuroSign; 1444#endif 1445 return NoSymbol; 1446} 1447 1448 1449char *XKeysymToString(KeySym k) { 1450#ifndef XK_0_nosuch 1451 if (k == XK_VoidSymbol) return "VoidSymbol"; 1452#ifdef XK_MISCELLANY 1453 if (k == XK_BackSpace) return "BackSpace"; 1454 if (k == XK_Tab) return "Tab"; 1455 if (k == XK_Linefeed) return "Linefeed"; 1456 if (k == XK_Clear) return "Clear"; 1457 if (k == XK_Return) return "Return"; 1458 if (k == XK_Pause) return "Pause"; 1459 if (k == XK_Scroll_Lock) return "Scroll_Lock"; 1460 if (k == XK_Sys_Req) return "Sys_Req"; 1461 if (k == XK_Escape) return "Escape"; 1462 if (k == XK_Delete) return "Delete"; 1463 if (k == XK_Multi_key) return "Multi_key"; 1464 if (k == XK_SingleCandidate) return "SingleCandidate"; 1465 if (k == XK_MultipleCandidate) return "MultipleCandidate"; 1466 if (k == XK_PreviousCandidate) return "PreviousCandidate"; 1467 if (k == XK_Kanji) return "Kanji"; 1468 if (k == XK_Muhenkan) return "Muhenkan"; 1469 if (k == XK_Henkan_Mode) return "Henkan_Mode"; 1470 if (k == XK_Henkan) return "Henkan"; 1471 if (k == XK_Romaji) return "Romaji"; 1472 if (k == XK_Hiragana) return "Hiragana"; 1473 if (k == XK_Katakana) return "Katakana"; 1474 if (k == XK_Hiragana_Katakana) return "Hiragana_Katakana"; 1475 if (k == XK_Zenkaku) return "Zenkaku"; 1476 if (k == XK_Hankaku) return "Hankaku"; 1477 if (k == XK_Zenkaku_Hankaku) return "Zenkaku_Hankaku"; 1478 if (k == XK_Touroku) return "Touroku"; 1479 if (k == XK_Massyo) return "Massyo"; 1480 if (k == XK_Kana_Lock) return "Kana_Lock"; 1481 if (k == XK_Kana_Shift) return "Kana_Shift"; 1482 if (k == XK_Eisu_Shift) return "Eisu_Shift"; 1483 if (k == XK_Eisu_toggle) return "Eisu_toggle"; 1484 if (k == XK_Zen_Koho) return "Zen_Koho"; 1485 if (k == XK_Mae_Koho) return "Mae_Koho"; 1486 if (k == XK_Home) return "Home"; 1487 if (k == XK_Left) return "Left"; 1488 if (k == XK_Up) return "Up"; 1489 if (k == XK_Right) return "Right"; 1490 if (k == XK_Down) return "Down"; 1491 if (k == XK_Prior) return "Prior"; 1492 if (k == XK_Page_Up) return "Page_Up"; 1493 if (k == XK_Next) return "Next"; 1494 if (k == XK_Page_Down) return "Page_Down"; 1495 if (k == XK_End) return "End"; 1496 if (k == XK_Begin) return "Begin"; 1497 if (k == XK_Select) return "Select"; 1498 if (k == XK_Print) return "Print"; 1499 if (k == XK_Execute) return "Execute"; 1500 if (k == XK_Insert) return "Insert"; 1501 if (k == XK_Undo) return "Undo"; 1502 if (k == XK_Redo) return "Redo"; 1503 if (k == XK_Menu) return "Menu"; 1504 if (k == XK_Find) return "Find"; 1505 if (k == XK_Cancel) return "Cancel"; 1506 if (k == XK_Help) return "Help"; 1507 if (k == XK_Break) return "Break"; 1508 if (k == XK_Mode_switch) return "Mode_switch"; 1509 if (k == XK_script_switch) return "script_switch"; 1510 if (k == XK_Num_Lock) return "Num_Lock"; 1511 if (k == XK_KP_Space) return "KP_Space"; 1512 if (k == XK_KP_Tab) return "KP_Tab"; 1513 if (k == XK_KP_Enter) return "KP_Enter"; 1514 if (k == XK_KP_F1) return "KP_F1"; 1515 if (k == XK_KP_F2) return "KP_F2"; 1516 if (k == XK_KP_F3) return "KP_F3"; 1517 if (k == XK_KP_F4) return "KP_F4"; 1518 if (k == XK_KP_Home) return "KP_Home"; 1519 if (k == XK_KP_Left) return "KP_Left"; 1520 if (k == XK_KP_Up) return "KP_Up"; 1521 if (k == XK_KP_Right) return "KP_Right"; 1522 if (k == XK_KP_Down) return "KP_Down"; 1523 if (k == XK_KP_Prior) return "KP_Prior"; 1524 if (k == XK_KP_Page_Up) return "KP_Page_Up"; 1525 if (k == XK_KP_Next) return "KP_Next"; 1526 if (k == XK_KP_Page_Down) return "KP_Page_Down"; 1527 if (k == XK_KP_End) return "KP_End"; 1528 if (k == XK_KP_Begin) return "KP_Begin"; 1529 if (k == XK_KP_Insert) return "KP_Insert"; 1530 if (k == XK_KP_Delete) return "KP_Delete"; 1531 if (k == XK_KP_Equal) return "KP_Equal"; 1532 if (k == XK_KP_Multiply) return "KP_Multiply"; 1533 if (k == XK_KP_Add) return "KP_Add"; 1534 if (k == XK_KP_Separator) return "KP_Separator"; 1535 if (k == XK_KP_Subtract) return "KP_Subtract"; 1536 if (k == XK_KP_Decimal) return "KP_Decimal"; 1537 if (k == XK_KP_Divide) return "KP_Divide"; 1538 if (k == XK_KP_0) return "KP_0"; 1539 if (k == XK_KP_1) return "KP_1"; 1540 if (k == XK_KP_2) return "KP_2"; 1541 if (k == XK_KP_3) return "KP_3"; 1542 if (k == XK_KP_4) return "KP_4"; 1543 if (k == XK_KP_5) return "KP_5"; 1544 if (k == XK_KP_6) return "KP_6"; 1545 if (k == XK_KP_7) return "KP_7"; 1546 if (k == XK_KP_8) return "KP_8"; 1547 if (k == XK_KP_9) return "KP_9"; 1548 if (k == XK_F1) return "F1"; 1549 if (k == XK_F2) return "F2"; 1550 if (k == XK_F3) return "F3"; 1551 if (k == XK_F4) return "F4"; 1552 if (k == XK_F5) return "F5"; 1553 if (k == XK_F6) return "F6"; 1554 if (k == XK_F7) return "F7"; 1555 if (k == XK_F8) return "F8"; 1556 if (k == XK_F9) return "F9"; 1557 if (k == XK_F10) return "F10"; 1558 if (k == XK_F11) return "F11"; 1559 if (k == XK_L1) return "L1"; 1560 if (k == XK_F12) return "F12"; 1561 if (k == XK_L2) return "L2"; 1562 if (k == XK_F13) return "F13"; 1563 if (k == XK_L3) return "L3"; 1564 if (k == XK_F14) return "F14"; 1565 if (k == XK_L4) return "L4"; 1566 if (k == XK_F15) return "F15"; 1567 if (k == XK_L5) return "L5"; 1568 if (k == XK_F16) return "F16"; 1569 if (k == XK_L6) return "L6"; 1570 if (k == XK_F17) return "F17"; 1571 if (k == XK_L7) return "L7"; 1572 if (k == XK_F18) return "F18"; 1573 if (k == XK_L8) return "L8"; 1574 if (k == XK_F19) return "F19"; 1575 if (k == XK_L9) return "L9"; 1576 if (k == XK_F20) return "F20"; 1577 if (k == XK_L10) return "L10"; 1578 if (k == XK_F21) return "F21"; 1579 if (k == XK_R1) return "R1"; 1580 if (k == XK_F22) return "F22"; 1581 if (k == XK_R2) return "R2"; 1582 if (k == XK_F23) return "F23"; 1583 if (k == XK_R3) return "R3"; 1584 if (k == XK_F24) return "F24"; 1585 if (k == XK_R4) return "R4"; 1586 if (k == XK_F25) return "F25"; 1587 if (k == XK_R5) return "R5"; 1588 if (k == XK_F26) return "F26"; 1589 if (k == XK_R6) return "R6"; 1590 if (k == XK_F27) return "F27"; 1591 if (k == XK_R7) return "R7"; 1592 if (k == XK_F28) return "F28"; 1593 if (k == XK_R8) return "R8"; 1594 if (k == XK_F29) return "F29"; 1595 if (k == XK_R9) return "R9"; 1596 if (k == XK_F30) return "F30"; 1597 if (k == XK_R10) return "R10"; 1598 if (k == XK_F31) return "F31"; 1599 if (k == XK_R11) return "R11"; 1600 if (k == XK_F32) return "F32"; 1601 if (k == XK_R12) return "R12"; 1602 if (k == XK_F33) return "F33"; 1603 if (k == XK_R13) return "R13"; 1604 if (k == XK_F34) return "F34"; 1605 if (k == XK_R14) return "R14"; 1606 if (k == XK_F35) return "F35"; 1607 if (k == XK_R15) return "R15"; 1608 if (k == XK_Shift_L) return "Shift_L"; 1609 if (k == XK_Shift_R) return "Shift_R"; 1610 if (k == XK_Control_L) return "Control_L"; 1611 if (k == XK_Control_R) return "Control_R"; 1612 if (k == XK_Caps_Lock) return "Caps_Lock"; 1613 if (k == XK_Shift_Lock) return "Shift_Lock"; 1614 if (k == XK_Meta_L) return "Meta_L"; 1615 if (k == XK_Meta_R) return "Meta_R"; 1616 if (k == XK_Alt_L) return "Alt_L"; 1617 if (k == XK_Alt_R) return "Alt_R"; 1618 if (k == XK_Super_L) return "Super_L"; 1619 if (k == XK_Super_R) return "Super_R"; 1620 if (k == XK_Hyper_L) return "Hyper_L"; 1621 if (k == XK_Hyper_R) return "Hyper_R"; 1622#endif /* XK_MISCELLANY */ 1623#ifdef XK_XKB_KEYS 1624 if (k == XK_ISO_Lock) return "ISO_Lock"; 1625 if (k == XK_ISO_Level2_Latch) return "ISO_Level2_Latch"; 1626 if (k == XK_ISO_Level3_Shift) return "ISO_Level3_Shift"; 1627 if (k == XK_ISO_Level3_Latch) return "ISO_Level3_Latch"; 1628 if (k == XK_ISO_Level3_Lock) return "ISO_Level3_Lock"; 1629 if (k == XK_ISO_Group_Shift) return "ISO_Group_Shift"; 1630 if (k == XK_ISO_Group_Latch) return "ISO_Group_Latch"; 1631 if (k == XK_ISO_Group_Lock) return "ISO_Group_Lock"; 1632 if (k == XK_ISO_Next_Group) return "ISO_Next_Group"; 1633 if (k == XK_ISO_Next_Group_Lock) return "ISO_Next_Group_Lock"; 1634 if (k == XK_ISO_Prev_Group) return "ISO_Prev_Group"; 1635 if (k == XK_ISO_Prev_Group_Lock) return "ISO_Prev_Group_Lock"; 1636 if (k == XK_ISO_First_Group) return "ISO_First_Group"; 1637 if (k == XK_ISO_First_Group_Lock) return "ISO_First_Group_Lock"; 1638 if (k == XK_ISO_Last_Group) return "ISO_Last_Group"; 1639 if (k == XK_ISO_Last_Group_Lock) return "ISO_Last_Group_Lock"; 1640 if (k == XK_ISO_Left_Tab) return "ISO_Left_Tab"; 1641 if (k == XK_ISO_Move_Line_Up) return "ISO_Move_Line_Up"; 1642 if (k == XK_ISO_Move_Line_Down) return "ISO_Move_Line_Down"; 1643 if (k == XK_ISO_Partial_Line_Up) return "ISO_Partial_Line_Up"; 1644 if (k == XK_ISO_Partial_Line_Down) return "ISO_Partial_Line_Down"; 1645 if (k == XK_ISO_Partial_Space_Left) return "ISO_Partial_Space_Left"; 1646 if (k == XK_ISO_Partial_Space_Right) return "ISO_Partial_Space_Right"; 1647 if (k == XK_ISO_Set_Margin_Left) return "ISO_Set_Margin_Left"; 1648 if (k == XK_ISO_Set_Margin_Right) return "ISO_Set_Margin_Right"; 1649 if (k == XK_ISO_Release_Margin_Left) return "ISO_Release_Margin_Left"; 1650 if (k == XK_ISO_Release_Margin_Right) return "ISO_Release_Margin_Right"; 1651 if (k == XK_ISO_Release_Both_Margins) return "ISO_Release_Both_Margins"; 1652 if (k == XK_ISO_Fast_Cursor_Left) return "ISO_Fast_Cursor_Left"; 1653 if (k == XK_ISO_Fast_Cursor_Right) return "ISO_Fast_Cursor_Right"; 1654 if (k == XK_ISO_Fast_Cursor_Up) return "ISO_Fast_Cursor_Up"; 1655 if (k == XK_ISO_Fast_Cursor_Down) return "ISO_Fast_Cursor_Down"; 1656 if (k == XK_ISO_Continuous_Underline) return "ISO_Continuous_Underline"; 1657 if (k == XK_ISO_Discontinuous_Underline) return "ISO_Discontinuous_Underline"; 1658 if (k == XK_ISO_Emphasize) return "ISO_Emphasize"; 1659 if (k == XK_ISO_Center_Object) return "ISO_Center_Object"; 1660 if (k == XK_ISO_Enter) return "ISO_Enter"; 1661 if (k == XK_dead_grave) return "dead_grave"; 1662 if (k == XK_dead_acute) return "dead_acute"; 1663 if (k == XK_dead_circumflex) return "dead_circumflex"; 1664 if (k == XK_dead_tilde) return "dead_tilde"; 1665 if (k == XK_dead_macron) return "dead_macron"; 1666 if (k == XK_dead_breve) return "dead_breve"; 1667 if (k == XK_dead_abovedot) return "dead_abovedot"; 1668 if (k == XK_dead_diaeresis) return "dead_diaeresis"; 1669 if (k == XK_dead_abovering) return "dead_abovering"; 1670 if (k == XK_dead_doubleacute) return "dead_doubleacute"; 1671 if (k == XK_dead_caron) return "dead_caron"; 1672 if (k == XK_dead_cedilla) return "dead_cedilla"; 1673 if (k == XK_dead_ogonek) return "dead_ogonek"; 1674 if (k == XK_dead_iota) return "dead_iota"; 1675 if (k == XK_dead_voiced_sound) return "dead_voiced_sound"; 1676 if (k == XK_dead_semivoiced_sound) return "dead_semivoiced_sound"; 1677 if (k == XK_dead_belowdot) return "dead_belowdot"; 1678 if (k == XK_First_Virtual_Screen) return "First_Virtual_Screen"; 1679 if (k == XK_Prev_Virtual_Screen) return "Prev_Virtual_Screen"; 1680 if (k == XK_Next_Virtual_Screen) return "Next_Virtual_Screen"; 1681 if (k == XK_Last_Virtual_Screen) return "Last_Virtual_Screen"; 1682 if (k == XK_Terminate_Server) return "Terminate_Server"; 1683 if (k == XK_AccessX_Enable) return "AccessX_Enable"; 1684 if (k == XK_AccessX_Feedback_Enable) return "AccessX_Feedback_Enable"; 1685 if (k == XK_RepeatKeys_Enable) return "RepeatKeys_Enable"; 1686 if (k == XK_SlowKeys_Enable) return "SlowKeys_Enable"; 1687 if (k == XK_BounceKeys_Enable) return "BounceKeys_Enable"; 1688 if (k == XK_StickyKeys_Enable) return "StickyKeys_Enable"; 1689 if (k == XK_MouseKeys_Enable) return "MouseKeys_Enable"; 1690 if (k == XK_MouseKeys_Accel_Enable) return "MouseKeys_Accel_Enable"; 1691 if (k == XK_Overlay1_Enable) return "Overlay1_Enable"; 1692 if (k == XK_Overlay2_Enable) return "Overlay2_Enable"; 1693 if (k == XK_AudibleBell_Enable) return "AudibleBell_Enable"; 1694 if (k == XK_Pointer_Left) return "Pointer_Left"; 1695 if (k == XK_Pointer_Right) return "Pointer_Right"; 1696 if (k == XK_Pointer_Up) return "Pointer_Up"; 1697 if (k == XK_Pointer_Down) return "Pointer_Down"; 1698 if (k == XK_Pointer_UpLeft) return "Pointer_UpLeft"; 1699 if (k == XK_Pointer_UpRight) return "Pointer_UpRight"; 1700 if (k == XK_Pointer_DownLeft) return "Pointer_DownLeft"; 1701 if (k == XK_Pointer_DownRight) return "Pointer_DownRight"; 1702 if (k == XK_Pointer_Button_Dflt) return "Pointer_Button_Dflt"; 1703 if (k == XK_Pointer_Button1) return "Pointer_Button1"; 1704 if (k == XK_Pointer_Button2) return "Pointer_Button2"; 1705 if (k == XK_Pointer_Button3) return "Pointer_Button3"; 1706 if (k == XK_Pointer_Button4) return "Pointer_Button4"; 1707 if (k == XK_Pointer_Button5) return "Pointer_Button5"; 1708 if (k == XK_Pointer_DblClick_Dflt) return "Pointer_DblClick_Dflt"; 1709 if (k == XK_Pointer_DblClick1) return "Pointer_DblClick1"; 1710 if (k == XK_Pointer_DblClick2) return "Pointer_DblClick2"; 1711 if (k == XK_Pointer_DblClick3) return "Pointer_DblClick3"; 1712 if (k == XK_Pointer_DblClick4) return "Pointer_DblClick4"; 1713 if (k == XK_Pointer_DblClick5) return "Pointer_DblClick5"; 1714 if (k == XK_Pointer_Drag_Dflt) return "Pointer_Drag_Dflt"; 1715 if (k == XK_Pointer_Drag1) return "Pointer_Drag1"; 1716 if (k == XK_Pointer_Drag2) return "Pointer_Drag2"; 1717 if (k == XK_Pointer_Drag3) return "Pointer_Drag3"; 1718 if (k == XK_Pointer_Drag4) return "Pointer_Drag4"; 1719 if (k == XK_Pointer_Drag5) return "Pointer_Drag5"; 1720 if (k == XK_Pointer_EnableKeys) return "Pointer_EnableKeys"; 1721 if (k == XK_Pointer_Accelerate) return "Pointer_Accelerate"; 1722 if (k == XK_Pointer_DfltBtnNext) return "Pointer_DfltBtnNext"; 1723 if (k == XK_Pointer_DfltBtnPrev) return "Pointer_DfltBtnPrev"; 1724#endif 1725#ifdef XK_3270 1726 if (k == XK_3270_Duplicate) return "3270_Duplicate"; 1727 if (k == XK_3270_FieldMark) return "3270_FieldMark"; 1728 if (k == XK_3270_Right2) return "3270_Right2"; 1729 if (k == XK_3270_Left2) return "3270_Left2"; 1730 if (k == XK_3270_BackTab) return "3270_BackTab"; 1731 if (k == XK_3270_EraseEOF) return "3270_EraseEOF"; 1732 if (k == XK_3270_EraseInput) return "3270_EraseInput"; 1733 if (k == XK_3270_Reset) return "3270_Reset"; 1734 if (k == XK_3270_Quit) return "3270_Quit"; 1735 if (k == XK_3270_PA1) return "3270_PA1"; 1736 if (k == XK_3270_PA2) return "3270_PA2"; 1737 if (k == XK_3270_PA3) return "3270_PA3"; 1738 if (k == XK_3270_Test) return "3270_Test"; 1739 if (k == XK_3270_Attn) return "3270_Attn"; 1740 if (k == XK_3270_CursorBlink) return "3270_CursorBlink"; 1741 if (k == XK_3270_AltCursor) return "3270_AltCursor"; 1742 if (k == XK_3270_KeyClick) return "3270_KeyClick"; 1743 if (k == XK_3270_Jump) return "3270_Jump"; 1744 if (k == XK_3270_Ident) return "3270_Ident"; 1745 if (k == XK_3270_Rule) return "3270_Rule"; 1746 if (k == XK_3270_Copy) return "3270_Copy"; 1747 if (k == XK_3270_Play) return "3270_Play"; 1748 if (k == XK_3270_Setup) return "3270_Setup"; 1749 if (k == XK_3270_Record) return "3270_Record"; 1750 if (k == XK_3270_ChangeScreen) return "3270_ChangeScreen"; 1751 if (k == XK_3270_DeleteWord) return "3270_DeleteWord"; 1752 if (k == XK_3270_ExSelect) return "3270_ExSelect"; 1753 if (k == XK_3270_CursorSelect) return "3270_CursorSelect"; 1754 if (k == XK_3270_PrintScreen) return "3270_PrintScreen"; 1755 if (k == XK_3270_Enter) return "3270_Enter"; 1756#endif 1757#ifdef XK_LATIN1 1758 if (k == XK_space) return "space"; 1759 if (k == XK_exclam) return "exclam"; 1760 if (k == XK_quotedbl) return "quotedbl"; 1761 if (k == XK_numbersign) return "numbersign"; 1762 if (k == XK_dollar) return "dollar"; 1763 if (k == XK_percent) return "percent"; 1764 if (k == XK_ampersand) return "ampersand"; 1765 if (k == XK_apostrophe) return "apostrophe"; 1766 if (k == XK_quoteright) return "quoteright"; 1767 if (k == XK_parenleft) return "parenleft"; 1768 if (k == XK_parenright) return "parenright"; 1769 if (k == XK_asterisk) return "asterisk"; 1770 if (k == XK_plus) return "plus"; 1771 if (k == XK_comma) return "comma"; 1772 if (k == XK_minus) return "minus"; 1773 if (k == XK_period) return "period"; 1774 if (k == XK_slash) return "slash"; 1775 if (k == XK_0) return "0"; 1776 if (k == XK_1) return "1"; 1777 if (k == XK_2) return "2"; 1778 if (k == XK_3) return "3"; 1779 if (k == XK_4) return "4"; 1780 if (k == XK_5) return "5"; 1781 if (k == XK_6) return "6"; 1782 if (k == XK_7) return "7"; 1783 if (k == XK_8) return "8"; 1784 if (k == XK_9) return "9"; 1785 if (k == XK_colon) return "colon"; 1786 if (k == XK_semicolon) return "semicolon"; 1787 if (k == XK_less) return "less"; 1788 if (k == XK_equal) return "equal"; 1789 if (k == XK_greater) return "greater"; 1790 if (k == XK_question) return "question"; 1791 if (k == XK_at) return "at"; 1792 if (k == XK_A) return "A"; 1793 if (k == XK_B) return "B"; 1794 if (k == XK_C) return "C"; 1795 if (k == XK_D) return "D"; 1796 if (k == XK_E) return "E"; 1797 if (k == XK_F) return "F"; 1798 if (k == XK_G) return "G"; 1799 if (k == XK_H) return "H"; 1800 if (k == XK_I) return "I"; 1801 if (k == XK_J) return "J"; 1802 if (k == XK_K) return "K"; 1803 if (k == XK_L) return "L"; 1804 if (k == XK_M) return "M"; 1805 if (k == XK_N) return "N"; 1806 if (k == XK_O) return "O"; 1807 if (k == XK_P) return "P"; 1808 if (k == XK_Q) return "Q"; 1809 if (k == XK_R) return "R"; 1810 if (k == XK_S) return "S"; 1811 if (k == XK_T) return "T"; 1812 if (k == XK_U) return "U"; 1813 if (k == XK_V) return "V"; 1814 if (k == XK_W) return "W"; 1815 if (k == XK_X) return "X"; 1816 if (k == XK_Y) return "Y"; 1817 if (k == XK_Z) return "Z"; 1818 if (k == XK_bracketleft) return "bracketleft"; 1819 if (k == XK_backslash) return "backslash"; 1820 if (k == XK_bracketright) return "bracketright"; 1821 if (k == XK_asciicircum) return "asciicircum"; 1822 if (k == XK_underscore) return "underscore"; 1823 if (k == XK_grave) return "grave"; 1824 if (k == XK_quoteleft) return "quoteleft"; 1825 if (k == XK_a) return "a"; 1826 if (k == XK_b) return "b"; 1827 if (k == XK_c) return "c"; 1828 if (k == XK_d) return "d"; 1829 if (k == XK_e) return "e"; 1830 if (k == XK_f) return "f"; 1831 if (k == XK_g) return "g"; 1832 if (k == XK_h) return "h"; 1833 if (k == XK_i) return "i"; 1834 if (k == XK_j) return "j"; 1835 if (k == XK_k) return "k"; 1836 if (k == XK_l) return "l"; 1837 if (k == XK_m) return "m"; 1838 if (k == XK_n) return "n"; 1839 if (k == XK_o) return "o"; 1840 if (k == XK_p) return "p"; 1841 if (k == XK_q) return "q"; 1842 if (k == XK_r) return "r"; 1843 if (k == XK_s) return "s"; 1844 if (k == XK_t) return "t"; 1845 if (k == XK_u) return "u"; 1846 if (k == XK_v) return "v"; 1847 if (k == XK_w) return "w"; 1848 if (k == XK_x) return "x"; 1849 if (k == XK_y) return "y"; 1850 if (k == XK_z) return "z"; 1851 if (k == XK_braceleft) return "braceleft"; 1852 if (k == XK_bar) return "bar"; 1853 if (k == XK_braceright) return "braceright"; 1854 if (k == XK_asciitilde) return "asciitilde"; 1855 if (k == XK_nobreakspace) return "nobreakspace"; 1856 if (k == XK_exclamdown) return "exclamdown"; 1857 if (k == XK_cent) return "cent"; 1858 if (k == XK_sterling) return "sterling"; 1859 if (k == XK_currency) return "currency"; 1860 if (k == XK_yen) return "yen"; 1861 if (k == XK_brokenbar) return "brokenbar"; 1862 if (k == XK_section) return "section"; 1863 if (k == XK_diaeresis) return "diaeresis"; 1864 if (k == XK_copyright) return "copyright"; 1865 if (k == XK_ordfeminine) return "ordfeminine"; 1866 if (k == XK_guillemotleft) return "guillemotleft"; 1867 if (k == XK_notsign) return "notsign"; 1868 if (k == XK_hyphen) return "hyphen"; 1869 if (k == XK_registered) return "registered"; 1870 if (k == XK_macron) return "macron"; 1871 if (k == XK_degree) return "degree"; 1872 if (k == XK_plusminus) return "plusminus"; 1873 if (k == XK_twosuperior) return "twosuperior"; 1874 if (k == XK_threesuperior) return "threesuperior"; 1875 if (k == XK_acute) return "acute"; 1876 if (k == XK_mu) return "mu"; 1877 if (k == XK_paragraph) return "paragraph"; 1878 if (k == XK_periodcentered) return "periodcentered"; 1879 if (k == XK_cedilla) return "cedilla"; 1880 if (k == XK_onesuperior) return "onesuperior"; 1881 if (k == XK_masculine) return "masculine"; 1882 if (k == XK_guillemotright) return "guillemotright"; 1883 if (k == XK_onequarter) return "onequarter"; 1884 if (k == XK_onehalf) return "onehalf"; 1885 if (k == XK_threequarters) return "threequarters"; 1886 if (k == XK_questiondown) return "questiondown"; 1887 if (k == XK_Agrave) return "Agrave"; 1888 if (k == XK_Aacute) return "Aacute"; 1889 if (k == XK_Acircumflex) return "Acircumflex"; 1890 if (k == XK_Atilde) return "Atilde"; 1891 if (k == XK_Adiaeresis) return "Adiaeresis"; 1892 if (k == XK_Aring) return "Aring"; 1893 if (k == XK_AE) return "AE"; 1894 if (k == XK_Ccedilla) return "Ccedilla"; 1895 if (k == XK_Egrave) return "Egrave"; 1896 if (k == XK_Eacute) return "Eacute"; 1897 if (k == XK_Ecircumflex) return "Ecircumflex"; 1898 if (k == XK_Ediaeresis) return "Ediaeresis"; 1899 if (k == XK_Igrave) return "Igrave"; 1900 if (k == XK_Iacute) return "Iacute"; 1901 if (k == XK_Icircumflex) return "Icircumflex"; 1902 if (k == XK_Idiaeresis) return "Idiaeresis"; 1903 if (k == XK_ETH) return "ETH"; 1904 if (k == XK_Eth) return "Eth"; 1905 if (k == XK_Ntilde) return "Ntilde"; 1906 if (k == XK_Ograve) return "Ograve"; 1907 if (k == XK_Oacute) return "Oacute"; 1908 if (k == XK_Ocircumflex) return "Ocircumflex"; 1909 if (k == XK_Otilde) return "Otilde"; 1910 if (k == XK_Odiaeresis) return "Odiaeresis"; 1911 if (k == XK_multiply) return "multiply"; 1912 if (k == XK_Ooblique) return "Ooblique"; 1913 if (k == XK_Ugrave) return "Ugrave"; 1914 if (k == XK_Uacute) return "Uacute"; 1915 if (k == XK_Ucircumflex) return "Ucircumflex"; 1916 if (k == XK_Udiaeresis) return "Udiaeresis"; 1917 if (k == XK_Yacute) return "Yacute"; 1918 if (k == XK_THORN) return "THORN"; 1919 if (k == XK_Thorn) return "Thorn"; 1920 if (k == XK_ssharp) return "ssharp"; 1921 if (k == XK_agrave) return "agrave"; 1922 if (k == XK_aacute) return "aacute"; 1923 if (k == XK_acircumflex) return "acircumflex"; 1924 if (k == XK_atilde) return "atilde"; 1925 if (k == XK_adiaeresis) return "adiaeresis"; 1926 if (k == XK_aring) return "aring"; 1927 if (k == XK_ae) return "ae"; 1928 if (k == XK_ccedilla) return "ccedilla"; 1929 if (k == XK_egrave) return "egrave"; 1930 if (k == XK_eacute) return "eacute"; 1931 if (k == XK_ecircumflex) return "ecircumflex"; 1932 if (k == XK_ediaeresis) return "ediaeresis"; 1933 if (k == XK_igrave) return "igrave"; 1934 if (k == XK_iacute) return "iacute"; 1935 if (k == XK_icircumflex) return "icircumflex"; 1936 if (k == XK_idiaeresis) return "idiaeresis"; 1937 if (k == XK_eth) return "eth"; 1938 if (k == XK_ntilde) return "ntilde"; 1939 if (k == XK_ograve) return "ograve"; 1940 if (k == XK_oacute) return "oacute"; 1941 if (k == XK_ocircumflex) return "ocircumflex"; 1942 if (k == XK_otilde) return "otilde"; 1943 if (k == XK_odiaeresis) return "odiaeresis"; 1944 if (k == XK_division) return "division"; 1945 if (k == XK_oslash) return "oslash"; 1946 if (k == XK_ugrave) return "ugrave"; 1947 if (k == XK_uacute) return "uacute"; 1948 if (k == XK_ucircumflex) return "ucircumflex"; 1949 if (k == XK_udiaeresis) return "udiaeresis"; 1950 if (k == XK_yacute) return "yacute"; 1951 if (k == XK_thorn) return "thorn"; 1952 if (k == XK_ydiaeresis) return "ydiaeresis"; 1953#endif /* XK_LATIN1 */ 1954#ifdef XK_LATIN2 1955 if (k == XK_Aogonek) return "Aogonek"; 1956 if (k == XK_breve) return "breve"; 1957 if (k == XK_Lstroke) return "Lstroke"; 1958 if (k == XK_Lcaron) return "Lcaron"; 1959 if (k == XK_Sacute) return "Sacute"; 1960 if (k == XK_Scaron) return "Scaron"; 1961 if (k == XK_Scedilla) return "Scedilla"; 1962 if (k == XK_Tcaron) return "Tcaron"; 1963 if (k == XK_Zacute) return "Zacute"; 1964 if (k == XK_Zcaron) return "Zcaron"; 1965 if (k == XK_Zabovedot) return "Zabovedot"; 1966 if (k == XK_aogonek) return "aogonek"; 1967 if (k == XK_ogonek) return "ogonek"; 1968 if (k == XK_lstroke) return "lstroke"; 1969 if (k == XK_lcaron) return "lcaron"; 1970 if (k == XK_sacute) return "sacute"; 1971 if (k == XK_caron) return "caron"; 1972 if (k == XK_scaron) return "scaron"; 1973 if (k == XK_scedilla) return "scedilla"; 1974 if (k == XK_tcaron) return "tcaron"; 1975 if (k == XK_zacute) return "zacute"; 1976 if (k == XK_doubleacute) return "doubleacute"; 1977 if (k == XK_zcaron) return "zcaron"; 1978 if (k == XK_zabovedot) return "zabovedot"; 1979 if (k == XK_Racute) return "Racute"; 1980 if (k == XK_Abreve) return "Abreve"; 1981 if (k == XK_Lacute) return "Lacute"; 1982 if (k == XK_Cacute) return "Cacute"; 1983 if (k == XK_Ccaron) return "Ccaron"; 1984 if (k == XK_Eogonek) return "Eogonek"; 1985 if (k == XK_Ecaron) return "Ecaron"; 1986 if (k == XK_Dcaron) return "Dcaron"; 1987 if (k == XK_Dstroke) return "Dstroke"; 1988 if (k == XK_Nacute) return "Nacute"; 1989 if (k == XK_Ncaron) return "Ncaron"; 1990 if (k == XK_Odoubleacute) return "Odoubleacute"; 1991 if (k == XK_Rcaron) return "Rcaron"; 1992 if (k == XK_Uring) return "Uring"; 1993 if (k == XK_Udoubleacute) return "Udoubleacute"; 1994 if (k == XK_Tcedilla) return "Tcedilla"; 1995 if (k == XK_racute) return "racute"; 1996 if (k == XK_abreve) return "abreve"; 1997 if (k == XK_lacute) return "lacute"; 1998 if (k == XK_cacute) return "cacute"; 1999 if (k == XK_ccaron) return "ccaron"; 2000 if (k == XK_eogonek) return "eogonek"; 2001 if (k == XK_ecaron) return "ecaron"; 2002 if (k == XK_dcaron) return "dcaron"; 2003 if (k == XK_dstroke) return "dstroke"; 2004 if (k == XK_nacute) return "nacute"; 2005 if (k == XK_ncaron) return "ncaron"; 2006 if (k == XK_odoubleacute) return "odoubleacute"; 2007 if (k == XK_udoubleacute) return "udoubleacute"; 2008 if (k == XK_rcaron) return "rcaron"; 2009 if (k == XK_uring) return "uring"; 2010 if (k == XK_tcedilla) return "tcedilla"; 2011 if (k == XK_abovedot) return "abovedot"; 2012#endif /* XK_LATIN2 */ 2013#ifdef XK_LATIN3 2014 if (k == XK_Hstroke) return "Hstroke"; 2015 if (k == XK_Hcircumflex) return "Hcircumflex"; 2016 if (k == XK_Iabovedot) return "Iabovedot"; 2017 if (k == XK_Gbreve) return "Gbreve"; 2018 if (k == XK_Jcircumflex) return "Jcircumflex"; 2019 if (k == XK_hstroke) return "hstroke"; 2020 if (k == XK_hcircumflex) return "hcircumflex"; 2021 if (k == XK_idotless) return "idotless"; 2022 if (k == XK_gbreve) return "gbreve"; 2023 if (k == XK_jcircumflex) return "jcircumflex"; 2024 if (k == XK_Cabovedot) return "Cabovedot"; 2025 if (k == XK_Ccircumflex) return "Ccircumflex"; 2026 if (k == XK_Gabovedot) return "Gabovedot"; 2027 if (k == XK_Gcircumflex) return "Gcircumflex"; 2028 if (k == XK_Ubreve) return "Ubreve"; 2029 if (k == XK_Scircumflex) return "Scircumflex"; 2030 if (k == XK_cabovedot) return "cabovedot"; 2031 if (k == XK_ccircumflex) return "ccircumflex"; 2032 if (k == XK_gabovedot) return "gabovedot"; 2033 if (k == XK_gcircumflex) return "gcircumflex"; 2034 if (k == XK_ubreve) return "ubreve"; 2035 if (k == XK_scircumflex) return "scircumflex"; 2036#endif /* XK_LATIN3 */ 2037#ifdef XK_LATIN4 2038 if (k == XK_kra) return "kra"; 2039 if (k == XK_kappa) return "kappa"; 2040 if (k == XK_Rcedilla) return "Rcedilla"; 2041 if (k == XK_Itilde) return "Itilde"; 2042 if (k == XK_Lcedilla) return "Lcedilla"; 2043 if (k == XK_Emacron) return "Emacron"; 2044 if (k == XK_Gcedilla) return "Gcedilla"; 2045 if (k == XK_Tslash) return "Tslash"; 2046 if (k == XK_rcedilla) return "rcedilla"; 2047 if (k == XK_itilde) return "itilde"; 2048 if (k == XK_lcedilla) return "lcedilla"; 2049 if (k == XK_emacron) return "emacron"; 2050 if (k == XK_gcedilla) return "gcedilla"; 2051 if (k == XK_tslash) return "tslash"; 2052 if (k == XK_ENG) return "ENG"; 2053 if (k == XK_eng) return "eng"; 2054 if (k == XK_Amacron) return "Amacron"; 2055 if (k == XK_Iogonek) return "Iogonek"; 2056 if (k == XK_Eabovedot) return "Eabovedot"; 2057 if (k == XK_Imacron) return "Imacron"; 2058 if (k == XK_Ncedilla) return "Ncedilla"; 2059 if (k == XK_Omacron) return "Omacron"; 2060 if (k == XK_Kcedilla) return "Kcedilla"; 2061 if (k == XK_Uogonek) return "Uogonek"; 2062 if (k == XK_Utilde) return "Utilde"; 2063 if (k == XK_Umacron) return "Umacron"; 2064 if (k == XK_amacron) return "amacron"; 2065 if (k == XK_iogonek) return "iogonek"; 2066 if (k == XK_eabovedot) return "eabovedot"; 2067 if (k == XK_imacron) return "imacron"; 2068 if (k == XK_ncedilla) return "ncedilla"; 2069 if (k == XK_omacron) return "omacron"; 2070 if (k == XK_kcedilla) return "kcedilla"; 2071 if (k == XK_uogonek) return "uogonek"; 2072 if (k == XK_utilde) return "utilde"; 2073 if (k == XK_umacron) return "umacron"; 2074#endif /* XK_LATIN4 */ 2075#ifdef XK_KATAKANA 2076 if (k == XK_overline) return "overline"; 2077 if (k == XK_kana_fullstop) return "kana_fullstop"; 2078 if (k == XK_kana_openingbracket) return "kana_openingbracket"; 2079 if (k == XK_kana_closingbracket) return "kana_closingbracket"; 2080 if (k == XK_kana_comma) return "kana_comma"; 2081 if (k == XK_kana_conjunctive) return "kana_conjunctive"; 2082 if (k == XK_kana_middledot) return "kana_middledot"; 2083 if (k == XK_kana_WO) return "kana_WO"; 2084 if (k == XK_kana_a) return "kana_a"; 2085 if (k == XK_kana_i) return "kana_i"; 2086 if (k == XK_kana_u) return "kana_u"; 2087 if (k == XK_kana_e) return "kana_e"; 2088 if (k == XK_kana_o) return "kana_o"; 2089 if (k == XK_kana_ya) return "kana_ya"; 2090 if (k == XK_kana_yu) return "kana_yu"; 2091 if (k == XK_kana_yo) return "kana_yo"; 2092 if (k == XK_kana_tsu) return "kana_tsu"; 2093 if (k == XK_kana_tu) return "kana_tu"; 2094 if (k == XK_prolongedsound) return "prolongedsound"; 2095 if (k == XK_kana_A) return "kana_A"; 2096 if (k == XK_kana_I) return "kana_I"; 2097 if (k == XK_kana_U) return "kana_U"; 2098 if (k == XK_kana_E) return "kana_E"; 2099 if (k == XK_kana_O) return "kana_O"; 2100 if (k == XK_kana_KA) return "kana_KA"; 2101 if (k == XK_kana_KI) return "kana_KI"; 2102 if (k == XK_kana_KU) return "kana_KU"; 2103 if (k == XK_kana_KE) return "kana_KE"; 2104 if (k == XK_kana_KO) return "kana_KO"; 2105 if (k == XK_kana_SA) return "kana_SA"; 2106 if (k == XK_kana_SHI) return "kana_SHI"; 2107 if (k == XK_kana_SU) return "kana_SU"; 2108 if (k == XK_kana_SE) return "kana_SE"; 2109 if (k == XK_kana_SO) return "kana_SO"; 2110 if (k == XK_kana_TA) return "kana_TA"; 2111 if (k == XK_kana_CHI) return "kana_CHI"; 2112 if (k == XK_kana_TI) return "kana_TI"; 2113 if (k == XK_kana_TSU) return "kana_TSU"; 2114 if (k == XK_kana_TU) return "kana_TU"; 2115 if (k == XK_kana_TE) return "kana_TE"; 2116 if (k == XK_kana_TO) return "kana_TO"; 2117 if (k == XK_kana_NA) return "kana_NA"; 2118 if (k == XK_kana_NI) return "kana_NI"; 2119 if (k == XK_kana_NU) return "kana_NU"; 2120 if (k == XK_kana_NE) return "kana_NE"; 2121 if (k == XK_kana_NO) return "kana_NO"; 2122 if (k == XK_kana_HA) return "kana_HA"; 2123 if (k == XK_kana_HI) return "kana_HI"; 2124 if (k == XK_kana_FU) return "kana_FU"; 2125 if (k == XK_kana_HU) return "kana_HU"; 2126 if (k == XK_kana_HE) return "kana_HE"; 2127 if (k == XK_kana_HO) return "kana_HO"; 2128 if (k == XK_kana_MA) return "kana_MA"; 2129 if (k == XK_kana_MI) return "kana_MI"; 2130 if (k == XK_kana_MU) return "kana_MU"; 2131 if (k == XK_kana_ME) return "kana_ME"; 2132 if (k == XK_kana_MO) return "kana_MO"; 2133 if (k == XK_kana_YA) return "kana_YA"; 2134 if (k == XK_kana_YU) return "kana_YU"; 2135 if (k == XK_kana_YO) return "kana_YO"; 2136 if (k == XK_kana_RA) return "kana_RA"; 2137 if (k == XK_kana_RI) return "kana_RI"; 2138 if (k == XK_kana_RU) return "kana_RU"; 2139 if (k == XK_kana_RE) return "kana_RE"; 2140 if (k == XK_kana_RO) return "kana_RO"; 2141 if (k == XK_kana_WA) return "kana_WA"; 2142 if (k == XK_kana_N) return "kana_N"; 2143 if (k == XK_voicedsound) return "voicedsound"; 2144 if (k == XK_semivoicedsound) return "semivoicedsound"; 2145 if (k == XK_kana_switch) return "kana_switch"; 2146#endif /* XK_KATAKANA */ 2147#ifdef XK_ARABIC 2148 if (k == XK_Arabic_comma) return "Arabic_comma"; 2149 if (k == XK_Arabic_semicolon) return "Arabic_semicolon"; 2150 if (k == XK_Arabic_question_mark) return "Arabic_question_mark"; 2151 if (k == XK_Arabic_hamza) return "Arabic_hamza"; 2152 if (k == XK_Arabic_maddaonalef) return "Arabic_maddaonalef"; 2153 if (k == XK_Arabic_hamzaonalef) return "Arabic_hamzaonalef"; 2154 if (k == XK_Arabic_hamzaonwaw) return "Arabic_hamzaonwaw"; 2155 if (k == XK_Arabic_hamzaunderalef) return "Arabic_hamzaunderalef"; 2156 if (k == XK_Arabic_hamzaonyeh) return "Arabic_hamzaonyeh"; 2157 if (k == XK_Arabic_alef) return "Arabic_alef"; 2158 if (k == XK_Arabic_beh) return "Arabic_beh"; 2159 if (k == XK_Arabic_tehmarbuta) return "Arabic_tehmarbuta"; 2160 if (k == XK_Arabic_teh) return "Arabic_teh"; 2161 if (k == XK_Arabic_theh) return "Arabic_theh"; 2162 if (k == XK_Arabic_jeem) return "Arabic_jeem"; 2163 if (k == XK_Arabic_hah) return "Arabic_hah"; 2164 if (k == XK_Arabic_khah) return "Arabic_khah"; 2165 if (k == XK_Arabic_dal) return "Arabic_dal"; 2166 if (k == XK_Arabic_thal) return "Arabic_thal"; 2167 if (k == XK_Arabic_ra) return "Arabic_ra"; 2168 if (k == XK_Arabic_zain) return "Arabic_zain"; 2169 if (k == XK_Arabic_seen) return "Arabic_seen"; 2170 if (k == XK_Arabic_sheen) return "Arabic_sheen"; 2171 if (k == XK_Arabic_sad) return "Arabic_sad"; 2172 if (k == XK_Arabic_dad) return "Arabic_dad"; 2173 if (k == XK_Arabic_tah) return "Arabic_tah"; 2174 if (k == XK_Arabic_zah) return "Arabic_zah"; 2175 if (k == XK_Arabic_ain) return "Arabic_ain"; 2176 if (k == XK_Arabic_ghain) return "Arabic_ghain"; 2177 if (k == XK_Arabic_tatweel) return "Arabic_tatweel"; 2178 if (k == XK_Arabic_feh) return "Arabic_feh"; 2179 if (k == XK_Arabic_qaf) return "Arabic_qaf"; 2180 if (k == XK_Arabic_kaf) return "Arabic_kaf"; 2181 if (k == XK_Arabic_lam) return "Arabic_lam"; 2182 if (k == XK_Arabic_meem) return "Arabic_meem"; 2183 if (k == XK_Arabic_noon) return "Arabic_noon"; 2184 if (k == XK_Arabic_ha) return "Arabic_ha"; 2185 if (k == XK_Arabic_heh) return "Arabic_heh"; 2186 if (k == XK_Arabic_waw) return "Arabic_waw"; 2187 if (k == XK_Arabic_alefmaksura) return "Arabic_alefmaksura"; 2188 if (k == XK_Arabic_yeh) return "Arabic_yeh"; 2189 if (k == XK_Arabic_fathatan) return "Arabic_fathatan"; 2190 if (k == XK_Arabic_dammatan) return "Arabic_dammatan"; 2191 if (k == XK_Arabic_kasratan) return "Arabic_kasratan"; 2192 if (k == XK_Arabic_fatha) return "Arabic_fatha"; 2193 if (k == XK_Arabic_damma) return "Arabic_damma"; 2194 if (k == XK_Arabic_kasra) return "Arabic_kasra"; 2195 if (k == XK_Arabic_shadda) return "Arabic_shadda"; 2196 if (k == XK_Arabic_sukun) return "Arabic_sukun"; 2197 if (k == XK_Arabic_switch) return "Arabic_switch"; 2198#endif /* XK_ARABIC */ 2199#ifdef XK_CYRILLIC 2200 if (k == XK_Serbian_dje) return "Serbian_dje"; 2201 if (k == XK_Macedonia_gje) return "Macedonia_gje"; 2202 if (k == XK_Cyrillic_io) return "Cyrillic_io"; 2203 if (k == XK_Ukrainian_ie) return "Ukrainian_ie"; 2204 if (k == XK_Ukranian_je) return "Ukranian_je"; 2205 if (k == XK_Macedonia_dse) return "Macedonia_dse"; 2206 if (k == XK_Ukrainian_i) return "Ukrainian_i"; 2207 if (k == XK_Ukranian_i) return "Ukranian_i"; 2208 if (k == XK_Ukrainian_yi) return "Ukrainian_yi"; 2209 if (k == XK_Ukranian_yi) return "Ukranian_yi"; 2210 if (k == XK_Cyrillic_je) return "Cyrillic_je"; 2211 if (k == XK_Serbian_je) return "Serbian_je"; 2212 if (k == XK_Cyrillic_lje) return "Cyrillic_lje"; 2213 if (k == XK_Serbian_lje) return "Serbian_lje"; 2214 if (k == XK_Cyrillic_nje) return "Cyrillic_nje"; 2215 if (k == XK_Serbian_nje) return "Serbian_nje"; 2216 if (k == XK_Serbian_tshe) return "Serbian_tshe"; 2217 if (k == XK_Macedonia_kje) return "Macedonia_kje"; 2218 if (k == XK_Byelorussian_shortu) return "Byelorussian_shortu"; 2219 if (k == XK_Cyrillic_dzhe) return "Cyrillic_dzhe"; 2220 if (k == XK_Serbian_dze) return "Serbian_dze"; 2221 if (k == XK_numerosign) return "numerosign"; 2222 if (k == XK_Serbian_DJE) return "Serbian_DJE"; 2223 if (k == XK_Macedonia_GJE) return "Macedonia_GJE"; 2224 if (k == XK_Cyrillic_IO) return "Cyrillic_IO"; 2225 if (k == XK_Ukrainian_IE) return "Ukrainian_IE"; 2226 if (k == XK_Ukranian_JE) return "Ukranian_JE"; 2227 if (k == XK_Macedonia_DSE) return "Macedonia_DSE"; 2228 if (k == XK_Ukrainian_I) return "Ukrainian_I"; 2229 if (k == XK_Ukranian_I) return "Ukranian_I"; 2230 if (k == XK_Ukrainian_YI) return "Ukrainian_YI"; 2231 if (k == XK_Ukranian_YI) return "Ukranian_YI"; 2232 if (k == XK_Cyrillic_JE) return "Cyrillic_JE"; 2233 if (k == XK_Serbian_JE) return "Serbian_JE"; 2234 if (k == XK_Cyrillic_LJE) return "Cyrillic_LJE"; 2235 if (k == XK_Serbian_LJE) return "Serbian_LJE"; 2236 if (k == XK_Cyrillic_NJE) return "Cyrillic_NJE"; 2237 if (k == XK_Serbian_NJE) return "Serbian_NJE"; 2238 if (k == XK_Serbian_TSHE) return "Serbian_TSHE"; 2239 if (k == XK_Macedonia_KJE) return "Macedonia_KJE"; 2240 if (k == XK_Byelorussian_SHORTU) return "Byelorussian_SHORTU"; 2241 if (k == XK_Cyrillic_DZHE) return "Cyrillic_DZHE"; 2242 if (k == XK_Serbian_DZE) return "Serbian_DZE"; 2243 if (k == XK_Cyrillic_yu) return "Cyrillic_yu"; 2244 if (k == XK_Cyrillic_a) return "Cyrillic_a"; 2245 if (k == XK_Cyrillic_be) return "Cyrillic_be"; 2246 if (k == XK_Cyrillic_tse) return "Cyrillic_tse"; 2247 if (k == XK_Cyrillic_de) return "Cyrillic_de"; 2248 if (k == XK_Cyrillic_ie) return "Cyrillic_ie"; 2249 if (k == XK_Cyrillic_ef) return "Cyrillic_ef"; 2250 if (k == XK_Cyrillic_ghe) return "Cyrillic_ghe"; 2251 if (k == XK_Cyrillic_ha) return "Cyrillic_ha"; 2252 if (k == XK_Cyrillic_i) return "Cyrillic_i"; 2253 if (k == XK_Cyrillic_shorti) return "Cyrillic_shorti"; 2254 if (k == XK_Cyrillic_ka) return "Cyrillic_ka"; 2255 if (k == XK_Cyrillic_el) return "Cyrillic_el"; 2256 if (k == XK_Cyrillic_em) return "Cyrillic_em"; 2257 if (k == XK_Cyrillic_en) return "Cyrillic_en"; 2258 if (k == XK_Cyrillic_o) return "Cyrillic_o"; 2259 if (k == XK_Cyrillic_pe) return "Cyrillic_pe"; 2260 if (k == XK_Cyrillic_ya) return "Cyrillic_ya"; 2261 if (k == XK_Cyrillic_er) return "Cyrillic_er"; 2262 if (k == XK_Cyrillic_es) return "Cyrillic_es"; 2263 if (k == XK_Cyrillic_te) return "Cyrillic_te"; 2264 if (k == XK_Cyrillic_u) return "Cyrillic_u"; 2265 if (k == XK_Cyrillic_zhe) return "Cyrillic_zhe"; 2266 if (k == XK_Cyrillic_ve) return "Cyrillic_ve"; 2267 if (k == XK_Cyrillic_softsign) return "Cyrillic_softsign"; 2268 if (k == XK_Cyrillic_yeru) return "Cyrillic_yeru"; 2269 if (k == XK_Cyrillic_ze) return "Cyrillic_ze"; 2270 if (k == XK_Cyrillic_sha) return "Cyrillic_sha"; 2271 if (k == XK_Cyrillic_e) return "Cyrillic_e"; 2272 if (k == XK_Cyrillic_shcha) return "Cyrillic_shcha"; 2273 if (k == XK_Cyrillic_che) return "Cyrillic_che"; 2274 if (k == XK_Cyrillic_hardsign) return "Cyrillic_hardsign"; 2275 if (k == XK_Cyrillic_YU) return "Cyrillic_YU"; 2276 if (k == XK_Cyrillic_A) return "Cyrillic_A"; 2277 if (k == XK_Cyrillic_BE) return "Cyrillic_BE"; 2278 if (k == XK_Cyrillic_TSE) return "Cyrillic_TSE"; 2279 if (k == XK_Cyrillic_DE) return "Cyrillic_DE"; 2280 if (k == XK_Cyrillic_IE) return "Cyrillic_IE"; 2281 if (k == XK_Cyrillic_EF) return "Cyrillic_EF"; 2282 if (k == XK_Cyrillic_GHE) return "Cyrillic_GHE"; 2283 if (k == XK_Cyrillic_HA) return "Cyrillic_HA"; 2284 if (k == XK_Cyrillic_I) return "Cyrillic_I"; 2285 if (k == XK_Cyrillic_SHORTI) return "Cyrillic_SHORTI"; 2286 if (k == XK_Cyrillic_KA) return "Cyrillic_KA"; 2287 if (k == XK_Cyrillic_EL) return "Cyrillic_EL"; 2288 if (k == XK_Cyrillic_EM) return "Cyrillic_EM"; 2289 if (k == XK_Cyrillic_EN) return "Cyrillic_EN"; 2290 if (k == XK_Cyrillic_O) return "Cyrillic_O"; 2291 if (k == XK_Cyrillic_PE) return "Cyrillic_PE"; 2292 if (k == XK_Cyrillic_YA) return "Cyrillic_YA"; 2293 if (k == XK_Cyrillic_ER) return "Cyrillic_ER"; 2294 if (k == XK_Cyrillic_ES) return "Cyrillic_ES"; 2295 if (k == XK_Cyrillic_TE) return "Cyrillic_TE"; 2296 if (k == XK_Cyrillic_U) return "Cyrillic_U"; 2297 if (k == XK_Cyrillic_ZHE) return "Cyrillic_ZHE"; 2298 if (k == XK_Cyrillic_VE) return "Cyrillic_VE"; 2299 if (k == XK_Cyrillic_SOFTSIGN) return "Cyrillic_SOFTSIGN"; 2300 if (k == XK_Cyrillic_YERU) return "Cyrillic_YERU"; 2301 if (k == XK_Cyrillic_ZE) return "Cyrillic_ZE"; 2302 if (k == XK_Cyrillic_SHA) return "Cyrillic_SHA"; 2303 if (k == XK_Cyrillic_E) return "Cyrillic_E"; 2304 if (k == XK_Cyrillic_SHCHA) return "Cyrillic_SHCHA"; 2305 if (k == XK_Cyrillic_CHE) return "Cyrillic_CHE"; 2306 if (k == XK_Cyrillic_HARDSIGN) return "Cyrillic_HARDSIGN"; 2307#endif /* XK_CYRILLIC */ 2308#ifdef XK_GREEK 2309 if (k == XK_Greek_ALPHAaccent) return "Greek_ALPHAaccent"; 2310 if (k == XK_Greek_EPSILONaccent) return "Greek_EPSILONaccent"; 2311 if (k == XK_Greek_ETAaccent) return "Greek_ETAaccent"; 2312 if (k == XK_Greek_IOTAaccent) return "Greek_IOTAaccent"; 2313 if (k == XK_Greek_IOTAdieresis) return "Greek_IOTAdieresis"; 2314 if (k == XK_Greek_OMICRONaccent) return "Greek_OMICRONaccent"; 2315 if (k == XK_Greek_UPSILONaccent) return "Greek_UPSILONaccent"; 2316 if (k == XK_Greek_UPSILONdieresis) return "Greek_UPSILONdieresis"; 2317 if (k == XK_Greek_OMEGAaccent) return "Greek_OMEGAaccent"; 2318 if (k == XK_Greek_accentdieresis) return "Greek_accentdieresis"; 2319 if (k == XK_Greek_horizbar) return "Greek_horizbar"; 2320 if (k == XK_Greek_alphaaccent) return "Greek_alphaaccent"; 2321 if (k == XK_Greek_epsilonaccent) return "Greek_epsilonaccent"; 2322 if (k == XK_Greek_etaaccent) return "Greek_etaaccent"; 2323 if (k == XK_Greek_iotaaccent) return "Greek_iotaaccent"; 2324 if (k == XK_Greek_iotadieresis) return "Greek_iotadieresis"; 2325 if (k == XK_Greek_iotaaccentdieresis) return "Greek_iotaaccentdieresis"; 2326 if (k == XK_Greek_omicronaccent) return "Greek_omicronaccent"; 2327 if (k == XK_Greek_upsilonaccent) return "Greek_upsilonaccent"; 2328 if (k == XK_Greek_upsilondieresis) return "Greek_upsilondieresis"; 2329 if (k == XK_Greek_upsilonaccentdieresis) return "Greek_upsilonaccentdieresis"; 2330 if (k == XK_Greek_omegaaccent) return "Greek_omegaaccent"; 2331 if (k == XK_Greek_ALPHA) return "Greek_ALPHA"; 2332 if (k == XK_Greek_BETA) return "Greek_BETA"; 2333 if (k == XK_Greek_GAMMA) return "Greek_GAMMA"; 2334 if (k == XK_Greek_DELTA) return "Greek_DELTA"; 2335 if (k == XK_Greek_EPSILON) return "Greek_EPSILON"; 2336 if (k == XK_Greek_ZETA) return "Greek_ZETA"; 2337 if (k == XK_Greek_ETA) return "Greek_ETA"; 2338 if (k == XK_Greek_THETA) return "Greek_THETA"; 2339 if (k == XK_Greek_IOTA) return "Greek_IOTA"; 2340 if (k == XK_Greek_KAPPA) return "Greek_KAPPA"; 2341 if (k == XK_Greek_LAMDA) return "Greek_LAMDA"; 2342 if (k == XK_Greek_LAMBDA) return "Greek_LAMBDA"; 2343 if (k == XK_Greek_MU) return "Greek_MU"; 2344 if (k == XK_Greek_NU) return "Greek_NU"; 2345 if (k == XK_Greek_XI) return "Greek_XI"; 2346 if (k == XK_Greek_OMICRON) return "Greek_OMICRON"; 2347 if (k == XK_Greek_PI) return "Greek_PI"; 2348 if (k == XK_Greek_RHO) return "Greek_RHO"; 2349 if (k == XK_Greek_SIGMA) return "Greek_SIGMA"; 2350 if (k == XK_Greek_TAU) return "Greek_TAU"; 2351 if (k == XK_Greek_UPSILON) return "Greek_UPSILON"; 2352 if (k == XK_Greek_PHI) return "Greek_PHI"; 2353 if (k == XK_Greek_CHI) return "Greek_CHI"; 2354 if (k == XK_Greek_PSI) return "Greek_PSI"; 2355 if (k == XK_Greek_OMEGA) return "Greek_OMEGA"; 2356 if (k == XK_Greek_alpha) return "Greek_alpha"; 2357 if (k == XK_Greek_beta) return "Greek_beta"; 2358 if (k == XK_Greek_gamma) return "Greek_gamma"; 2359 if (k == XK_Greek_delta) return "Greek_delta"; 2360 if (k == XK_Greek_epsilon) return "Greek_epsilon"; 2361 if (k == XK_Greek_zeta) return "Greek_zeta"; 2362 if (k == XK_Greek_eta) return "Greek_eta"; 2363 if (k == XK_Greek_theta) return "Greek_theta"; 2364 if (k == XK_Greek_iota) return "Greek_iota"; 2365 if (k == XK_Greek_kappa) return "Greek_kappa"; 2366 if (k == XK_Greek_lamda) return "Greek_lamda"; 2367 if (k == XK_Greek_lambda) return "Greek_lambda"; 2368 if (k == XK_Greek_mu) return "Greek_mu"; 2369 if (k == XK_Greek_nu) return "Greek_nu"; 2370 if (k == XK_Greek_xi) return "Greek_xi"; 2371 if (k == XK_Greek_omicron) return "Greek_omicron"; 2372 if (k == XK_Greek_pi) return "Greek_pi"; 2373 if (k == XK_Greek_rho) return "Greek_rho"; 2374 if (k == XK_Greek_sigma) return "Greek_sigma"; 2375 if (k == XK_Greek_finalsmallsigma) return "Greek_finalsmallsigma"; 2376 if (k == XK_Greek_tau) return "Greek_tau"; 2377 if (k == XK_Greek_upsilon) return "Greek_upsilon"; 2378 if (k == XK_Greek_phi) return "Greek_phi"; 2379 if (k == XK_Greek_chi) return "Greek_chi"; 2380 if (k == XK_Greek_psi) return "Greek_psi"; 2381 if (k == XK_Greek_omega) return "Greek_omega"; 2382 if (k == XK_Greek_switch) return "Greek_switch"; 2383#endif /* XK_GREEK */ 2384#ifdef XK_TECHNICAL 2385 if (k == XK_leftradical) return "leftradical"; 2386 if (k == XK_topleftradical) return "topleftradical"; 2387 if (k == XK_horizconnector) return "horizconnector"; 2388 if (k == XK_topintegral) return "topintegral"; 2389 if (k == XK_botintegral) return "botintegral"; 2390 if (k == XK_vertconnector) return "vertconnector"; 2391 if (k == XK_topleftsqbracket) return "topleftsqbracket"; 2392 if (k == XK_botleftsqbracket) return "botleftsqbracket"; 2393 if (k == XK_toprightsqbracket) return "toprightsqbracket"; 2394 if (k == XK_botrightsqbracket) return "botrightsqbracket"; 2395 if (k == XK_topleftparens) return "topleftparens"; 2396 if (k == XK_botleftparens) return "botleftparens"; 2397 if (k == XK_toprightparens) return "toprightparens"; 2398 if (k == XK_botrightparens) return "botrightparens"; 2399 if (k == XK_leftmiddlecurlybrace) return "leftmiddlecurlybrace"; 2400 if (k == XK_rightmiddlecurlybrace) return "rightmiddlecurlybrace"; 2401 if (k == XK_topleftsummation) return "topleftsummation"; 2402 if (k == XK_botleftsummation) return "botleftsummation"; 2403 if (k == XK_topvertsummationconnector) return "topvertsummationconnector"; 2404 if (k == XK_botvertsummationconnector) return "botvertsummationconnector"; 2405 if (k == XK_toprightsummation) return "toprightsummation"; 2406 if (k == XK_botrightsummation) return "botrightsummation"; 2407 if (k == XK_rightmiddlesummation) return "rightmiddlesummation"; 2408 if (k == XK_lessthanequal) return "lessthanequal"; 2409 if (k == XK_notequal) return "notequal"; 2410 if (k == XK_greaterthanequal) return "greaterthanequal"; 2411 if (k == XK_integral) return "integral"; 2412 if (k == XK_therefore) return "therefore"; 2413 if (k == XK_variation) return "variation"; 2414 if (k == XK_infinity) return "infinity"; 2415 if (k == XK_nabla) return "nabla"; 2416 if (k == XK_approximate) return "approximate"; 2417 if (k == XK_similarequal) return "similarequal"; 2418 if (k == XK_ifonlyif) return "ifonlyif"; 2419 if (k == XK_implies) return "implies"; 2420 if (k == XK_identical) return "identical"; 2421 if (k == XK_radical) return "radical"; 2422 if (k == XK_includedin) return "includedin"; 2423 if (k == XK_includes) return "includes"; 2424 if (k == XK_intersection) return "intersection"; 2425 if (k == XK_union) return "union"; 2426 if (k == XK_logicaland) return "logicaland"; 2427 if (k == XK_logicalor) return "logicalor"; 2428 if (k == XK_partialderivative) return "partialderivative"; 2429 if (k == XK_function) return "function"; 2430 if (k == XK_leftarrow) return "leftarrow"; 2431 if (k == XK_uparrow) return "uparrow"; 2432 if (k == XK_rightarrow) return "rightarrow"; 2433 if (k == XK_downarrow) return "downarrow"; 2434#endif /* XK_TECHNICAL */ 2435#ifdef XK_SPECIAL 2436 if (k == XK_blank) return "blank"; 2437 if (k == XK_soliddiamond) return "soliddiamond"; 2438 if (k == XK_checkerboard) return "checkerboard"; 2439 if (k == XK_ht) return "ht"; 2440 if (k == XK_ff) return "ff"; 2441 if (k == XK_cr) return "cr"; 2442 if (k == XK_lf) return "lf"; 2443 if (k == XK_nl) return "nl"; 2444 if (k == XK_vt) return "vt"; 2445 if (k == XK_lowrightcorner) return "lowrightcorner"; 2446 if (k == XK_uprightcorner) return "uprightcorner"; 2447 if (k == XK_upleftcorner) return "upleftcorner"; 2448 if (k == XK_lowleftcorner) return "lowleftcorner"; 2449 if (k == XK_crossinglines) return "crossinglines"; 2450 if (k == XK_horizlinescan1) return "horizlinescan1"; 2451 if (k == XK_horizlinescan3) return "horizlinescan3"; 2452 if (k == XK_horizlinescan5) return "horizlinescan5"; 2453 if (k == XK_horizlinescan7) return "horizlinescan7"; 2454 if (k == XK_horizlinescan9) return "horizlinescan9"; 2455 if (k == XK_leftt) return "leftt"; 2456 if (k == XK_rightt) return "rightt"; 2457 if (k == XK_bott) return "bott"; 2458 if (k == XK_topt) return "topt"; 2459 if (k == XK_vertbar) return "vertbar"; 2460#endif /* XK_SPECIAL */ 2461#ifdef XK_PUBLISHING 2462 if (k == XK_emspace) return "emspace"; 2463 if (k == XK_enspace) return "enspace"; 2464 if (k == XK_em3space) return "em3space"; 2465 if (k == XK_em4space) return "em4space"; 2466 if (k == XK_digitspace) return "digitspace"; 2467 if (k == XK_punctspace) return "punctspace"; 2468 if (k == XK_thinspace) return "thinspace"; 2469 if (k == XK_hairspace) return "hairspace"; 2470 if (k == XK_emdash) return "emdash"; 2471 if (k == XK_endash) return "endash"; 2472 if (k == XK_signifblank) return "signifblank"; 2473 if (k == XK_ellipsis) return "ellipsis"; 2474 if (k == XK_doubbaselinedot) return "doubbaselinedot"; 2475 if (k == XK_onethird) return "onethird"; 2476 if (k == XK_twothirds) return "twothirds"; 2477 if (k == XK_onefifth) return "onefifth"; 2478 if (k == XK_twofifths) return "twofifths"; 2479 if (k == XK_threefifths) return "threefifths"; 2480 if (k == XK_fourfifths) return "fourfifths"; 2481 if (k == XK_onesixth) return "onesixth"; 2482 if (k == XK_fivesixths) return "fivesixths"; 2483 if (k == XK_careof) return "careof"; 2484 if (k == XK_figdash) return "figdash"; 2485 if (k == XK_leftanglebracket) return "leftanglebracket"; 2486 if (k == XK_decimalpoint) return "decimalpoint"; 2487 if (k == XK_rightanglebracket) return "rightanglebracket"; 2488 if (k == XK_marker) return "marker"; 2489 if (k == XK_oneeighth) return "oneeighth"; 2490 if (k == XK_threeeighths) return "threeeighths"; 2491 if (k == XK_fiveeighths) return "fiveeighths"; 2492 if (k == XK_seveneighths) return "seveneighths"; 2493 if (k == XK_trademark) return "trademark"; 2494 if (k == XK_signaturemark) return "signaturemark"; 2495 if (k == XK_trademarkincircle) return "trademarkincircle"; 2496 if (k == XK_leftopentriangle) return "leftopentriangle"; 2497 if (k == XK_rightopentriangle) return "rightopentriangle"; 2498 if (k == XK_emopencircle) return "emopencircle"; 2499 if (k == XK_emopenrectangle) return "emopenrectangle"; 2500 if (k == XK_leftsinglequotemark) return "leftsinglequotemark"; 2501 if (k == XK_rightsinglequotemark) return "rightsinglequotemark"; 2502 if (k == XK_leftdoublequotemark) return "leftdoublequotemark"; 2503 if (k == XK_rightdoublequotemark) return "rightdoublequotemark"; 2504 if (k == XK_prescription) return "prescription"; 2505 if (k == XK_minutes) return "minutes"; 2506 if (k == XK_seconds) return "seconds"; 2507 if (k == XK_latincross) return "latincross"; 2508 if (k == XK_hexagram) return "hexagram"; 2509 if (k == XK_filledrectbullet) return "filledrectbullet"; 2510 if (k == XK_filledlefttribullet) return "filledlefttribullet"; 2511 if (k == XK_filledrighttribullet) return "filledrighttribullet"; 2512 if (k == XK_emfilledcircle) return "emfilledcircle"; 2513 if (k == XK_emfilledrect) return "emfilledrect"; 2514 if (k == XK_enopencircbullet) return "enopencircbullet"; 2515 if (k == XK_enopensquarebullet) return "enopensquarebullet"; 2516 if (k == XK_openrectbullet) return "openrectbullet"; 2517 if (k == XK_opentribulletup) return "opentribulletup"; 2518 if (k == XK_opentribulletdown) return "opentribulletdown"; 2519 if (k == XK_openstar) return "openstar"; 2520 if (k == XK_enfilledcircbullet) return "enfilledcircbullet"; 2521 if (k == XK_enfilledsqbullet) return "enfilledsqbullet"; 2522 if (k == XK_filledtribulletup) return "filledtribulletup"; 2523 if (k == XK_filledtribulletdown) return "filledtribulletdown"; 2524 if (k == XK_leftpointer) return "leftpointer"; 2525 if (k == XK_rightpointer) return "rightpointer"; 2526 if (k == XK_club) return "club"; 2527 if (k == XK_diamond) return "diamond"; 2528 if (k == XK_heart) return "heart"; 2529 if (k == XK_maltesecross) return "maltesecross"; 2530 if (k == XK_dagger) return "dagger"; 2531 if (k == XK_doubledagger) return "doubledagger"; 2532 if (k == XK_checkmark) return "checkmark"; 2533 if (k == XK_ballotcross) return "ballotcross"; 2534 if (k == XK_musicalsharp) return "musicalsharp"; 2535 if (k == XK_musicalflat) return "musicalflat"; 2536 if (k == XK_malesymbol) return "malesymbol"; 2537 if (k == XK_femalesymbol) return "femalesymbol"; 2538 if (k == XK_telephone) return "telephone"; 2539 if (k == XK_telephonerecorder) return "telephonerecorder"; 2540 if (k == XK_phonographcopyright) return "phonographcopyright"; 2541 if (k == XK_caret) return "caret"; 2542 if (k == XK_singlelowquotemark) return "singlelowquotemark"; 2543 if (k == XK_doublelowquotemark) return "doublelowquotemark"; 2544 if (k == XK_cursor) return "cursor"; 2545#endif /* XK_PUBLISHING */ 2546#ifdef XK_APL 2547 if (k == XK_leftcaret) return "leftcaret"; 2548 if (k == XK_rightcaret) return "rightcaret"; 2549 if (k == XK_downcaret) return "downcaret"; 2550 if (k == XK_upcaret) return "upcaret"; 2551 if (k == XK_overbar) return "overbar"; 2552 if (k == XK_downtack) return "downtack"; 2553 if (k == XK_upshoe) return "upshoe"; 2554 if (k == XK_downstile) return "downstile"; 2555 if (k == XK_underbar) return "underbar"; 2556 if (k == XK_jot) return "jot"; 2557 if (k == XK_quad) return "quad"; 2558 if (k == XK_uptack) return "uptack"; 2559 if (k == XK_circle) return "circle"; 2560 if (k == XK_upstile) return "upstile"; 2561 if (k == XK_downshoe) return "downshoe"; 2562 if (k == XK_rightshoe) return "rightshoe"; 2563 if (k == XK_leftshoe) return "leftshoe"; 2564 if (k == XK_lefttack) return "lefttack"; 2565 if (k == XK_righttack) return "righttack"; 2566#endif /* XK_APL */ 2567#ifdef XK_HEBREW 2568 if (k == XK_hebrew_doublelowline) return "hebrew_doublelowline"; 2569 if (k == XK_hebrew_aleph) return "hebrew_aleph"; 2570 if (k == XK_hebrew_bet) return "hebrew_bet"; 2571 if (k == XK_hebrew_beth) return "hebrew_beth"; 2572 if (k == XK_hebrew_gimel) return "hebrew_gimel"; 2573 if (k == XK_hebrew_gimmel) return "hebrew_gimmel"; 2574 if (k == XK_hebrew_dalet) return "hebrew_dalet"; 2575 if (k == XK_hebrew_daleth) return "hebrew_daleth"; 2576 if (k == XK_hebrew_he) return "hebrew_he"; 2577 if (k == XK_hebrew_waw) return "hebrew_waw"; 2578 if (k == XK_hebrew_zain) return "hebrew_zain"; 2579 if (k == XK_hebrew_zayin) return "hebrew_zayin"; 2580 if (k == XK_hebrew_chet) return "hebrew_chet"; 2581 if (k == XK_hebrew_het) return "hebrew_het"; 2582 if (k == XK_hebrew_tet) return "hebrew_tet"; 2583 if (k == XK_hebrew_teth) return "hebrew_teth"; 2584 if (k == XK_hebrew_yod) return "hebrew_yod"; 2585 if (k == XK_hebrew_finalkaph) return "hebrew_finalkaph"; 2586 if (k == XK_hebrew_kaph) return "hebrew_kaph"; 2587 if (k == XK_hebrew_lamed) return "hebrew_lamed"; 2588 if (k == XK_hebrew_finalmem) return "hebrew_finalmem"; 2589 if (k == XK_hebrew_mem) return "hebrew_mem"; 2590 if (k == XK_hebrew_finalnun) return "hebrew_finalnun"; 2591 if (k == XK_hebrew_nun) return "hebrew_nun"; 2592 if (k == XK_hebrew_samech) return "hebrew_samech"; 2593 if (k == XK_hebrew_samekh) return "hebrew_samekh"; 2594 if (k == XK_hebrew_ayin) return "hebrew_ayin"; 2595 if (k == XK_hebrew_finalpe) return "hebrew_finalpe"; 2596 if (k == XK_hebrew_pe) return "hebrew_pe"; 2597 if (k == XK_hebrew_finalzade) return "hebrew_finalzade"; 2598 if (k == XK_hebrew_finalzadi) return "hebrew_finalzadi"; 2599 if (k == XK_hebrew_zade) return "hebrew_zade"; 2600 if (k == XK_hebrew_zadi) return "hebrew_zadi"; 2601 if (k == XK_hebrew_qoph) return "hebrew_qoph"; 2602 if (k == XK_hebrew_kuf) return "hebrew_kuf"; 2603 if (k == XK_hebrew_resh) return "hebrew_resh"; 2604 if (k == XK_hebrew_shin) return "hebrew_shin"; 2605 if (k == XK_hebrew_taw) return "hebrew_taw"; 2606 if (k == XK_hebrew_taf) return "hebrew_taf"; 2607 if (k == XK_Hebrew_switch) return "Hebrew_switch"; 2608#endif /* XK_HEBREW */ 2609#ifdef XK_THAI 2610 if (k == XK_Thai_kokai) return "Thai_kokai"; 2611 if (k == XK_Thai_khokhai) return "Thai_khokhai"; 2612 if (k == XK_Thai_khokhuat) return "Thai_khokhuat"; 2613 if (k == XK_Thai_khokhwai) return "Thai_khokhwai"; 2614 if (k == XK_Thai_khokhon) return "Thai_khokhon"; 2615 if (k == XK_Thai_khorakhang) return "Thai_khorakhang"; 2616 if (k == XK_Thai_ngongu) return "Thai_ngongu"; 2617 if (k == XK_Thai_chochan) return "Thai_chochan"; 2618 if (k == XK_Thai_choching) return "Thai_choching"; 2619 if (k == XK_Thai_chochang) return "Thai_chochang"; 2620 if (k == XK_Thai_soso) return "Thai_soso"; 2621 if (k == XK_Thai_chochoe) return "Thai_chochoe"; 2622 if (k == XK_Thai_yoying) return "Thai_yoying"; 2623 if (k == XK_Thai_dochada) return "Thai_dochada"; 2624 if (k == XK_Thai_topatak) return "Thai_topatak"; 2625 if (k == XK_Thai_thothan) return "Thai_thothan"; 2626 if (k == XK_Thai_thonangmontho) return "Thai_thonangmontho"; 2627 if (k == XK_Thai_thophuthao) return "Thai_thophuthao"; 2628 if (k == XK_Thai_nonen) return "Thai_nonen"; 2629 if (k == XK_Thai_dodek) return "Thai_dodek"; 2630 if (k == XK_Thai_totao) return "Thai_totao"; 2631 if (k == XK_Thai_thothung) return "Thai_thothung"; 2632 if (k == XK_Thai_thothahan) return "Thai_thothahan"; 2633 if (k == XK_Thai_thothong) return "Thai_thothong"; 2634 if (k == XK_Thai_nonu) return "Thai_nonu"; 2635 if (k == XK_Thai_bobaimai) return "Thai_bobaimai"; 2636 if (k == XK_Thai_popla) return "Thai_popla"; 2637 if (k == XK_Thai_phophung) return "Thai_phophung"; 2638 if (k == XK_Thai_fofa) return "Thai_fofa"; 2639 if (k == XK_Thai_phophan) return "Thai_phophan"; 2640 if (k == XK_Thai_fofan) return "Thai_fofan"; 2641 if (k == XK_Thai_phosamphao) return "Thai_phosamphao"; 2642 if (k == XK_Thai_moma) return "Thai_moma"; 2643 if (k == XK_Thai_yoyak) return "Thai_yoyak"; 2644 if (k == XK_Thai_rorua) return "Thai_rorua"; 2645 if (k == XK_Thai_ru) return "Thai_ru"; 2646 if (k == XK_Thai_loling) return "Thai_loling"; 2647 if (k == XK_Thai_lu) return "Thai_lu"; 2648 if (k == XK_Thai_wowaen) return "Thai_wowaen"; 2649 if (k == XK_Thai_sosala) return "Thai_sosala"; 2650 if (k == XK_Thai_sorusi) return "Thai_sorusi"; 2651 if (k == XK_Thai_sosua) return "Thai_sosua"; 2652 if (k == XK_Thai_hohip) return "Thai_hohip"; 2653 if (k == XK_Thai_lochula) return "Thai_lochula"; 2654 if (k == XK_Thai_oang) return "Thai_oang"; 2655 if (k == XK_Thai_honokhuk) return "Thai_honokhuk"; 2656 if (k == XK_Thai_paiyannoi) return "Thai_paiyannoi"; 2657 if (k == XK_Thai_saraa) return "Thai_saraa"; 2658 if (k == XK_Thai_maihanakat) return "Thai_maihanakat"; 2659 if (k == XK_Thai_saraaa) return "Thai_saraaa"; 2660 if (k == XK_Thai_saraam) return "Thai_saraam"; 2661 if (k == XK_Thai_sarai) return "Thai_sarai"; 2662 if (k == XK_Thai_saraii) return "Thai_saraii"; 2663 if (k == XK_Thai_saraue) return "Thai_saraue"; 2664 if (k == XK_Thai_sarauee) return "Thai_sarauee"; 2665 if (k == XK_Thai_sarau) return "Thai_sarau"; 2666 if (k == XK_Thai_sarauu) return "Thai_sarauu"; 2667 if (k == XK_Thai_phinthu) return "Thai_phinthu"; 2668 if (k == XK_Thai_maihanakat_maitho) return "Thai_maihanakat_maitho"; 2669 if (k == XK_Thai_baht) return "Thai_baht"; 2670 if (k == XK_Thai_sarae) return "Thai_sarae"; 2671 if (k == XK_Thai_saraae) return "Thai_saraae"; 2672 if (k == XK_Thai_sarao) return "Thai_sarao"; 2673 if (k == XK_Thai_saraaimaimuan) return "Thai_saraaimaimuan"; 2674 if (k == XK_Thai_saraaimaimalai) return "Thai_saraaimaimalai"; 2675 if (k == XK_Thai_lakkhangyao) return "Thai_lakkhangyao"; 2676 if (k == XK_Thai_maiyamok) return "Thai_maiyamok"; 2677 if (k == XK_Thai_maitaikhu) return "Thai_maitaikhu"; 2678 if (k == XK_Thai_maiek) return "Thai_maiek"; 2679 if (k == XK_Thai_maitho) return "Thai_maitho"; 2680 if (k == XK_Thai_maitri) return "Thai_maitri"; 2681 if (k == XK_Thai_maichattawa) return "Thai_maichattawa"; 2682 if (k == XK_Thai_thanthakhat) return "Thai_thanthakhat"; 2683 if (k == XK_Thai_nikhahit) return "Thai_nikhahit"; 2684 if (k == XK_Thai_leksun) return "Thai_leksun"; 2685 if (k == XK_Thai_leknung) return "Thai_leknung"; 2686 if (k == XK_Thai_leksong) return "Thai_leksong"; 2687 if (k == XK_Thai_leksam) return "Thai_leksam"; 2688 if (k == XK_Thai_leksi) return "Thai_leksi"; 2689 if (k == XK_Thai_lekha) return "Thai_lekha"; 2690 if (k == XK_Thai_lekhok) return "Thai_lekhok"; 2691 if (k == XK_Thai_lekchet) return "Thai_lekchet"; 2692 if (k == XK_Thai_lekpaet) return "Thai_lekpaet"; 2693 if (k == XK_Thai_lekkao) return "Thai_lekkao"; 2694#endif /* XK_THAI */ 2695#ifdef XK_KOREAN 2696 if (k == XK_Hangul) return "Hangul"; 2697 if (k == XK_Hangul_Start) return "Hangul_Start"; 2698 if (k == XK_Hangul_End) return "Hangul_End"; 2699 if (k == XK_Hangul_Hanja) return "Hangul_Hanja"; 2700 if (k == XK_Hangul_Jamo) return "Hangul_Jamo"; 2701 if (k == XK_Hangul_Romaja) return "Hangul_Romaja"; 2702 if (k == XK_Hangul_Codeinput) return "Hangul_Codeinput"; 2703 if (k == XK_Hangul_Jeonja) return "Hangul_Jeonja"; 2704 if (k == XK_Hangul_Banja) return "Hangul_Banja"; 2705 if (k == XK_Hangul_PreHanja) return "Hangul_PreHanja"; 2706 if (k == XK_Hangul_PostHanja) return "Hangul_PostHanja"; 2707 if (k == XK_Hangul_SingleCandidate) return "Hangul_SingleCandidate"; 2708 if (k == XK_Hangul_MultipleCandidate) return "Hangul_MultipleCandidate"; 2709 if (k == XK_Hangul_PreviousCandidate) return "Hangul_PreviousCandidate"; 2710 if (k == XK_Hangul_Special) return "Hangul_Special"; 2711 if (k == XK_Hangul_switch) return "Hangul_switch"; 2712 if (k == XK_Hangul_Kiyeog) return "Hangul_Kiyeog"; 2713 if (k == XK_Hangul_SsangKiyeog) return "Hangul_SsangKiyeog"; 2714 if (k == XK_Hangul_KiyeogSios) return "Hangul_KiyeogSios"; 2715 if (k == XK_Hangul_Nieun) return "Hangul_Nieun"; 2716 if (k == XK_Hangul_NieunJieuj) return "Hangul_NieunJieuj"; 2717 if (k == XK_Hangul_NieunHieuh) return "Hangul_NieunHieuh"; 2718 if (k == XK_Hangul_Dikeud) return "Hangul_Dikeud"; 2719 if (k == XK_Hangul_SsangDikeud) return "Hangul_SsangDikeud"; 2720 if (k == XK_Hangul_Rieul) return "Hangul_Rieul"; 2721 if (k == XK_Hangul_RieulKiyeog) return "Hangul_RieulKiyeog"; 2722 if (k == XK_Hangul_RieulMieum) return "Hangul_RieulMieum"; 2723 if (k == XK_Hangul_RieulPieub) return "Hangul_RieulPieub"; 2724 if (k == XK_Hangul_RieulSios) return "Hangul_RieulSios"; 2725 if (k == XK_Hangul_RieulTieut) return "Hangul_RieulTieut"; 2726 if (k == XK_Hangul_RieulPhieuf) return "Hangul_RieulPhieuf"; 2727 if (k == XK_Hangul_RieulHieuh) return "Hangul_RieulHieuh"; 2728 if (k == XK_Hangul_Mieum) return "Hangul_Mieum"; 2729 if (k == XK_Hangul_Pieub) return "Hangul_Pieub"; 2730 if (k == XK_Hangul_SsangPieub) return "Hangul_SsangPieub"; 2731 if (k == XK_Hangul_PieubSios) return "Hangul_PieubSios"; 2732 if (k == XK_Hangul_Sios) return "Hangul_Sios"; 2733 if (k == XK_Hangul_SsangSios) return "Hangul_SsangSios"; 2734 if (k == XK_Hangul_Ieung) return "Hangul_Ieung"; 2735 if (k == XK_Hangul_Jieuj) return "Hangul_Jieuj"; 2736 if (k == XK_Hangul_SsangJieuj) return "Hangul_SsangJieuj"; 2737 if (k == XK_Hangul_Cieuc) return "Hangul_Cieuc"; 2738 if (k == XK_Hangul_Khieuq) return "Hangul_Khieuq"; 2739 if (k == XK_Hangul_Tieut) return "Hangul_Tieut"; 2740 if (k == XK_Hangul_Phieuf) return "Hangul_Phieuf"; 2741 if (k == XK_Hangul_Hieuh) return "Hangul_Hieuh"; 2742 if (k == XK_Hangul_A) return "Hangul_A"; 2743 if (k == XK_Hangul_AE) return "Hangul_AE"; 2744 if (k == XK_Hangul_YA) return "Hangul_YA"; 2745 if (k == XK_Hangul_YAE) return "Hangul_YAE"; 2746 if (k == XK_Hangul_EO) return "Hangul_EO"; 2747 if (k == XK_Hangul_E) return "Hangul_E"; 2748 if (k == XK_Hangul_YEO) return "Hangul_YEO"; 2749 if (k == XK_Hangul_YE) return "Hangul_YE"; 2750 if (k == XK_Hangul_O) return "Hangul_O"; 2751 if (k == XK_Hangul_WA) return "Hangul_WA"; 2752 if (k == XK_Hangul_WAE) return "Hangul_WAE"; 2753 if (k == XK_Hangul_OE) return "Hangul_OE"; 2754 if (k == XK_Hangul_YO) return "Hangul_YO"; 2755 if (k == XK_Hangul_U) return "Hangul_U"; 2756 if (k == XK_Hangul_WEO) return "Hangul_WEO"; 2757 if (k == XK_Hangul_WE) return "Hangul_WE"; 2758 if (k == XK_Hangul_WI) return "Hangul_WI"; 2759 if (k == XK_Hangul_YU) return "Hangul_YU"; 2760 if (k == XK_Hangul_EU) return "Hangul_EU"; 2761 if (k == XK_Hangul_YI) return "Hangul_YI"; 2762 if (k == XK_Hangul_I) return "Hangul_I"; 2763 if (k == XK_Hangul_J_Kiyeog) return "Hangul_J_Kiyeog"; 2764 if (k == XK_Hangul_J_SsangKiyeog) return "Hangul_J_SsangKiyeog"; 2765 if (k == XK_Hangul_J_KiyeogSios) return "Hangul_J_KiyeogSios"; 2766 if (k == XK_Hangul_J_Nieun) return "Hangul_J_Nieun"; 2767 if (k == XK_Hangul_J_NieunJieuj) return "Hangul_J_NieunJieuj"; 2768 if (k == XK_Hangul_J_NieunHieuh) return "Hangul_J_NieunHieuh"; 2769 if (k == XK_Hangul_J_Dikeud) return "Hangul_J_Dikeud"; 2770 if (k == XK_Hangul_J_Rieul) return "Hangul_J_Rieul"; 2771 if (k == XK_Hangul_J_RieulKiyeog) return "Hangul_J_RieulKiyeog"; 2772 if (k == XK_Hangul_J_RieulMieum) return "Hangul_J_RieulMieum"; 2773 if (k == XK_Hangul_J_RieulPieub) return "Hangul_J_RieulPieub"; 2774 if (k == XK_Hangul_J_RieulSios) return "Hangul_J_RieulSios"; 2775 if (k == XK_Hangul_J_RieulTieut) return "Hangul_J_RieulTieut"; 2776 if (k == XK_Hangul_J_RieulPhieuf) return "Hangul_J_RieulPhieuf"; 2777 if (k == XK_Hangul_J_RieulHieuh) return "Hangul_J_RieulHieuh"; 2778 if (k == XK_Hangul_J_Mieum) return "Hangul_J_Mieum"; 2779 if (k == XK_Hangul_J_Pieub) return "Hangul_J_Pieub"; 2780 if (k == XK_Hangul_J_PieubSios) return "Hangul_J_PieubSios"; 2781 if (k == XK_Hangul_J_Sios) return "Hangul_J_Sios"; 2782 if (k == XK_Hangul_J_SsangSios) return "Hangul_J_SsangSios"; 2783 if (k == XK_Hangul_J_Ieung) return "Hangul_J_Ieung"; 2784 if (k == XK_Hangul_J_Jieuj) return "Hangul_J_Jieuj"; 2785 if (k == XK_Hangul_J_Cieuc) return "Hangul_J_Cieuc"; 2786 if (k == XK_Hangul_J_Khieuq) return "Hangul_J_Khieuq"; 2787 if (k == XK_Hangul_J_Tieut) return "Hangul_J_Tieut"; 2788 if (k == XK_Hangul_J_Phieuf) return "Hangul_J_Phieuf"; 2789 if (k == XK_Hangul_J_Hieuh) return "Hangul_J_Hieuh"; 2790 if (k == XK_Hangul_RieulYeorinHieuh) return "Hangul_RieulYeorinHieuh"; 2791 if (k == XK_Hangul_SunkyeongeumMieum) return "Hangul_SunkyeongeumMieum"; 2792 if (k == XK_Hangul_SunkyeongeumPieub) return "Hangul_SunkyeongeumPieub"; 2793 if (k == XK_Hangul_PanSios) return "Hangul_PanSios"; 2794 if (k == XK_Hangul_KkogjiDalrinIeung) return "Hangul_KkogjiDalrinIeung"; 2795 if (k == XK_Hangul_SunkyeongeumPhieuf) return "Hangul_SunkyeongeumPhieuf"; 2796 if (k == XK_Hangul_YeorinHieuh) return "Hangul_YeorinHieuh"; 2797 if (k == XK_Hangul_AraeA) return "Hangul_AraeA"; 2798 if (k == XK_Hangul_AraeAE) return "Hangul_AraeAE"; 2799 if (k == XK_Hangul_J_PanSios) return "Hangul_J_PanSios"; 2800 if (k == XK_Hangul_J_KkogjiDalrinIeung) return "Hangul_J_KkogjiDalrinIeung"; 2801 if (k == XK_Hangul_J_YeorinHieuh) return "Hangul_J_YeorinHieuh"; 2802 if (k == XK_Korean_Won) return "Korean_Won"; 2803#endif /* XK_KOREAN */ 2804 if (k == XK_EuroSign) return "EuroSign"; 2805#endif 2806 return NULL; 2807} 2808 2809KeySym XKeycodeToKeysym(Display *display, KeyCode keycode, int index) { 2810 if (!display || !keycode || !index) {} 2811 return NoSymbol; 2812} 2813 2814KeyCode XKeysymToKeycode(Display *display, KeySym keysym) { 2815 if (!display || !keysym) {} 2816 return NoSymbol; 2817} 2818 2819XErrorHandler XSetErrorHandler (XErrorHandler h) { 2820 return h; 2821} 2822 2823