mirror of
https://github.com/reactos/reactos.git
synced 2024-11-01 12:26:32 +00:00
1406 lines
43 KiB
C
1406 lines
43 KiB
C
/*
|
|
|
|
This file fakes some of X11's key handling for the special purpose of running
|
|
a standalone rdp2vnc (without linking to X11)
|
|
|
|
*/
|
|
|
|
#include "x11stubs.h"
|
|
#include <string.h>
|
|
|
|
/* ignored */
|
|
int *display;
|
|
|
|
typedef struct
|
|
{
|
|
const char *string;
|
|
KeySym keysym;
|
|
}
|
|
StringToKeysym_t;
|
|
|
|
StringToKeysym_t StringToKeysym[] = {
|
|
#ifndef KEYSYMFAKE_H
|
|
{"VoidSymbol", XK_VoidSymbol},
|
|
#ifdef XK_MISCELLANY
|
|
{"BackSpace", XK_BackSpace},
|
|
{"Tab", XK_Tab},
|
|
{"Linefeed", XK_Linefeed},
|
|
{"Clear", XK_Clear},
|
|
{"Return", XK_Return},
|
|
{"Pause", XK_Pause},
|
|
{"Scroll_Lock", XK_Scroll_Lock},
|
|
{"Sys_Req", XK_Sys_Req},
|
|
{"Escape", XK_Escape},
|
|
{"Delete", XK_Delete},
|
|
{"Multi_key", XK_Multi_key},
|
|
{"SingleCandidate", XK_SingleCandidate},
|
|
{"MultipleCandidate", XK_MultipleCandidate},
|
|
{"PreviousCandidate", XK_PreviousCandidate},
|
|
{"Kanji", XK_Kanji},
|
|
{"Muhenkan", XK_Muhenkan},
|
|
{"Henkan_Mode", XK_Henkan_Mode},
|
|
{"Henkan", XK_Henkan},
|
|
{"Romaji", XK_Romaji},
|
|
{"Hiragana", XK_Hiragana},
|
|
{"Katakana", XK_Katakana},
|
|
{"Hiragana_Katakana", XK_Hiragana_Katakana},
|
|
{"Zenkaku", XK_Zenkaku},
|
|
{"Hankaku", XK_Hankaku},
|
|
{"Zenkaku_Hankaku", XK_Zenkaku_Hankaku},
|
|
{"Touroku", XK_Touroku},
|
|
{"Massyo", XK_Massyo},
|
|
{"Kana_Lock", XK_Kana_Lock},
|
|
{"Kana_Shift", XK_Kana_Shift},
|
|
{"Eisu_Shift", XK_Eisu_Shift},
|
|
{"Eisu_toggle", XK_Eisu_toggle},
|
|
{"Zen_Koho", XK_Zen_Koho},
|
|
{"Mae_Koho", XK_Mae_Koho},
|
|
{"Home", XK_Home},
|
|
{"Left", XK_Left},
|
|
{"Up", XK_Up},
|
|
{"Right", XK_Right},
|
|
{"Down", XK_Down},
|
|
{"Prior", XK_Prior},
|
|
{"Page_Up", XK_Page_Up},
|
|
{"Next", XK_Next},
|
|
{"Page_Down", XK_Page_Down},
|
|
{"End", XK_End},
|
|
{"Begin", XK_Begin},
|
|
{"Select", XK_Select},
|
|
{"Print", XK_Print},
|
|
{"Execute", XK_Execute},
|
|
{"Insert", XK_Insert},
|
|
{"Undo", XK_Undo},
|
|
{"Redo", XK_Redo},
|
|
{"Menu", XK_Menu},
|
|
{"Find", XK_Find},
|
|
{"Cancel", XK_Cancel},
|
|
{"Help", XK_Help},
|
|
{"Break", XK_Break},
|
|
{"Mode_switch", XK_Mode_switch},
|
|
{"script_switch", XK_script_switch},
|
|
{"Num_Lock", XK_Num_Lock},
|
|
{"KP_Space", XK_KP_Space},
|
|
{"KP_Tab", XK_KP_Tab},
|
|
{"KP_Enter", XK_KP_Enter},
|
|
{"KP_F1", XK_KP_F1},
|
|
{"KP_F2", XK_KP_F2},
|
|
{"KP_F3", XK_KP_F3},
|
|
{"KP_F4", XK_KP_F4},
|
|
{"KP_Home", XK_KP_Home},
|
|
{"KP_Left", XK_KP_Left},
|
|
{"KP_Up", XK_KP_Up},
|
|
{"KP_Right", XK_KP_Right},
|
|
{"KP_Down", XK_KP_Down},
|
|
{"KP_Prior", XK_KP_Prior},
|
|
{"KP_Page_Up", XK_KP_Page_Up},
|
|
{"KP_Next", XK_KP_Next},
|
|
{"KP_Page_Down", XK_KP_Page_Down},
|
|
{"KP_End", XK_KP_End},
|
|
{"KP_Begin", XK_KP_Begin},
|
|
{"KP_Insert", XK_KP_Insert},
|
|
{"KP_Delete", XK_KP_Delete},
|
|
{"KP_Equal", XK_KP_Equal},
|
|
{"KP_Multiply", XK_KP_Multiply},
|
|
{"KP_Add", XK_KP_Add},
|
|
{"KP_Separator", XK_KP_Separator},
|
|
{"KP_Subtract", XK_KP_Subtract},
|
|
{"KP_Decimal", XK_KP_Decimal},
|
|
{"KP_Divide", XK_KP_Divide},
|
|
{"KP_0", XK_KP_0},
|
|
{"KP_1", XK_KP_1},
|
|
{"KP_2", XK_KP_2},
|
|
{"KP_3", XK_KP_3},
|
|
{"KP_4", XK_KP_4},
|
|
{"KP_5", XK_KP_5},
|
|
{"KP_6", XK_KP_6},
|
|
{"KP_7", XK_KP_7},
|
|
{"KP_8", XK_KP_8},
|
|
{"KP_9", XK_KP_9},
|
|
{"F1", XK_F1},
|
|
{"F2", XK_F2},
|
|
{"F3", XK_F3},
|
|
{"F4", XK_F4},
|
|
{"F5", XK_F5},
|
|
{"F6", XK_F6},
|
|
{"F7", XK_F7},
|
|
{"F8", XK_F8},
|
|
{"F9", XK_F9},
|
|
{"F10", XK_F10},
|
|
{"F11", XK_F11},
|
|
{"L1", XK_L1},
|
|
{"F12", XK_F12},
|
|
{"L2", XK_L2},
|
|
{"F13", XK_F13},
|
|
{"L3", XK_L3},
|
|
{"F14", XK_F14},
|
|
{"L4", XK_L4},
|
|
{"F15", XK_F15},
|
|
{"L5", XK_L5},
|
|
{"F16", XK_F16},
|
|
{"L6", XK_L6},
|
|
{"F17", XK_F17},
|
|
{"L7", XK_L7},
|
|
{"F18", XK_F18},
|
|
{"L8", XK_L8},
|
|
{"F19", XK_F19},
|
|
{"L9", XK_L9},
|
|
{"F20", XK_F20},
|
|
{"L10", XK_L10},
|
|
{"F21", XK_F21},
|
|
{"R1", XK_R1},
|
|
{"F22", XK_F22},
|
|
{"R2", XK_R2},
|
|
{"F23", XK_F23},
|
|
{"R3", XK_R3},
|
|
{"F24", XK_F24},
|
|
{"R4", XK_R4},
|
|
{"F25", XK_F25},
|
|
{"R5", XK_R5},
|
|
{"F26", XK_F26},
|
|
{"R6", XK_R6},
|
|
{"F27", XK_F27},
|
|
{"R7", XK_R7},
|
|
{"F28", XK_F28},
|
|
{"R8", XK_R8},
|
|
{"F29", XK_F29},
|
|
{"R9", XK_R9},
|
|
{"F30", XK_F30},
|
|
{"R10", XK_R10},
|
|
{"F31", XK_F31},
|
|
{"R11", XK_R11},
|
|
{"F32", XK_F32},
|
|
{"R12", XK_R12},
|
|
{"F33", XK_F33},
|
|
{"R13", XK_R13},
|
|
{"F34", XK_F34},
|
|
{"R14", XK_R14},
|
|
{"F35", XK_F35},
|
|
{"R15", XK_R15},
|
|
{"Shift_L", XK_Shift_L},
|
|
{"Shift_R", XK_Shift_R},
|
|
{"Control_L", XK_Control_L},
|
|
{"Control_R", XK_Control_R},
|
|
{"Caps_Lock", XK_Caps_Lock},
|
|
{"Shift_Lock", XK_Shift_Lock},
|
|
{"Meta_L", XK_Meta_L},
|
|
{"Meta_R", XK_Meta_R},
|
|
{"Alt_L", XK_Alt_L},
|
|
{"Alt_R", XK_Alt_R},
|
|
{"Super_L", XK_Super_L},
|
|
{"Super_R", XK_Super_R},
|
|
{"Hyper_L", XK_Hyper_L},
|
|
{"Hyper_R", XK_Hyper_R},
|
|
#endif /* XK_MISCELLANY */
|
|
#ifdef XK_XKB_KEYS
|
|
{"ISO_Lock", XK_ISO_Lock},
|
|
{"ISO_Level2_Latch", XK_ISO_Level2_Latch},
|
|
{"ISO_Level3_Shift", XK_ISO_Level3_Shift},
|
|
{"ISO_Level3_Latch", XK_ISO_Level3_Latch},
|
|
{"ISO_Level3_Lock", XK_ISO_Level3_Lock},
|
|
{"ISO_Group_Shift", XK_ISO_Group_Shift},
|
|
{"ISO_Group_Latch", XK_ISO_Group_Latch},
|
|
{"ISO_Group_Lock", XK_ISO_Group_Lock},
|
|
{"ISO_Next_Group", XK_ISO_Next_Group},
|
|
{"ISO_Next_Group_Lock", XK_ISO_Next_Group_Lock},
|
|
{"ISO_Prev_Group", XK_ISO_Prev_Group},
|
|
{"ISO_Prev_Group_Lock", XK_ISO_Prev_Group_Lock},
|
|
{"ISO_First_Group", XK_ISO_First_Group},
|
|
{"ISO_First_Group_Lock", XK_ISO_First_Group_Lock},
|
|
{"ISO_Last_Group", XK_ISO_Last_Group},
|
|
{"ISO_Last_Group_Lock", XK_ISO_Last_Group_Lock},
|
|
{"ISO_Left_Tab", XK_ISO_Left_Tab},
|
|
{"ISO_Move_Line_Up", XK_ISO_Move_Line_Up},
|
|
{"ISO_Move_Line_Down", XK_ISO_Move_Line_Down},
|
|
{"ISO_Partial_Line_Up", XK_ISO_Partial_Line_Up},
|
|
{"ISO_Partial_Line_Down", XK_ISO_Partial_Line_Down},
|
|
{"ISO_Partial_Space_Left", XK_ISO_Partial_Space_Left},
|
|
{"ISO_Partial_Space_Right", XK_ISO_Partial_Space_Right},
|
|
{"ISO_Set_Margin_Left", XK_ISO_Set_Margin_Left},
|
|
{"ISO_Set_Margin_Right", XK_ISO_Set_Margin_Right},
|
|
{"ISO_Release_Margin_Left", XK_ISO_Release_Margin_Left},
|
|
{"ISO_Release_Margin_Right", XK_ISO_Release_Margin_Right},
|
|
{"ISO_Release_Both_Margins", XK_ISO_Release_Both_Margins},
|
|
{"ISO_Fast_Cursor_Left", XK_ISO_Fast_Cursor_Left},
|
|
{"ISO_Fast_Cursor_Right", XK_ISO_Fast_Cursor_Right},
|
|
{"ISO_Fast_Cursor_Up", XK_ISO_Fast_Cursor_Up},
|
|
{"ISO_Fast_Cursor_Down", XK_ISO_Fast_Cursor_Down},
|
|
{"ISO_Continuous_Underline", XK_ISO_Continuous_Underline},
|
|
{"ISO_Discontinuous_Underline", XK_ISO_Discontinuous_Underline},
|
|
{"ISO_Emphasize", XK_ISO_Emphasize},
|
|
{"ISO_Center_Object", XK_ISO_Center_Object},
|
|
{"ISO_Enter", XK_ISO_Enter},
|
|
{"dead_grave", XK_dead_grave},
|
|
{"dead_acute", XK_dead_acute},
|
|
{"dead_circumflex", XK_dead_circumflex},
|
|
{"dead_tilde", XK_dead_tilde},
|
|
{"dead_macron", XK_dead_macron},
|
|
{"dead_breve", XK_dead_breve},
|
|
{"dead_abovedot", XK_dead_abovedot},
|
|
{"dead_diaeresis", XK_dead_diaeresis},
|
|
{"dead_abovering", XK_dead_abovering},
|
|
{"dead_doubleacute", XK_dead_doubleacute},
|
|
{"dead_caron", XK_dead_caron},
|
|
{"dead_cedilla", XK_dead_cedilla},
|
|
{"dead_ogonek", XK_dead_ogonek},
|
|
{"dead_iota", XK_dead_iota},
|
|
{"dead_voiced_sound", XK_dead_voiced_sound},
|
|
{"dead_semivoiced_sound", XK_dead_semivoiced_sound},
|
|
{"dead_belowdot", XK_dead_belowdot},
|
|
{"First_Virtual_Screen", XK_First_Virtual_Screen},
|
|
{"Prev_Virtual_Screen", XK_Prev_Virtual_Screen},
|
|
{"Next_Virtual_Screen", XK_Next_Virtual_Screen},
|
|
{"Last_Virtual_Screen", XK_Last_Virtual_Screen},
|
|
{"Terminate_Server", XK_Terminate_Server},
|
|
{"AccessX_Enable", XK_AccessX_Enable},
|
|
{"AccessX_Feedback_Enable", XK_AccessX_Feedback_Enable},
|
|
{"RepeatKeys_Enable", XK_RepeatKeys_Enable},
|
|
{"SlowKeys_Enable", XK_SlowKeys_Enable},
|
|
{"BounceKeys_Enable", XK_BounceKeys_Enable},
|
|
{"StickyKeys_Enable", XK_StickyKeys_Enable},
|
|
{"MouseKeys_Enable", XK_MouseKeys_Enable},
|
|
{"MouseKeys_Accel_Enable", XK_MouseKeys_Accel_Enable},
|
|
{"Overlay1_Enable", XK_Overlay1_Enable},
|
|
{"Overlay2_Enable", XK_Overlay2_Enable},
|
|
{"AudibleBell_Enable", XK_AudibleBell_Enable},
|
|
{"Pointer_Left", XK_Pointer_Left},
|
|
{"Pointer_Right", XK_Pointer_Right},
|
|
{"Pointer_Up", XK_Pointer_Up},
|
|
{"Pointer_Down", XK_Pointer_Down},
|
|
{"Pointer_UpLeft", XK_Pointer_UpLeft},
|
|
{"Pointer_UpRight", XK_Pointer_UpRight},
|
|
{"Pointer_DownLeft", XK_Pointer_DownLeft},
|
|
{"Pointer_DownRight", XK_Pointer_DownRight},
|
|
{"Pointer_Button_Dflt", XK_Pointer_Button_Dflt},
|
|
{"Pointer_Button1", XK_Pointer_Button1},
|
|
{"Pointer_Button2", XK_Pointer_Button2},
|
|
{"Pointer_Button3", XK_Pointer_Button3},
|
|
{"Pointer_Button4", XK_Pointer_Button4},
|
|
{"Pointer_Button5", XK_Pointer_Button5},
|
|
{"Pointer_DblClick_Dflt", XK_Pointer_DblClick_Dflt},
|
|
{"Pointer_DblClick1", XK_Pointer_DblClick1},
|
|
{"Pointer_DblClick2", XK_Pointer_DblClick2},
|
|
{"Pointer_DblClick3", XK_Pointer_DblClick3},
|
|
{"Pointer_DblClick4", XK_Pointer_DblClick4},
|
|
{"Pointer_DblClick5", XK_Pointer_DblClick5},
|
|
{"Pointer_Drag_Dflt", XK_Pointer_Drag_Dflt},
|
|
{"Pointer_Drag1", XK_Pointer_Drag1},
|
|
{"Pointer_Drag2", XK_Pointer_Drag2},
|
|
{"Pointer_Drag3", XK_Pointer_Drag3},
|
|
{"Pointer_Drag4", XK_Pointer_Drag4},
|
|
{"Pointer_Drag5", XK_Pointer_Drag5},
|
|
{"Pointer_EnableKeys", XK_Pointer_EnableKeys},
|
|
{"Pointer_Accelerate", XK_Pointer_Accelerate},
|
|
{"Pointer_DfltBtnNext", XK_Pointer_DfltBtnNext},
|
|
{"Pointer_DfltBtnPrev", XK_Pointer_DfltBtnPrev},
|
|
#endif
|
|
#ifdef XK_3270
|
|
{"3270_Duplicate", XK_3270_Duplicate},
|
|
{"3270_FieldMark", XK_3270_FieldMark},
|
|
{"3270_Right2", XK_3270_Right2},
|
|
{"3270_Left2", XK_3270_Left2},
|
|
{"3270_BackTab", XK_3270_BackTab},
|
|
{"3270_EraseEOF", XK_3270_EraseEOF},
|
|
{"3270_EraseInput", XK_3270_EraseInput},
|
|
{"3270_Reset", XK_3270_Reset},
|
|
{"3270_Quit", XK_3270_Quit},
|
|
{"3270_PA1", XK_3270_PA1},
|
|
{"3270_PA2", XK_3270_PA2},
|
|
{"3270_PA3", XK_3270_PA3},
|
|
{"3270_Test", XK_3270_Test},
|
|
{"3270_Attn", XK_3270_Attn},
|
|
{"3270_CursorBlink", XK_3270_CursorBlink},
|
|
{"3270_AltCursor", XK_3270_AltCursor},
|
|
{"3270_KeyClick", XK_3270_KeyClick},
|
|
{"3270_Jump", XK_3270_Jump},
|
|
{"3270_Ident", XK_3270_Ident},
|
|
{"3270_Rule", XK_3270_Rule},
|
|
{"3270_Copy", XK_3270_Copy},
|
|
{"3270_Play", XK_3270_Play},
|
|
{"3270_Setup", XK_3270_Setup},
|
|
{"3270_Record", XK_3270_Record},
|
|
{"3270_ChangeScreen", XK_3270_ChangeScreen},
|
|
{"3270_DeleteWord", XK_3270_DeleteWord},
|
|
{"3270_ExSelect", XK_3270_ExSelect},
|
|
{"3270_CursorSelect", XK_3270_CursorSelect},
|
|
{"3270_PrintScreen", XK_3270_PrintScreen},
|
|
{"3270_Enter", XK_3270_Enter},
|
|
#endif
|
|
#ifdef XK_LATIN1
|
|
{"space", XK_space},
|
|
{"exclam", XK_exclam},
|
|
{"quotedbl", XK_quotedbl},
|
|
{"numbersign", XK_numbersign},
|
|
{"dollar", XK_dollar},
|
|
{"percent", XK_percent},
|
|
{"ampersand", XK_ampersand},
|
|
{"apostrophe", XK_apostrophe},
|
|
{"quoteright", XK_quoteright},
|
|
{"parenleft", XK_parenleft},
|
|
{"parenright", XK_parenright},
|
|
{"asterisk", XK_asterisk},
|
|
{"plus", XK_plus},
|
|
{"comma", XK_comma},
|
|
{"minus", XK_minus},
|
|
{"period", XK_period},
|
|
{"slash", XK_slash},
|
|
{"0", XK_0},
|
|
{"1", XK_1},
|
|
{"2", XK_2},
|
|
{"3", XK_3},
|
|
{"4", XK_4},
|
|
{"5", XK_5},
|
|
{"6", XK_6},
|
|
{"7", XK_7},
|
|
{"8", XK_8},
|
|
{"9", XK_9},
|
|
{"colon", XK_colon},
|
|
{"semicolon", XK_semicolon},
|
|
{"less", XK_less},
|
|
{"equal", XK_equal},
|
|
{"greater", XK_greater},
|
|
{"question", XK_question},
|
|
{"at", XK_at},
|
|
{"A", XK_A},
|
|
{"B", XK_B},
|
|
{"C", XK_C},
|
|
{"D", XK_D},
|
|
{"E", XK_E},
|
|
{"F", XK_F},
|
|
{"G", XK_G},
|
|
{"H", XK_H},
|
|
{"I", XK_I},
|
|
{"J", XK_J},
|
|
{"K", XK_K},
|
|
{"L", XK_L},
|
|
{"M", XK_M},
|
|
{"N", XK_N},
|
|
{"O", XK_O},
|
|
{"P", XK_P},
|
|
{"Q", XK_Q},
|
|
{"R", XK_R},
|
|
{"S", XK_S},
|
|
{"T", XK_T},
|
|
{"U", XK_U},
|
|
{"V", XK_V},
|
|
{"W", XK_W},
|
|
{"X", XK_X},
|
|
{"Y", XK_Y},
|
|
{"Z", XK_Z},
|
|
{"bracketleft", XK_bracketleft},
|
|
{"backslash", XK_backslash},
|
|
{"bracketright", XK_bracketright},
|
|
{"asciicircum", XK_asciicircum},
|
|
{"underscore", XK_underscore},
|
|
{"grave", XK_grave},
|
|
{"quoteleft", XK_quoteleft},
|
|
{"a", XK_a},
|
|
{"b", XK_b},
|
|
{"c", XK_c},
|
|
{"d", XK_d},
|
|
{"e", XK_e},
|
|
{"f", XK_f},
|
|
{"g", XK_g},
|
|
{"h", XK_h},
|
|
{"i", XK_i},
|
|
{"j", XK_j},
|
|
{"k", XK_k},
|
|
{"l", XK_l},
|
|
{"m", XK_m},
|
|
{"n", XK_n},
|
|
{"o", XK_o},
|
|
{"p", XK_p},
|
|
{"q", XK_q},
|
|
{"r", XK_r},
|
|
{"s", XK_s},
|
|
{"t", XK_t},
|
|
{"u", XK_u},
|
|
{"v", XK_v},
|
|
{"w", XK_w},
|
|
{"x", XK_x},
|
|
{"y", XK_y},
|
|
{"z", XK_z},
|
|
{"braceleft", XK_braceleft},
|
|
{"bar", XK_bar},
|
|
{"braceright", XK_braceright},
|
|
{"asciitilde", XK_asciitilde},
|
|
{"nobreakspace", XK_nobreakspace},
|
|
{"exclamdown", XK_exclamdown},
|
|
{"cent", XK_cent},
|
|
{"sterling", XK_sterling},
|
|
{"currency", XK_currency},
|
|
{"yen", XK_yen},
|
|
{"brokenbar", XK_brokenbar},
|
|
{"section", XK_section},
|
|
{"diaeresis", XK_diaeresis},
|
|
{"copyright", XK_copyright},
|
|
{"ordfeminine", XK_ordfeminine},
|
|
{"guillemotleft", XK_guillemotleft},
|
|
{"notsign", XK_notsign},
|
|
{"hyphen", XK_hyphen},
|
|
{"registered", XK_registered},
|
|
{"macron", XK_macron},
|
|
{"degree", XK_degree},
|
|
{"plusminus", XK_plusminus},
|
|
{"twosuperior", XK_twosuperior},
|
|
{"threesuperior", XK_threesuperior},
|
|
{"acute", XK_acute},
|
|
{"mu", XK_mu},
|
|
{"paragraph", XK_paragraph},
|
|
{"periodcentered", XK_periodcentered},
|
|
{"cedilla", XK_cedilla},
|
|
{"onesuperior", XK_onesuperior},
|
|
{"masculine", XK_masculine},
|
|
{"guillemotright", XK_guillemotright},
|
|
{"onequarter", XK_onequarter},
|
|
{"onehalf", XK_onehalf},
|
|
{"threequarters", XK_threequarters},
|
|
{"questiondown", XK_questiondown},
|
|
{"Agrave", XK_Agrave},
|
|
{"Aacute", XK_Aacute},
|
|
{"Acircumflex", XK_Acircumflex},
|
|
{"Atilde", XK_Atilde},
|
|
{"Adiaeresis", XK_Adiaeresis},
|
|
{"Aring", XK_Aring},
|
|
{"AE", XK_AE},
|
|
{"Ccedilla", XK_Ccedilla},
|
|
{"Egrave", XK_Egrave},
|
|
{"Eacute", XK_Eacute},
|
|
{"Ecircumflex", XK_Ecircumflex},
|
|
{"Ediaeresis", XK_Ediaeresis},
|
|
{"Igrave", XK_Igrave},
|
|
{"Iacute", XK_Iacute},
|
|
{"Icircumflex", XK_Icircumflex},
|
|
{"Idiaeresis", XK_Idiaeresis},
|
|
{"ETH", XK_ETH},
|
|
{"Eth", XK_Eth},
|
|
{"Ntilde", XK_Ntilde},
|
|
{"Ograve", XK_Ograve},
|
|
{"Oacute", XK_Oacute},
|
|
{"Ocircumflex", XK_Ocircumflex},
|
|
{"Otilde", XK_Otilde},
|
|
{"Odiaeresis", XK_Odiaeresis},
|
|
{"multiply", XK_multiply},
|
|
{"Ooblique", XK_Ooblique},
|
|
{"Ugrave", XK_Ugrave},
|
|
{"Uacute", XK_Uacute},
|
|
{"Ucircumflex", XK_Ucircumflex},
|
|
{"Udiaeresis", XK_Udiaeresis},
|
|
{"Yacute", XK_Yacute},
|
|
{"THORN", XK_THORN},
|
|
{"Thorn", XK_Thorn},
|
|
{"ssharp", XK_ssharp},
|
|
{"agrave", XK_agrave},
|
|
{"aacute", XK_aacute},
|
|
{"acircumflex", XK_acircumflex},
|
|
{"atilde", XK_atilde},
|
|
{"adiaeresis", XK_adiaeresis},
|
|
{"aring", XK_aring},
|
|
{"ae", XK_ae},
|
|
{"ccedilla", XK_ccedilla},
|
|
{"egrave", XK_egrave},
|
|
{"eacute", XK_eacute},
|
|
{"ecircumflex", XK_ecircumflex},
|
|
{"ediaeresis", XK_ediaeresis},
|
|
{"igrave", XK_igrave},
|
|
{"iacute", XK_iacute},
|
|
{"icircumflex", XK_icircumflex},
|
|
{"idiaeresis", XK_idiaeresis},
|
|
{"eth", XK_eth},
|
|
{"ntilde", XK_ntilde},
|
|
{"ograve", XK_ograve},
|
|
{"oacute", XK_oacute},
|
|
{"ocircumflex", XK_ocircumflex},
|
|
{"otilde", XK_otilde},
|
|
{"odiaeresis", XK_odiaeresis},
|
|
{"division", XK_division},
|
|
{"oslash", XK_oslash},
|
|
{"ugrave", XK_ugrave},
|
|
{"uacute", XK_uacute},
|
|
{"ucircumflex", XK_ucircumflex},
|
|
{"udiaeresis", XK_udiaeresis},
|
|
{"yacute", XK_yacute},
|
|
{"thorn", XK_thorn},
|
|
{"ydiaeresis", XK_ydiaeresis},
|
|
#endif /* XK_LATIN1 */
|
|
#ifdef XK_LATIN2
|
|
{"Aogonek", XK_Aogonek},
|
|
{"breve", XK_breve},
|
|
{"Lstroke", XK_Lstroke},
|
|
{"Lcaron", XK_Lcaron},
|
|
{"Sacute", XK_Sacute},
|
|
{"Scaron", XK_Scaron},
|
|
{"Scedilla", XK_Scedilla},
|
|
{"Tcaron", XK_Tcaron},
|
|
{"Zacute", XK_Zacute},
|
|
{"Zcaron", XK_Zcaron},
|
|
{"Zabovedot", XK_Zabovedot},
|
|
{"aogonek", XK_aogonek},
|
|
{"ogonek", XK_ogonek},
|
|
{"lstroke", XK_lstroke},
|
|
{"lcaron", XK_lcaron},
|
|
{"sacute", XK_sacute},
|
|
{"caron", XK_caron},
|
|
{"scaron", XK_scaron},
|
|
{"scedilla", XK_scedilla},
|
|
{"tcaron", XK_tcaron},
|
|
{"zacute", XK_zacute},
|
|
{"doubleacute", XK_doubleacute},
|
|
{"zcaron", XK_zcaron},
|
|
{"zabovedot", XK_zabovedot},
|
|
{"Racute", XK_Racute},
|
|
{"Abreve", XK_Abreve},
|
|
{"Lacute", XK_Lacute},
|
|
{"Cacute", XK_Cacute},
|
|
{"Ccaron", XK_Ccaron},
|
|
{"Eogonek", XK_Eogonek},
|
|
{"Ecaron", XK_Ecaron},
|
|
{"Dcaron", XK_Dcaron},
|
|
{"Dstroke", XK_Dstroke},
|
|
{"Nacute", XK_Nacute},
|
|
{"Ncaron", XK_Ncaron},
|
|
{"Odoubleacute", XK_Odoubleacute},
|
|
{"Rcaron", XK_Rcaron},
|
|
{"Uring", XK_Uring},
|
|
{"Udoubleacute", XK_Udoubleacute},
|
|
{"Tcedilla", XK_Tcedilla},
|
|
{"racute", XK_racute},
|
|
{"abreve", XK_abreve},
|
|
{"lacute", XK_lacute},
|
|
{"cacute", XK_cacute},
|
|
{"ccaron", XK_ccaron},
|
|
{"eogonek", XK_eogonek},
|
|
{"ecaron", XK_ecaron},
|
|
{"dcaron", XK_dcaron},
|
|
{"dstroke", XK_dstroke},
|
|
{"nacute", XK_nacute},
|
|
{"ncaron", XK_ncaron},
|
|
{"odoubleacute", XK_odoubleacute},
|
|
{"udoubleacute", XK_udoubleacute},
|
|
{"rcaron", XK_rcaron},
|
|
{"uring", XK_uring},
|
|
{"tcedilla", XK_tcedilla},
|
|
{"abovedot", XK_abovedot},
|
|
#endif /* XK_LATIN2 */
|
|
#ifdef XK_LATIN3
|
|
{"Hstroke", XK_Hstroke},
|
|
{"Hcircumflex", XK_Hcircumflex},
|
|
{"Iabovedot", XK_Iabovedot},
|
|
{"Gbreve", XK_Gbreve},
|
|
{"Jcircumflex", XK_Jcircumflex},
|
|
{"hstroke", XK_hstroke},
|
|
{"hcircumflex", XK_hcircumflex},
|
|
{"idotless", XK_idotless},
|
|
{"gbreve", XK_gbreve},
|
|
{"jcircumflex", XK_jcircumflex},
|
|
{"Cabovedot", XK_Cabovedot},
|
|
{"Ccircumflex", XK_Ccircumflex},
|
|
{"Gabovedot", XK_Gabovedot},
|
|
{"Gcircumflex", XK_Gcircumflex},
|
|
{"Ubreve", XK_Ubreve},
|
|
{"Scircumflex", XK_Scircumflex},
|
|
{"cabovedot", XK_cabovedot},
|
|
{"ccircumflex", XK_ccircumflex},
|
|
{"gabovedot", XK_gabovedot},
|
|
{"gcircumflex", XK_gcircumflex},
|
|
{"ubreve", XK_ubreve},
|
|
{"scircumflex", XK_scircumflex},
|
|
#endif /* XK_LATIN3 */
|
|
#ifdef XK_LATIN4
|
|
{"kra", XK_kra},
|
|
{"kappa", XK_kappa},
|
|
{"Rcedilla", XK_Rcedilla},
|
|
{"Itilde", XK_Itilde},
|
|
{"Lcedilla", XK_Lcedilla},
|
|
{"Emacron", XK_Emacron},
|
|
{"Gcedilla", XK_Gcedilla},
|
|
{"Tslash", XK_Tslash},
|
|
{"rcedilla", XK_rcedilla},
|
|
{"itilde", XK_itilde},
|
|
{"lcedilla", XK_lcedilla},
|
|
{"emacron", XK_emacron},
|
|
{"gcedilla", XK_gcedilla},
|
|
{"tslash", XK_tslash},
|
|
{"ENG", XK_ENG},
|
|
{"eng", XK_eng},
|
|
{"Amacron", XK_Amacron},
|
|
{"Iogonek", XK_Iogonek},
|
|
{"Eabovedot", XK_Eabovedot},
|
|
{"Imacron", XK_Imacron},
|
|
{"Ncedilla", XK_Ncedilla},
|
|
{"Omacron", XK_Omacron},
|
|
{"Kcedilla", XK_Kcedilla},
|
|
{"Uogonek", XK_Uogonek},
|
|
{"Utilde", XK_Utilde},
|
|
{"Umacron", XK_Umacron},
|
|
{"amacron", XK_amacron},
|
|
{"iogonek", XK_iogonek},
|
|
{"eabovedot", XK_eabovedot},
|
|
{"imacron", XK_imacron},
|
|
{"ncedilla", XK_ncedilla},
|
|
{"omacron", XK_omacron},
|
|
{"kcedilla", XK_kcedilla},
|
|
{"uogonek", XK_uogonek},
|
|
{"utilde", XK_utilde},
|
|
{"umacron", XK_umacron},
|
|
#endif /* XK_LATIN4 */
|
|
#ifdef XK_KATAKANA
|
|
{"overline", XK_overline},
|
|
{"kana_fullstop", XK_kana_fullstop},
|
|
{"kana_openingbracket", XK_kana_openingbracket},
|
|
{"kana_closingbracket", XK_kana_closingbracket},
|
|
{"kana_comma", XK_kana_comma},
|
|
{"kana_conjunctive", XK_kana_conjunctive},
|
|
{"kana_middledot", XK_kana_middledot},
|
|
{"kana_WO", XK_kana_WO},
|
|
{"kana_a", XK_kana_a},
|
|
{"kana_i", XK_kana_i},
|
|
{"kana_u", XK_kana_u},
|
|
{"kana_e", XK_kana_e},
|
|
{"kana_o", XK_kana_o},
|
|
{"kana_ya", XK_kana_ya},
|
|
{"kana_yu", XK_kana_yu},
|
|
{"kana_yo", XK_kana_yo},
|
|
{"kana_tsu", XK_kana_tsu},
|
|
{"kana_tu", XK_kana_tu},
|
|
{"prolongedsound", XK_prolongedsound},
|
|
{"kana_A", XK_kana_A},
|
|
{"kana_I", XK_kana_I},
|
|
{"kana_U", XK_kana_U},
|
|
{"kana_E", XK_kana_E},
|
|
{"kana_O", XK_kana_O},
|
|
{"kana_KA", XK_kana_KA},
|
|
{"kana_KI", XK_kana_KI},
|
|
{"kana_KU", XK_kana_KU},
|
|
{"kana_KE", XK_kana_KE},
|
|
{"kana_KO", XK_kana_KO},
|
|
{"kana_SA", XK_kana_SA},
|
|
{"kana_SHI", XK_kana_SHI},
|
|
{"kana_SU", XK_kana_SU},
|
|
{"kana_SE", XK_kana_SE},
|
|
{"kana_SO", XK_kana_SO},
|
|
{"kana_TA", XK_kana_TA},
|
|
{"kana_CHI", XK_kana_CHI},
|
|
{"kana_TI", XK_kana_TI},
|
|
{"kana_TSU", XK_kana_TSU},
|
|
{"kana_TU", XK_kana_TU},
|
|
{"kana_TE", XK_kana_TE},
|
|
{"kana_TO", XK_kana_TO},
|
|
{"kana_NA", XK_kana_NA},
|
|
{"kana_NI", XK_kana_NI},
|
|
{"kana_NU", XK_kana_NU},
|
|
{"kana_NE", XK_kana_NE},
|
|
{"kana_NO", XK_kana_NO},
|
|
{"kana_HA", XK_kana_HA},
|
|
{"kana_HI", XK_kana_HI},
|
|
{"kana_FU", XK_kana_FU},
|
|
{"kana_HU", XK_kana_HU},
|
|
{"kana_HE", XK_kana_HE},
|
|
{"kana_HO", XK_kana_HO},
|
|
{"kana_MA", XK_kana_MA},
|
|
{"kana_MI", XK_kana_MI},
|
|
{"kana_MU", XK_kana_MU},
|
|
{"kana_ME", XK_kana_ME},
|
|
{"kana_MO", XK_kana_MO},
|
|
{"kana_YA", XK_kana_YA},
|
|
{"kana_YU", XK_kana_YU},
|
|
{"kana_YO", XK_kana_YO},
|
|
{"kana_RA", XK_kana_RA},
|
|
{"kana_RI", XK_kana_RI},
|
|
{"kana_RU", XK_kana_RU},
|
|
{"kana_RE", XK_kana_RE},
|
|
{"kana_RO", XK_kana_RO},
|
|
{"kana_WA", XK_kana_WA},
|
|
{"kana_N", XK_kana_N},
|
|
{"voicedsound", XK_voicedsound},
|
|
{"semivoicedsound", XK_semivoicedsound},
|
|
{"kana_switch", XK_kana_switch},
|
|
#endif /* XK_KATAKANA */
|
|
#ifdef XK_ARABIC
|
|
{"Arabic_comma", XK_Arabic_comma},
|
|
{"Arabic_semicolon", XK_Arabic_semicolon},
|
|
{"Arabic_question_mark", XK_Arabic_question_mark},
|
|
{"Arabic_hamza", XK_Arabic_hamza},
|
|
{"Arabic_maddaonalef", XK_Arabic_maddaonalef},
|
|
{"Arabic_hamzaonalef", XK_Arabic_hamzaonalef},
|
|
{"Arabic_hamzaonwaw", XK_Arabic_hamzaonwaw},
|
|
{"Arabic_hamzaunderalef", XK_Arabic_hamzaunderalef},
|
|
{"Arabic_hamzaonyeh", XK_Arabic_hamzaonyeh},
|
|
{"Arabic_alef", XK_Arabic_alef},
|
|
{"Arabic_beh", XK_Arabic_beh},
|
|
{"Arabic_tehmarbuta", XK_Arabic_tehmarbuta},
|
|
{"Arabic_teh", XK_Arabic_teh},
|
|
{"Arabic_theh", XK_Arabic_theh},
|
|
{"Arabic_jeem", XK_Arabic_jeem},
|
|
{"Arabic_hah", XK_Arabic_hah},
|
|
{"Arabic_khah", XK_Arabic_khah},
|
|
{"Arabic_dal", XK_Arabic_dal},
|
|
{"Arabic_thal", XK_Arabic_thal},
|
|
{"Arabic_ra", XK_Arabic_ra},
|
|
{"Arabic_zain", XK_Arabic_zain},
|
|
{"Arabic_seen", XK_Arabic_seen},
|
|
{"Arabic_sheen", XK_Arabic_sheen},
|
|
{"Arabic_sad", XK_Arabic_sad},
|
|
{"Arabic_dad", XK_Arabic_dad},
|
|
{"Arabic_tah", XK_Arabic_tah},
|
|
{"Arabic_zah", XK_Arabic_zah},
|
|
{"Arabic_ain", XK_Arabic_ain},
|
|
{"Arabic_ghain", XK_Arabic_ghain},
|
|
{"Arabic_tatweel", XK_Arabic_tatweel},
|
|
{"Arabic_feh", XK_Arabic_feh},
|
|
{"Arabic_qaf", XK_Arabic_qaf},
|
|
{"Arabic_kaf", XK_Arabic_kaf},
|
|
{"Arabic_lam", XK_Arabic_lam},
|
|
{"Arabic_meem", XK_Arabic_meem},
|
|
{"Arabic_noon", XK_Arabic_noon},
|
|
{"Arabic_ha", XK_Arabic_ha},
|
|
{"Arabic_heh", XK_Arabic_heh},
|
|
{"Arabic_waw", XK_Arabic_waw},
|
|
{"Arabic_alefmaksura", XK_Arabic_alefmaksura},
|
|
{"Arabic_yeh", XK_Arabic_yeh},
|
|
{"Arabic_fathatan", XK_Arabic_fathatan},
|
|
{"Arabic_dammatan", XK_Arabic_dammatan},
|
|
{"Arabic_kasratan", XK_Arabic_kasratan},
|
|
{"Arabic_fatha", XK_Arabic_fatha},
|
|
{"Arabic_damma", XK_Arabic_damma},
|
|
{"Arabic_kasra", XK_Arabic_kasra},
|
|
{"Arabic_shadda", XK_Arabic_shadda},
|
|
{"Arabic_sukun", XK_Arabic_sukun},
|
|
{"Arabic_switch", XK_Arabic_switch},
|
|
#endif /* XK_ARABIC */
|
|
#ifdef XK_CYRILLIC
|
|
{"Serbian_dje", XK_Serbian_dje},
|
|
{"Macedonia_gje", XK_Macedonia_gje},
|
|
{"Cyrillic_io", XK_Cyrillic_io},
|
|
{"Ukrainian_ie", XK_Ukrainian_ie},
|
|
{"Ukranian_je", XK_Ukranian_je},
|
|
{"Macedonia_dse", XK_Macedonia_dse},
|
|
{"Ukrainian_i", XK_Ukrainian_i},
|
|
{"Ukranian_i", XK_Ukranian_i},
|
|
{"Ukrainian_yi", XK_Ukrainian_yi},
|
|
{"Ukranian_yi", XK_Ukranian_yi},
|
|
{"Cyrillic_je", XK_Cyrillic_je},
|
|
{"Serbian_je", XK_Serbian_je},
|
|
{"Cyrillic_lje", XK_Cyrillic_lje},
|
|
{"Serbian_lje", XK_Serbian_lje},
|
|
{"Cyrillic_nje", XK_Cyrillic_nje},
|
|
{"Serbian_nje", XK_Serbian_nje},
|
|
{"Serbian_tshe", XK_Serbian_tshe},
|
|
{"Macedonia_kje", XK_Macedonia_kje},
|
|
{"Byelorussian_shortu", XK_Byelorussian_shortu},
|
|
{"Cyrillic_dzhe", XK_Cyrillic_dzhe},
|
|
{"Serbian_dze", XK_Serbian_dze},
|
|
{"numerosign", XK_numerosign},
|
|
{"Serbian_DJE", XK_Serbian_DJE},
|
|
{"Macedonia_GJE", XK_Macedonia_GJE},
|
|
{"Cyrillic_IO", XK_Cyrillic_IO},
|
|
{"Ukrainian_IE", XK_Ukrainian_IE},
|
|
{"Ukranian_JE", XK_Ukranian_JE},
|
|
{"Macedonia_DSE", XK_Macedonia_DSE},
|
|
{"Ukrainian_I", XK_Ukrainian_I},
|
|
{"Ukranian_I", XK_Ukranian_I},
|
|
{"Ukrainian_YI", XK_Ukrainian_YI},
|
|
{"Ukranian_YI", XK_Ukranian_YI},
|
|
{"Cyrillic_JE", XK_Cyrillic_JE},
|
|
{"Serbian_JE", XK_Serbian_JE},
|
|
{"Cyrillic_LJE", XK_Cyrillic_LJE},
|
|
{"Serbian_LJE", XK_Serbian_LJE},
|
|
{"Cyrillic_NJE", XK_Cyrillic_NJE},
|
|
{"Serbian_NJE", XK_Serbian_NJE},
|
|
{"Serbian_TSHE", XK_Serbian_TSHE},
|
|
{"Macedonia_KJE", XK_Macedonia_KJE},
|
|
{"Byelorussian_SHORTU", XK_Byelorussian_SHORTU},
|
|
{"Cyrillic_DZHE", XK_Cyrillic_DZHE},
|
|
{"Serbian_DZE", XK_Serbian_DZE},
|
|
{"Cyrillic_yu", XK_Cyrillic_yu},
|
|
{"Cyrillic_a", XK_Cyrillic_a},
|
|
{"Cyrillic_be", XK_Cyrillic_be},
|
|
{"Cyrillic_tse", XK_Cyrillic_tse},
|
|
{"Cyrillic_de", XK_Cyrillic_de},
|
|
{"Cyrillic_ie", XK_Cyrillic_ie},
|
|
{"Cyrillic_ef", XK_Cyrillic_ef},
|
|
{"Cyrillic_ghe", XK_Cyrillic_ghe},
|
|
{"Cyrillic_ha", XK_Cyrillic_ha},
|
|
{"Cyrillic_i", XK_Cyrillic_i},
|
|
{"Cyrillic_shorti", XK_Cyrillic_shorti},
|
|
{"Cyrillic_ka", XK_Cyrillic_ka},
|
|
{"Cyrillic_el", XK_Cyrillic_el},
|
|
{"Cyrillic_em", XK_Cyrillic_em},
|
|
{"Cyrillic_en", XK_Cyrillic_en},
|
|
{"Cyrillic_o", XK_Cyrillic_o},
|
|
{"Cyrillic_pe", XK_Cyrillic_pe},
|
|
{"Cyrillic_ya", XK_Cyrillic_ya},
|
|
{"Cyrillic_er", XK_Cyrillic_er},
|
|
{"Cyrillic_es", XK_Cyrillic_es},
|
|
{"Cyrillic_te", XK_Cyrillic_te},
|
|
{"Cyrillic_u", XK_Cyrillic_u},
|
|
{"Cyrillic_zhe", XK_Cyrillic_zhe},
|
|
{"Cyrillic_ve", XK_Cyrillic_ve},
|
|
{"Cyrillic_softsign", XK_Cyrillic_softsign},
|
|
{"Cyrillic_yeru", XK_Cyrillic_yeru},
|
|
{"Cyrillic_ze", XK_Cyrillic_ze},
|
|
{"Cyrillic_sha", XK_Cyrillic_sha},
|
|
{"Cyrillic_e", XK_Cyrillic_e},
|
|
{"Cyrillic_shcha", XK_Cyrillic_shcha},
|
|
{"Cyrillic_che", XK_Cyrillic_che},
|
|
{"Cyrillic_hardsign", XK_Cyrillic_hardsign},
|
|
{"Cyrillic_YU", XK_Cyrillic_YU},
|
|
{"Cyrillic_A", XK_Cyrillic_A},
|
|
{"Cyrillic_BE", XK_Cyrillic_BE},
|
|
{"Cyrillic_TSE", XK_Cyrillic_TSE},
|
|
{"Cyrillic_DE", XK_Cyrillic_DE},
|
|
{"Cyrillic_IE", XK_Cyrillic_IE},
|
|
{"Cyrillic_EF", XK_Cyrillic_EF},
|
|
{"Cyrillic_GHE", XK_Cyrillic_GHE},
|
|
{"Cyrillic_HA", XK_Cyrillic_HA},
|
|
{"Cyrillic_I", XK_Cyrillic_I},
|
|
{"Cyrillic_SHORTI", XK_Cyrillic_SHORTI},
|
|
{"Cyrillic_KA", XK_Cyrillic_KA},
|
|
{"Cyrillic_EL", XK_Cyrillic_EL},
|
|
{"Cyrillic_EM", XK_Cyrillic_EM},
|
|
{"Cyrillic_EN", XK_Cyrillic_EN},
|
|
{"Cyrillic_O", XK_Cyrillic_O},
|
|
{"Cyrillic_PE", XK_Cyrillic_PE},
|
|
{"Cyrillic_YA", XK_Cyrillic_YA},
|
|
{"Cyrillic_ER", XK_Cyrillic_ER},
|
|
{"Cyrillic_ES", XK_Cyrillic_ES},
|
|
{"Cyrillic_TE", XK_Cyrillic_TE},
|
|
{"Cyrillic_U", XK_Cyrillic_U},
|
|
{"Cyrillic_ZHE", XK_Cyrillic_ZHE},
|
|
{"Cyrillic_VE", XK_Cyrillic_VE},
|
|
{"Cyrillic_SOFTSIGN", XK_Cyrillic_SOFTSIGN},
|
|
{"Cyrillic_YERU", XK_Cyrillic_YERU},
|
|
{"Cyrillic_ZE", XK_Cyrillic_ZE},
|
|
{"Cyrillic_SHA", XK_Cyrillic_SHA},
|
|
{"Cyrillic_E", XK_Cyrillic_E},
|
|
{"Cyrillic_SHCHA", XK_Cyrillic_SHCHA},
|
|
{"Cyrillic_CHE", XK_Cyrillic_CHE},
|
|
{"Cyrillic_HARDSIGN", XK_Cyrillic_HARDSIGN},
|
|
#endif /* XK_CYRILLIC */
|
|
#ifdef XK_GREEK
|
|
{"Greek_ALPHAaccent", XK_Greek_ALPHAaccent},
|
|
{"Greek_EPSILONaccent", XK_Greek_EPSILONaccent},
|
|
{"Greek_ETAaccent", XK_Greek_ETAaccent},
|
|
{"Greek_IOTAaccent", XK_Greek_IOTAaccent},
|
|
{"Greek_IOTAdieresis", XK_Greek_IOTAdieresis},
|
|
{"Greek_OMICRONaccent", XK_Greek_OMICRONaccent},
|
|
{"Greek_UPSILONaccent", XK_Greek_UPSILONaccent},
|
|
{"Greek_UPSILONdieresis", XK_Greek_UPSILONdieresis},
|
|
{"Greek_OMEGAaccent", XK_Greek_OMEGAaccent},
|
|
{"Greek_accentdieresis", XK_Greek_accentdieresis},
|
|
{"Greek_horizbar", XK_Greek_horizbar},
|
|
{"Greek_alphaaccent", XK_Greek_alphaaccent},
|
|
{"Greek_epsilonaccent", XK_Greek_epsilonaccent},
|
|
{"Greek_etaaccent", XK_Greek_etaaccent},
|
|
{"Greek_iotaaccent", XK_Greek_iotaaccent},
|
|
{"Greek_iotadieresis", XK_Greek_iotadieresis},
|
|
{"Greek_iotaaccentdieresis", XK_Greek_iotaaccentdieresis},
|
|
{"Greek_omicronaccent", XK_Greek_omicronaccent},
|
|
{"Greek_upsilonaccent", XK_Greek_upsilonaccent},
|
|
{"Greek_upsilondieresis", XK_Greek_upsilondieresis},
|
|
{"Greek_upsilonaccentdieresis", XK_Greek_upsilonaccentdieresis},
|
|
{"Greek_omegaaccent", XK_Greek_omegaaccent},
|
|
{"Greek_ALPHA", XK_Greek_ALPHA},
|
|
{"Greek_BETA", XK_Greek_BETA},
|
|
{"Greek_GAMMA", XK_Greek_GAMMA},
|
|
{"Greek_DELTA", XK_Greek_DELTA},
|
|
{"Greek_EPSILON", XK_Greek_EPSILON},
|
|
{"Greek_ZETA", XK_Greek_ZETA},
|
|
{"Greek_ETA", XK_Greek_ETA},
|
|
{"Greek_THETA", XK_Greek_THETA},
|
|
{"Greek_IOTA", XK_Greek_IOTA},
|
|
{"Greek_KAPPA", XK_Greek_KAPPA},
|
|
{"Greek_LAMDA", XK_Greek_LAMDA},
|
|
{"Greek_LAMBDA", XK_Greek_LAMBDA},
|
|
{"Greek_MU", XK_Greek_MU},
|
|
{"Greek_NU", XK_Greek_NU},
|
|
{"Greek_XI", XK_Greek_XI},
|
|
{"Greek_OMICRON", XK_Greek_OMICRON},
|
|
{"Greek_PI", XK_Greek_PI},
|
|
{"Greek_RHO", XK_Greek_RHO},
|
|
{"Greek_SIGMA", XK_Greek_SIGMA},
|
|
{"Greek_TAU", XK_Greek_TAU},
|
|
{"Greek_UPSILON", XK_Greek_UPSILON},
|
|
{"Greek_PHI", XK_Greek_PHI},
|
|
{"Greek_CHI", XK_Greek_CHI},
|
|
{"Greek_PSI", XK_Greek_PSI},
|
|
{"Greek_OMEGA", XK_Greek_OMEGA},
|
|
{"Greek_alpha", XK_Greek_alpha},
|
|
{"Greek_beta", XK_Greek_beta},
|
|
{"Greek_gamma", XK_Greek_gamma},
|
|
{"Greek_delta", XK_Greek_delta},
|
|
{"Greek_epsilon", XK_Greek_epsilon},
|
|
{"Greek_zeta", XK_Greek_zeta},
|
|
{"Greek_eta", XK_Greek_eta},
|
|
{"Greek_theta", XK_Greek_theta},
|
|
{"Greek_iota", XK_Greek_iota},
|
|
{"Greek_kappa", XK_Greek_kappa},
|
|
{"Greek_lamda", XK_Greek_lamda},
|
|
{"Greek_lambda", XK_Greek_lambda},
|
|
{"Greek_mu", XK_Greek_mu},
|
|
{"Greek_nu", XK_Greek_nu},
|
|
{"Greek_xi", XK_Greek_xi},
|
|
{"Greek_omicron", XK_Greek_omicron},
|
|
{"Greek_pi", XK_Greek_pi},
|
|
{"Greek_rho", XK_Greek_rho},
|
|
{"Greek_sigma", XK_Greek_sigma},
|
|
{"Greek_finalsmallsigma", XK_Greek_finalsmallsigma},
|
|
{"Greek_tau", XK_Greek_tau},
|
|
{"Greek_upsilon", XK_Greek_upsilon},
|
|
{"Greek_phi", XK_Greek_phi},
|
|
{"Greek_chi", XK_Greek_chi},
|
|
{"Greek_psi", XK_Greek_psi},
|
|
{"Greek_omega", XK_Greek_omega},
|
|
{"Greek_switch", XK_Greek_switch},
|
|
#endif /* XK_GREEK */
|
|
#ifdef XK_TECHNICAL
|
|
{"leftradical", XK_leftradical},
|
|
{"topleftradical", XK_topleftradical},
|
|
{"horizconnector", XK_horizconnector},
|
|
{"topintegral", XK_topintegral},
|
|
{"botintegral", XK_botintegral},
|
|
{"vertconnector", XK_vertconnector},
|
|
{"topleftsqbracket", XK_topleftsqbracket},
|
|
{"botleftsqbracket", XK_botleftsqbracket},
|
|
{"toprightsqbracket", XK_toprightsqbracket},
|
|
{"botrightsqbracket", XK_botrightsqbracket},
|
|
{"topleftparens", XK_topleftparens},
|
|
{"botleftparens", XK_botleftparens},
|
|
{"toprightparens", XK_toprightparens},
|
|
{"botrightparens", XK_botrightparens},
|
|
{"leftmiddlecurlybrace", XK_leftmiddlecurlybrace},
|
|
{"rightmiddlecurlybrace", XK_rightmiddlecurlybrace},
|
|
{"topleftsummation", XK_topleftsummation},
|
|
{"botleftsummation", XK_botleftsummation},
|
|
{"topvertsummationconnector", XK_topvertsummationconnector},
|
|
{"botvertsummationconnector", XK_botvertsummationconnector},
|
|
{"toprightsummation", XK_toprightsummation},
|
|
{"botrightsummation", XK_botrightsummation},
|
|
{"rightmiddlesummation", XK_rightmiddlesummation},
|
|
{"lessthanequal", XK_lessthanequal},
|
|
{"notequal", XK_notequal},
|
|
{"greaterthanequal", XK_greaterthanequal},
|
|
{"integral", XK_integral},
|
|
{"therefore", XK_therefore},
|
|
{"variation", XK_variation},
|
|
{"infinity", XK_infinity},
|
|
{"nabla", XK_nabla},
|
|
{"approximate", XK_approximate},
|
|
{"similarequal", XK_similarequal},
|
|
{"ifonlyif", XK_ifonlyif},
|
|
{"implies", XK_implies},
|
|
{"identical", XK_identical},
|
|
{"radical", XK_radical},
|
|
{"includedin", XK_includedin},
|
|
{"includes", XK_includes},
|
|
{"intersection", XK_intersection},
|
|
{"union", XK_union},
|
|
{"logicaland", XK_logicaland},
|
|
{"logicalor", XK_logicalor},
|
|
{"partialderivative", XK_partialderivative},
|
|
{"function", XK_function},
|
|
{"leftarrow", XK_leftarrow},
|
|
{"uparrow", XK_uparrow},
|
|
{"rightarrow", XK_rightarrow},
|
|
{"downarrow", XK_downarrow},
|
|
#endif /* XK_TECHNICAL */
|
|
#ifdef XK_SPECIAL
|
|
{"blank", XK_blank},
|
|
{"soliddiamond", XK_soliddiamond},
|
|
{"checkerboard", XK_checkerboard},
|
|
{"ht", XK_ht},
|
|
{"ff", XK_ff},
|
|
{"cr", XK_cr},
|
|
{"lf", XK_lf},
|
|
{"nl", XK_nl},
|
|
{"vt", XK_vt},
|
|
{"lowrightcorner", XK_lowrightcorner},
|
|
{"uprightcorner", XK_uprightcorner},
|
|
{"upleftcorner", XK_upleftcorner},
|
|
{"lowleftcorner", XK_lowleftcorner},
|
|
{"crossinglines", XK_crossinglines},
|
|
{"horizlinescan1", XK_horizlinescan1},
|
|
{"horizlinescan3", XK_horizlinescan3},
|
|
{"horizlinescan5", XK_horizlinescan5},
|
|
{"horizlinescan7", XK_horizlinescan7},
|
|
{"horizlinescan9", XK_horizlinescan9},
|
|
{"leftt", XK_leftt},
|
|
{"rightt", XK_rightt},
|
|
{"bott", XK_bott},
|
|
{"topt", XK_topt},
|
|
{"vertbar", XK_vertbar},
|
|
#endif /* XK_SPECIAL */
|
|
#ifdef XK_PUBLISHING
|
|
{"emspace", XK_emspace},
|
|
{"enspace", XK_enspace},
|
|
{"em3space", XK_em3space},
|
|
{"em4space", XK_em4space},
|
|
{"digitspace", XK_digitspace},
|
|
{"punctspace", XK_punctspace},
|
|
{"thinspace", XK_thinspace},
|
|
{"hairspace", XK_hairspace},
|
|
{"emdash", XK_emdash},
|
|
{"endash", XK_endash},
|
|
{"signifblank", XK_signifblank},
|
|
{"ellipsis", XK_ellipsis},
|
|
{"doubbaselinedot", XK_doubbaselinedot},
|
|
{"onethird", XK_onethird},
|
|
{"twothirds", XK_twothirds},
|
|
{"onefifth", XK_onefifth},
|
|
{"twofifths", XK_twofifths},
|
|
{"threefifths", XK_threefifths},
|
|
{"fourfifths", XK_fourfifths},
|
|
{"onesixth", XK_onesixth},
|
|
{"fivesixths", XK_fivesixths},
|
|
{"careof", XK_careof},
|
|
{"figdash", XK_figdash},
|
|
{"leftanglebracket", XK_leftanglebracket},
|
|
{"decimalpoint", XK_decimalpoint},
|
|
{"rightanglebracket", XK_rightanglebracket},
|
|
{"marker", XK_marker},
|
|
{"oneeighth", XK_oneeighth},
|
|
{"threeeighths", XK_threeeighths},
|
|
{"fiveeighths", XK_fiveeighths},
|
|
{"seveneighths", XK_seveneighths},
|
|
{"trademark", XK_trademark},
|
|
{"signaturemark", XK_signaturemark},
|
|
{"trademarkincircle", XK_trademarkincircle},
|
|
{"leftopentriangle", XK_leftopentriangle},
|
|
{"rightopentriangle", XK_rightopentriangle},
|
|
{"emopencircle", XK_emopencircle},
|
|
{"emopenrectangle", XK_emopenrectangle},
|
|
{"leftsinglequotemark", XK_leftsinglequotemark},
|
|
{"rightsinglequotemark", XK_rightsinglequotemark},
|
|
{"leftdoublequotemark", XK_leftdoublequotemark},
|
|
{"rightdoublequotemark", XK_rightdoublequotemark},
|
|
{"prescription", XK_prescription},
|
|
{"minutes", XK_minutes},
|
|
{"seconds", XK_seconds},
|
|
{"latincross", XK_latincross},
|
|
{"hexagram", XK_hexagram},
|
|
{"filledrectbullet", XK_filledrectbullet},
|
|
{"filledlefttribullet", XK_filledlefttribullet},
|
|
{"filledrighttribullet", XK_filledrighttribullet},
|
|
{"emfilledcircle", XK_emfilledcircle},
|
|
{"emfilledrect", XK_emfilledrect},
|
|
{"enopencircbullet", XK_enopencircbullet},
|
|
{"enopensquarebullet", XK_enopensquarebullet},
|
|
{"openrectbullet", XK_openrectbullet},
|
|
{"opentribulletup", XK_opentribulletup},
|
|
{"opentribulletdown", XK_opentribulletdown},
|
|
{"openstar", XK_openstar},
|
|
{"enfilledcircbullet", XK_enfilledcircbullet},
|
|
{"enfilledsqbullet", XK_enfilledsqbullet},
|
|
{"filledtribulletup", XK_filledtribulletup},
|
|
{"filledtribulletdown", XK_filledtribulletdown},
|
|
{"leftpointer", XK_leftpointer},
|
|
{"rightpointer", XK_rightpointer},
|
|
{"club", XK_club},
|
|
{"diamond", XK_diamond},
|
|
{"heart", XK_heart},
|
|
{"maltesecross", XK_maltesecross},
|
|
{"dagger", XK_dagger},
|
|
{"doubledagger", XK_doubledagger},
|
|
{"checkmark", XK_checkmark},
|
|
{"ballotcross", XK_ballotcross},
|
|
{"musicalsharp", XK_musicalsharp},
|
|
{"musicalflat", XK_musicalflat},
|
|
{"malesymbol", XK_malesymbol},
|
|
{"femalesymbol", XK_femalesymbol},
|
|
{"telephone", XK_telephone},
|
|
{"telephonerecorder", XK_telephonerecorder},
|
|
{"phonographcopyright", XK_phonographcopyright},
|
|
{"caret", XK_caret},
|
|
{"singlelowquotemark", XK_singlelowquotemark},
|
|
{"doublelowquotemark", XK_doublelowquotemark},
|
|
{"cursor", XK_cursor},
|
|
#endif /* XK_PUBLISHING */
|
|
#ifdef XK_APL
|
|
{"leftcaret", XK_leftcaret},
|
|
{"rightcaret", XK_rightcaret},
|
|
{"downcaret", XK_downcaret},
|
|
{"upcaret", XK_upcaret},
|
|
{"overbar", XK_overbar},
|
|
{"downtack", XK_downtack},
|
|
{"upshoe", XK_upshoe},
|
|
{"downstile", XK_downstile},
|
|
{"underbar", XK_underbar},
|
|
{"jot", XK_jot},
|
|
{"quad", XK_quad},
|
|
{"uptack", XK_uptack},
|
|
{"circle", XK_circle},
|
|
{"upstile", XK_upstile},
|
|
{"downshoe", XK_downshoe},
|
|
{"rightshoe", XK_rightshoe},
|
|
{"leftshoe", XK_leftshoe},
|
|
{"lefttack", XK_lefttack},
|
|
{"righttack", XK_righttack},
|
|
#endif /* XK_APL */
|
|
#ifdef XK_HEBREW
|
|
{"hebrew_doublelowline", XK_hebrew_doublelowline},
|
|
{"hebrew_aleph", XK_hebrew_aleph},
|
|
{"hebrew_bet", XK_hebrew_bet},
|
|
{"hebrew_beth", XK_hebrew_beth},
|
|
{"hebrew_gimel", XK_hebrew_gimel},
|
|
{"hebrew_gimmel", XK_hebrew_gimmel},
|
|
{"hebrew_dalet", XK_hebrew_dalet},
|
|
{"hebrew_daleth", XK_hebrew_daleth},
|
|
{"hebrew_he", XK_hebrew_he},
|
|
{"hebrew_waw", XK_hebrew_waw},
|
|
{"hebrew_zain", XK_hebrew_zain},
|
|
{"hebrew_zayin", XK_hebrew_zayin},
|
|
{"hebrew_chet", XK_hebrew_chet},
|
|
{"hebrew_het", XK_hebrew_het},
|
|
{"hebrew_tet", XK_hebrew_tet},
|
|
{"hebrew_teth", XK_hebrew_teth},
|
|
{"hebrew_yod", XK_hebrew_yod},
|
|
{"hebrew_finalkaph", XK_hebrew_finalkaph},
|
|
{"hebrew_kaph", XK_hebrew_kaph},
|
|
{"hebrew_lamed", XK_hebrew_lamed},
|
|
{"hebrew_finalmem", XK_hebrew_finalmem},
|
|
{"hebrew_mem", XK_hebrew_mem},
|
|
{"hebrew_finalnun", XK_hebrew_finalnun},
|
|
{"hebrew_nun", XK_hebrew_nun},
|
|
{"hebrew_samech", XK_hebrew_samech},
|
|
{"hebrew_samekh", XK_hebrew_samekh},
|
|
{"hebrew_ayin", XK_hebrew_ayin},
|
|
{"hebrew_finalpe", XK_hebrew_finalpe},
|
|
{"hebrew_pe", XK_hebrew_pe},
|
|
{"hebrew_finalzade", XK_hebrew_finalzade},
|
|
{"hebrew_finalzadi", XK_hebrew_finalzadi},
|
|
{"hebrew_zade", XK_hebrew_zade},
|
|
{"hebrew_zadi", XK_hebrew_zadi},
|
|
{"hebrew_qoph", XK_hebrew_qoph},
|
|
{"hebrew_kuf", XK_hebrew_kuf},
|
|
{"hebrew_resh", XK_hebrew_resh},
|
|
{"hebrew_shin", XK_hebrew_shin},
|
|
{"hebrew_taw", XK_hebrew_taw},
|
|
{"hebrew_taf", XK_hebrew_taf},
|
|
{"Hebrew_switch", XK_Hebrew_switch},
|
|
#endif /* XK_HEBREW */
|
|
#ifdef XK_THAI
|
|
{"Thai_kokai", XK_Thai_kokai},
|
|
{"Thai_khokhai", XK_Thai_khokhai},
|
|
{"Thai_khokhuat", XK_Thai_khokhuat},
|
|
{"Thai_khokhwai", XK_Thai_khokhwai},
|
|
{"Thai_khokhon", XK_Thai_khokhon},
|
|
{"Thai_khorakhang", XK_Thai_khorakhang},
|
|
{"Thai_ngongu", XK_Thai_ngongu},
|
|
{"Thai_chochan", XK_Thai_chochan},
|
|
{"Thai_choching", XK_Thai_choching},
|
|
{"Thai_chochang", XK_Thai_chochang},
|
|
{"Thai_soso", XK_Thai_soso},
|
|
{"Thai_chochoe", XK_Thai_chochoe},
|
|
{"Thai_yoying", XK_Thai_yoying},
|
|
{"Thai_dochada", XK_Thai_dochada},
|
|
{"Thai_topatak", XK_Thai_topatak},
|
|
{"Thai_thothan", XK_Thai_thothan},
|
|
{"Thai_thonangmontho", XK_Thai_thonangmontho},
|
|
{"Thai_thophuthao", XK_Thai_thophuthao},
|
|
{"Thai_nonen", XK_Thai_nonen},
|
|
{"Thai_dodek", XK_Thai_dodek},
|
|
{"Thai_totao", XK_Thai_totao},
|
|
{"Thai_thothung", XK_Thai_thothung},
|
|
{"Thai_thothahan", XK_Thai_thothahan},
|
|
{"Thai_thothong", XK_Thai_thothong},
|
|
{"Thai_nonu", XK_Thai_nonu},
|
|
{"Thai_bobaimai", XK_Thai_bobaimai},
|
|
{"Thai_popla", XK_Thai_popla},
|
|
{"Thai_phophung", XK_Thai_phophung},
|
|
{"Thai_fofa", XK_Thai_fofa},
|
|
{"Thai_phophan", XK_Thai_phophan},
|
|
{"Thai_fofan", XK_Thai_fofan},
|
|
{"Thai_phosamphao", XK_Thai_phosamphao},
|
|
{"Thai_moma", XK_Thai_moma},
|
|
{"Thai_yoyak", XK_Thai_yoyak},
|
|
{"Thai_rorua", XK_Thai_rorua},
|
|
{"Thai_ru", XK_Thai_ru},
|
|
{"Thai_loling", XK_Thai_loling},
|
|
{"Thai_lu", XK_Thai_lu},
|
|
{"Thai_wowaen", XK_Thai_wowaen},
|
|
{"Thai_sosala", XK_Thai_sosala},
|
|
{"Thai_sorusi", XK_Thai_sorusi},
|
|
{"Thai_sosua", XK_Thai_sosua},
|
|
{"Thai_hohip", XK_Thai_hohip},
|
|
{"Thai_lochula", XK_Thai_lochula},
|
|
{"Thai_oang", XK_Thai_oang},
|
|
{"Thai_honokhuk", XK_Thai_honokhuk},
|
|
{"Thai_paiyannoi", XK_Thai_paiyannoi},
|
|
{"Thai_saraa", XK_Thai_saraa},
|
|
{"Thai_maihanakat", XK_Thai_maihanakat},
|
|
{"Thai_saraaa", XK_Thai_saraaa},
|
|
{"Thai_saraam", XK_Thai_saraam},
|
|
{"Thai_sarai", XK_Thai_sarai},
|
|
{"Thai_saraii", XK_Thai_saraii},
|
|
{"Thai_saraue", XK_Thai_saraue},
|
|
{"Thai_sarauee", XK_Thai_sarauee},
|
|
{"Thai_sarau", XK_Thai_sarau},
|
|
{"Thai_sarauu", XK_Thai_sarauu},
|
|
{"Thai_phinthu", XK_Thai_phinthu},
|
|
{"Thai_maihanakat_maitho", XK_Thai_maihanakat_maitho},
|
|
{"Thai_baht", XK_Thai_baht},
|
|
{"Thai_sarae", XK_Thai_sarae},
|
|
{"Thai_saraae", XK_Thai_saraae},
|
|
{"Thai_sarao", XK_Thai_sarao},
|
|
{"Thai_saraaimaimuan", XK_Thai_saraaimaimuan},
|
|
{"Thai_saraaimaimalai", XK_Thai_saraaimaimalai},
|
|
{"Thai_lakkhangyao", XK_Thai_lakkhangyao},
|
|
{"Thai_maiyamok", XK_Thai_maiyamok},
|
|
{"Thai_maitaikhu", XK_Thai_maitaikhu},
|
|
{"Thai_maiek", XK_Thai_maiek},
|
|
{"Thai_maitho", XK_Thai_maitho},
|
|
{"Thai_maitri", XK_Thai_maitri},
|
|
{"Thai_maichattawa", XK_Thai_maichattawa},
|
|
{"Thai_thanthakhat", XK_Thai_thanthakhat},
|
|
{"Thai_nikhahit", XK_Thai_nikhahit},
|
|
{"Thai_leksun", XK_Thai_leksun},
|
|
{"Thai_leknung", XK_Thai_leknung},
|
|
{"Thai_leksong", XK_Thai_leksong},
|
|
{"Thai_leksam", XK_Thai_leksam},
|
|
{"Thai_leksi", XK_Thai_leksi},
|
|
{"Thai_lekha", XK_Thai_lekha},
|
|
{"Thai_lekhok", XK_Thai_lekhok},
|
|
{"Thai_lekchet", XK_Thai_lekchet},
|
|
{"Thai_lekpaet", XK_Thai_lekpaet},
|
|
{"Thai_lekkao", XK_Thai_lekkao},
|
|
#endif /* XK_THAI */
|
|
#ifdef XK_KOREAN
|
|
{"Hangul", XK_Hangul},
|
|
{"Hangul_Start", XK_Hangul_Start},
|
|
{"Hangul_End", XK_Hangul_End},
|
|
{"Hangul_Hanja", XK_Hangul_Hanja},
|
|
{"Hangul_Jamo", XK_Hangul_Jamo},
|
|
{"Hangul_Romaja", XK_Hangul_Romaja},
|
|
{"Hangul_Codeinput", XK_Hangul_Codeinput},
|
|
{"Hangul_Jeonja", XK_Hangul_Jeonja},
|
|
{"Hangul_Banja", XK_Hangul_Banja},
|
|
{"Hangul_PreHanja", XK_Hangul_PreHanja},
|
|
{"Hangul_PostHanja", XK_Hangul_PostHanja},
|
|
{"Hangul_SingleCandidate", XK_Hangul_SingleCandidate},
|
|
{"Hangul_MultipleCandidate", XK_Hangul_MultipleCandidate},
|
|
{"Hangul_PreviousCandidate", XK_Hangul_PreviousCandidate},
|
|
{"Hangul_Special", XK_Hangul_Special},
|
|
{"Hangul_switch", XK_Hangul_switch},
|
|
{"Hangul_Kiyeog", XK_Hangul_Kiyeog},
|
|
{"Hangul_SsangKiyeog", XK_Hangul_SsangKiyeog},
|
|
{"Hangul_KiyeogSios", XK_Hangul_KiyeogSios},
|
|
{"Hangul_Nieun", XK_Hangul_Nieun},
|
|
{"Hangul_NieunJieuj", XK_Hangul_NieunJieuj},
|
|
{"Hangul_NieunHieuh", XK_Hangul_NieunHieuh},
|
|
{"Hangul_Dikeud", XK_Hangul_Dikeud},
|
|
{"Hangul_SsangDikeud", XK_Hangul_SsangDikeud},
|
|
{"Hangul_Rieul", XK_Hangul_Rieul},
|
|
{"Hangul_RieulKiyeog", XK_Hangul_RieulKiyeog},
|
|
{"Hangul_RieulMieum", XK_Hangul_RieulMieum},
|
|
{"Hangul_RieulPieub", XK_Hangul_RieulPieub},
|
|
{"Hangul_RieulSios", XK_Hangul_RieulSios},
|
|
{"Hangul_RieulTieut", XK_Hangul_RieulTieut},
|
|
{"Hangul_RieulPhieuf", XK_Hangul_RieulPhieuf},
|
|
{"Hangul_RieulHieuh", XK_Hangul_RieulHieuh},
|
|
{"Hangul_Mieum", XK_Hangul_Mieum},
|
|
{"Hangul_Pieub", XK_Hangul_Pieub},
|
|
{"Hangul_SsangPieub", XK_Hangul_SsangPieub},
|
|
{"Hangul_PieubSios", XK_Hangul_PieubSios},
|
|
{"Hangul_Sios", XK_Hangul_Sios},
|
|
{"Hangul_SsangSios", XK_Hangul_SsangSios},
|
|
{"Hangul_Ieung", XK_Hangul_Ieung},
|
|
{"Hangul_Jieuj", XK_Hangul_Jieuj},
|
|
{"Hangul_SsangJieuj", XK_Hangul_SsangJieuj},
|
|
{"Hangul_Cieuc", XK_Hangul_Cieuc},
|
|
{"Hangul_Khieuq", XK_Hangul_Khieuq},
|
|
{"Hangul_Tieut", XK_Hangul_Tieut},
|
|
{"Hangul_Phieuf", XK_Hangul_Phieuf},
|
|
{"Hangul_Hieuh", XK_Hangul_Hieuh},
|
|
{"Hangul_A", XK_Hangul_A},
|
|
{"Hangul_AE", XK_Hangul_AE},
|
|
{"Hangul_YA", XK_Hangul_YA},
|
|
{"Hangul_YAE", XK_Hangul_YAE},
|
|
{"Hangul_EO", XK_Hangul_EO},
|
|
{"Hangul_E", XK_Hangul_E},
|
|
{"Hangul_YEO", XK_Hangul_YEO},
|
|
{"Hangul_YE", XK_Hangul_YE},
|
|
{"Hangul_O", XK_Hangul_O},
|
|
{"Hangul_WA", XK_Hangul_WA},
|
|
{"Hangul_WAE", XK_Hangul_WAE},
|
|
{"Hangul_OE", XK_Hangul_OE},
|
|
{"Hangul_YO", XK_Hangul_YO},
|
|
{"Hangul_U", XK_Hangul_U},
|
|
{"Hangul_WEO", XK_Hangul_WEO},
|
|
{"Hangul_WE", XK_Hangul_WE},
|
|
{"Hangul_WI", XK_Hangul_WI},
|
|
{"Hangul_YU", XK_Hangul_YU},
|
|
{"Hangul_EU", XK_Hangul_EU},
|
|
{"Hangul_YI", XK_Hangul_YI},
|
|
{"Hangul_I", XK_Hangul_I},
|
|
{"Hangul_J_Kiyeog", XK_Hangul_J_Kiyeog},
|
|
{"Hangul_J_SsangKiyeog", XK_Hangul_J_SsangKiyeog},
|
|
{"Hangul_J_KiyeogSios", XK_Hangul_J_KiyeogSios},
|
|
{"Hangul_J_Nieun", XK_Hangul_J_Nieun},
|
|
{"Hangul_J_NieunJieuj", XK_Hangul_J_NieunJieuj},
|
|
{"Hangul_J_NieunHieuh", XK_Hangul_J_NieunHieuh},
|
|
{"Hangul_J_Dikeud", XK_Hangul_J_Dikeud},
|
|
{"Hangul_J_Rieul", XK_Hangul_J_Rieul},
|
|
{"Hangul_J_RieulKiyeog", XK_Hangul_J_RieulKiyeog},
|
|
{"Hangul_J_RieulMieum", XK_Hangul_J_RieulMieum},
|
|
{"Hangul_J_RieulPieub", XK_Hangul_J_RieulPieub},
|
|
{"Hangul_J_RieulSios", XK_Hangul_J_RieulSios},
|
|
{"Hangul_J_RieulTieut", XK_Hangul_J_RieulTieut},
|
|
{"Hangul_J_RieulPhieuf", XK_Hangul_J_RieulPhieuf},
|
|
{"Hangul_J_RieulHieuh", XK_Hangul_J_RieulHieuh},
|
|
{"Hangul_J_Mieum", XK_Hangul_J_Mieum},
|
|
{"Hangul_J_Pieub", XK_Hangul_J_Pieub},
|
|
{"Hangul_J_PieubSios", XK_Hangul_J_PieubSios},
|
|
{"Hangul_J_Sios", XK_Hangul_J_Sios},
|
|
{"Hangul_J_SsangSios", XK_Hangul_J_SsangSios},
|
|
{"Hangul_J_Ieung", XK_Hangul_J_Ieung},
|
|
{"Hangul_J_Jieuj", XK_Hangul_J_Jieuj},
|
|
{"Hangul_J_Cieuc", XK_Hangul_J_Cieuc},
|
|
{"Hangul_J_Khieuq", XK_Hangul_J_Khieuq},
|
|
{"Hangul_J_Tieut", XK_Hangul_J_Tieut},
|
|
{"Hangul_J_Phieuf", XK_Hangul_J_Phieuf},
|
|
{"Hangul_J_Hieuh", XK_Hangul_J_Hieuh},
|
|
{"Hangul_RieulYeorinHieuh", XK_Hangul_RieulYeorinHieuh},
|
|
{"Hangul_SunkyeongeumMieum", XK_Hangul_SunkyeongeumMieum},
|
|
{"Hangul_SunkyeongeumPieub", XK_Hangul_SunkyeongeumPieub},
|
|
{"Hangul_PanSios", XK_Hangul_PanSios},
|
|
{"Hangul_KkogjiDalrinIeung", XK_Hangul_KkogjiDalrinIeung},
|
|
{"Hangul_SunkyeongeumPhieuf", XK_Hangul_SunkyeongeumPhieuf},
|
|
{"Hangul_YeorinHieuh", XK_Hangul_YeorinHieuh},
|
|
{"Hangul_AraeA", XK_Hangul_AraeA},
|
|
{"Hangul_AraeAE", XK_Hangul_AraeAE},
|
|
{"Hangul_J_PanSios", XK_Hangul_J_PanSios},
|
|
{"Hangul_J_KkogjiDalrinIeung", XK_Hangul_J_KkogjiDalrinIeung},
|
|
{"Hangul_J_YeorinHieuh", XK_Hangul_J_YeorinHieuh},
|
|
{"Korean_Won", XK_Korean_Won},
|
|
#endif /* XK_KOREAN */
|
|
{"EuroSign", XK_EuroSign},
|
|
#endif
|
|
{"NoSymbol", NoSymbol}
|
|
};
|
|
|
|
KeySym
|
|
XStringToKeysym(const char *str)
|
|
{
|
|
int i;
|
|
for (i = 0; StringToKeysym[i].keysym != NoSymbol
|
|
&& strcmp(StringToKeysym[i].string, str); i++);
|
|
return StringToKeysym[i].keysym;
|
|
}
|
|
|
|
const char *
|
|
XKeysymToString(KeySym keysym)
|
|
{
|
|
int i;
|
|
for (i = 0; StringToKeysym[i].keysym != NoSymbol
|
|
&& StringToKeysym[i].keysym != keysym; i++);
|
|
return StringToKeysym[i].string;
|
|
}
|
|
|
|
void
|
|
XDisplayKeycodes(Display * display, int *min_keycode, int *max_keycode)
|
|
{
|
|
/* VNC keycodes are non-existant */
|
|
*min_keycode = 0xffff;
|
|
*max_keycode = 0;
|
|
}
|