//    #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, };