193 lines
4.7 KiB
C
193 lines
4.7 KiB
C
//
|
||
#define KEYS 85
|
||
static Key keys_en[KEYS] = {
|
||
{ "F1", XK_F1, 1 },
|
||
{ "F2", XK_F2, 1 },
|
||
{ "F3", XK_F3, 1 },
|
||
{ "F4", XK_F4, 1 },
|
||
{ "F5", XK_F5, 1 },
|
||
{ "F6", XK_F6, 1 },
|
||
{ "F7", XK_F7, 1 },
|
||
{ "F8", XK_F8, 1 },
|
||
{ "F9", XK_F9, 1 },
|
||
{ "F10", XK_F10, 1 },
|
||
{ "F11", XK_F11, 1 },
|
||
{ "F12", XK_F12, 1 },
|
||
{ "PgUp",XK_Page_Up, 1},
|
||
{ "PgDn",XK_Page_Down, 1},
|
||
{ "Del", XK_Delete, 1 },
|
||
{ 0 }, /* New row */
|
||
{ "`~", XK_grave, 1 },
|
||
{ "1!", XK_1, 1 },
|
||
{ "2@", XK_2, 1 },
|
||
{ "3#", XK_3, 1 },
|
||
{ "4$", XK_4, 1 },
|
||
{ "5%", XK_5, 1 },
|
||
{ "6^", XK_6, 1 },
|
||
{ "7&", XK_7, 1 },
|
||
{ "8*", XK_8, 1 },
|
||
{ "9(", XK_9, 1 },
|
||
{ "0)", XK_0, 1 },
|
||
{ "-_", XK_minus, 1 },
|
||
{ "=+", XK_plus, 1 },
|
||
{ "⌫", XK_BackSpace, 2 },
|
||
{ 0 }, /* New row */
|
||
{ "->|", XK_Tab, 1 },
|
||
{ 0, XK_q, 1 },
|
||
{ 0, XK_w, 1 },
|
||
{ 0, XK_e, 1 },
|
||
{ 0, XK_r, 1 },
|
||
{ 0, XK_t, 1 },
|
||
{ 0, XK_y, 1 },
|
||
{ 0, XK_u, 1 },
|
||
{ 0, XK_i, 1 },
|
||
{ 0, XK_o, 1 },
|
||
{ 0, XK_p, 1 },
|
||
{ "[", XK_bracketleft, 1 },
|
||
{ "]", XK_bracketright, 1 },
|
||
{ "\\|", XK_backslash, 1 },
|
||
{ 0 }, /* New row */
|
||
{ "", XK_Cancel, 1},
|
||
{ 0, XK_a, 1 },
|
||
{ 0, XK_s, 1 },
|
||
{ 0, XK_d, 1 },
|
||
{ 0, XK_f, 1 },
|
||
{ 0, XK_g, 1 },
|
||
{ 0, XK_h, 1 },
|
||
{ 0, XK_j, 1 },
|
||
{ 0, XK_k, 1 },
|
||
{ 0, XK_l, 1 },
|
||
{ ":;", XK_semicolon, 1 },
|
||
{ "'\"", XK_apostrophe, 1 },
|
||
{ "↵", XK_Return, 1 },
|
||
{ 0 }, /* New row */
|
||
{ "Shift", XK_Shift_L, 3 },
|
||
{ 0, XK_z, 1 },
|
||
{ 0, XK_x, 1 },
|
||
{ 0, XK_c, 1 },
|
||
{ 0, XK_v, 1 },
|
||
{ 0, XK_b, 1 },
|
||
{ 0, XK_n, 1 },
|
||
{ 0, XK_m, 1 },
|
||
{ "↑", XK_Up, 1 },
|
||
{ ",", XK_colon, 1 },
|
||
{ ".", XK_period, 1 },
|
||
{ "/?", XK_slash, 1 },
|
||
{ "Shift", XK_Shift_R, 2 },
|
||
{ 0 }, /* New row */
|
||
{ "Esc", XK_Escape, 1 },
|
||
{ "Ctrl", XK_Control_L, 2 },
|
||
{ "Alt", XK_Alt_L, 2 },
|
||
{ "", XK_Super_L, 2 },
|
||
{ "", XK_space, 5 },
|
||
{ "←", XK_Left, 1 },
|
||
{ "↓", XK_Down, 1 },
|
||
{ "→", XK_Right, 1},
|
||
{ "Alt", XK_Alt_R, 2 },
|
||
{ "", XK_Super_R, 2 },
|
||
{ "Ctrl", XK_Control_R, 2 },
|
||
};
|
||
static Key keys_emoji [KEYS] = {
|
||
{ "🙂", 0x101f642 ,1 }, //1
|
||
{ "😀", 0x101f600 ,1 },//2
|
||
{ "😁", 0x101f601 ,1 },//3
|
||
{ "😂", 0x101f602 ,1 },//4
|
||
{ "😃", 0x101f603 ,1 },//5
|
||
{ "😄", 0x101f604 ,1 },//6
|
||
{ "😅", 0x101f605 ,1 },//7
|
||
{ "😆", 0x101f606 ,1 },//8
|
||
{ "😇", 0x101f607 ,1 },//9
|
||
{ "😈", 0x101f608 ,1 },//0
|
||
{ "😉", 0x101f609 ,1 },//11
|
||
{ "😊", 0x101f60a ,1 },//12
|
||
{ "😋", 0x101f60b ,1 },//13
|
||
{ "😌", 0x101f60c ,1 },//14
|
||
{ "😍", 0x101f60d ,1 },//15
|
||
{ "😎", 0x101f60e ,1 },//16
|
||
{ "😏", 0x101f60f ,1 },//17
|
||
{ "😐", 0x101f610 ,1 },//18
|
||
{ "😒", 0x101f612 ,1 },//19
|
||
{ "😓", 0x101f613 ,1 },//20
|
||
{ "😛", 0x101f61b ,1 },//21
|
||
{ "😮", 0x101f62e ,1 },//22
|
||
{ "😟", 0x101f61f ,1 },//23
|
||
{ "😟", 0x101f620 ,1 },//24
|
||
{ "😢", 0x101f622 ,1 },//25
|
||
{ "😭", 0x101f62d ,1 },//26
|
||
{ "😳", 0x101f633 ,1 },//27
|
||
{ "😴", 0x101f634 ,1 },//28
|
||
{0},
|
||
{ "▶", XF86XK_AudioPlay, 1 },//30
|
||
{ "●", XF86XK_AudioRecord, 1 },//31
|
||
{ "■", XF86XK_AudioStop, 1 },//32
|
||
{ "◂◂", XF86XK_AudioPrev, 1 },//33
|
||
{ "▸▸", XF86XK_AudioNext, 1 },//34
|
||
{ "♫M", XF86XK_AudioMute, 1 },//35
|
||
{ "♫-", XF86XK_AudioLowerVolume, 1 },//36
|
||
{ "♫+", XF86XK_AudioRaiseVolume, 1 },//37
|
||
{ "☀-", XF86XK_MonBrightnessDown, 1 },//38
|
||
{ "☀+", XF86XK_MonBrightnessUp, 1 },//39
|
||
{ "й", XK_Cyrillic_shorti, 1 },
|
||
{ "ц", XK_Cyrillic_tse, 1 },
|
||
{ "у", XK_Cyrillic_u, 1 },
|
||
{ "к", XK_Cyrillic_ka, 1 },
|
||
{ "е", XK_Cyrillic_ie, 1 },
|
||
{ "н", XK_Cyrillic_en, 1 },
|
||
{ "г", XK_Cyrillic_ghe, 1 },
|
||
{ "ш", XK_Cyrillic_sha, 1 },
|
||
{ "щ", XK_Cyrillic_shcha, 1 },
|
||
{ "з", XK_Cyrillic_ze, 1 },
|
||
{ "х", XK_Cyrillic_ha, 1 },
|
||
|
||
{ 0 }, /* New row */
|
||
|
||
{ "ф", XK_Cyrillic_ef, 1 },
|
||
{ "ы", XK_Cyrillic_yeru, 1 },
|
||
{ "в", XK_Cyrillic_ve, 1 },
|
||
{ "а", XK_Cyrillic_a, 1 },
|
||
{ "п", XK_Cyrillic_pe, 1 },
|
||
{ "р", XK_Cyrillic_er, 1 },
|
||
{ "о", XK_Cyrillic_o, 1 },
|
||
{ "л", XK_Cyrillic_el, 1 },
|
||
{ "д", XK_Cyrillic_de, 1 },
|
||
{ "ж", XK_Cyrillic_zhe, 1 },
|
||
{ "ю", XK_Cyrillic_yu, 1 },
|
||
|
||
{ 0 }, /* New row */
|
||
{ "", XK_Cancel, 1},//52
|
||
{ "я", XK_Cyrillic_ya, 1 },
|
||
{ "ч", XK_Cyrillic_che, 1 },
|
||
{ "с", XK_Cyrillic_es, 1 },
|
||
{ "м", XK_Cyrillic_em, 1 },
|
||
{ "и", XK_Cyrillic_i, 1 },
|
||
{ "т", XK_Cyrillic_te, 1 },
|
||
{ "ь", XK_Cyrillic_softsign, 1 },
|
||
{ "б", XK_Cyrillic_be, 1 },
|
||
{0},
|
||
{ "", XK_space, 5 },
|
||
{0},
|
||
{ "", XK_space, 5 },
|
||
};
|
||
|
||
Buttonmod buttonmods[] = {
|
||
{ XK_Shift_L, Button2 },
|
||
{ XK_Alt_L, Button3 },
|
||
};
|
||
|
||
#define OVERLAYS 1
|
||
static Key overlay[OVERLAYS] = {
|
||
{ 0, XK_Cancel },
|
||
};
|
||
|
||
#define LAYERS 2
|
||
static char* layer_names[LAYERS] = {
|
||
"en",
|
||
"emoji",
|
||
};
|
||
|
||
static Key* available_layers[LAYERS] = {
|
||
keys_en,
|
||
keys_emoji,
|
||
};
|
||
|