updated emoji layer + minor fixes in other layouts

This commit is contained in:
Maarten van Gompel 2021-08-24 22:01:13 +02:00 committed by John Sullivan
parent bdfdf559b4
commit f0528fa0de
2 changed files with 62 additions and 55 deletions

View File

@ -1173,18 +1173,18 @@ xkb_symbols \"(unnamed)\" {\
name[group1]=\"wvkbd\";\ name[group1]=\"wvkbd\";\
\ \
key <ESC> { [ Escape ] };\ key <ESC> { [ Escape ] };\
key <AE01> { [ 1, exclam ] };\ key <AE01> { [ 1, exclam, F1 ] };\
key <AE02> { [ 2, at ] };\ key <AE02> { [ 2, at, F2 ] };\
key <AE03> { [ 3, numbersign ] };\ key <AE03> { [ 3, numbersign, F3 ] };\
key <AE04> { [ 4, dollar ] };\ key <AE04> { [ 4, dollar, F4 ] };\
key <AE05> { [ 5, percent ] };\ key <AE05> { [ 5, percent, F5 ] };\
key <AE06> { [ 6, asciicircum ] };\ key <AE06> { [ 6, asciicircum, F6 ] };\
key <AE07> { [ 7, ampersand ] };\ key <AE07> { [ 7, ampersand, F7 ] };\
key <AE08> { [ 8, asterisk ] };\ key <AE08> { [ 8, asterisk, F8 ] };\
key <AE09> { [ 9, parenleft ] };\ key <AE09> { [ 9, parenleft, F9 ] };\
key <AE10> { [ 0, parenright ] };\ key <AE10> { [ 0, parenright, F10 ] };\
key <AE11> { [ minus, underscore ] };\ key <AE11> { [ minus, underscore, EuroSign ] };\
key <AE12> { [ equal, plus ] };\ key <AE12> { [ equal, plus, sterling ] };\
key <BKSP> { [ BackSpace, BackSpace ] };\ key <BKSP> { [ BackSpace, BackSpace ] };\
key <TAB> { [ Tab, ISO_Left_Tab ] };\ key <TAB> { [ Tab, ISO_Left_Tab ] };\
key <AD01> { [ q, Q, 1 ] };\ key <AD01> { [ q, Q, 1 ] };\

View File

@ -16,13 +16,13 @@ enum layout_id {
Simple, Simple,
Cyrillic, Cyrillic,
Arabic, Arabic,
Emoji,
ComposeA, ComposeA,
ComposeE, ComposeE,
ComposeY, ComposeY,
ComposeU, ComposeU,
ComposeI, ComposeI,
ComposeO, ComposeO,
ComposeQ,
ComposeW, ComposeW,
ComposeR, ComposeR,
ComposeT, ComposeT,
@ -62,6 +62,7 @@ enum layout_id {
static enum layout_id layers[] = { static enum layout_id layers[] = {
Full, //First layout is the default layout on startup Full, //First layout is the default layout on startup
Special, Special,
Emoji,
Simple, Simple,
Cyrillic, Cyrillic,
Arabic, Arabic,
@ -75,8 +76,9 @@ static const char *default_font = "Monospace 15";
static struct key keys_full[], keys_special[], keys_simple[], keys_cyrillic[], static struct key keys_full[], keys_special[], keys_simple[], keys_cyrillic[],
keys_arabic[], keys_arabic[],
keys_emoji[],
keys_compose_a[], keys_compose_e[], keys_compose_y[], keys_compose_u[], keys_compose_a[], keys_compose_e[], keys_compose_y[], keys_compose_u[],
keys_compose_i[], keys_compose_o[], keys_compose_q[], keys_compose_w[], keys_compose_i[], keys_compose_o[], keys_compose_w[],
keys_compose_r[], keys_compose_t[], keys_compose_p[], keys_compose_s[], keys_compose_r[], keys_compose_t[], keys_compose_p[], keys_compose_s[],
keys_compose_d[], keys_compose_f[], keys_compose_g[], keys_compose_h[], keys_compose_d[], keys_compose_f[], keys_compose_g[], keys_compose_h[],
keys_compose_j[], keys_compose_k[], keys_compose_l[], keys_compose_z[], keys_compose_j[], keys_compose_k[], keys_compose_l[], keys_compose_z[],
@ -94,13 +96,13 @@ static struct layout layouts[NumLayouts] = {
[Simple] = {keys_simple, "latin", "simple"}, [Simple] = {keys_simple, "latin", "simple"},
[Cyrillic] = {keys_cyrillic, "cyrillic", "cyrillic"}, [Cyrillic] = {keys_cyrillic, "cyrillic", "cyrillic"},
[Arabic] = {keys_arabic, "arabic", "arabic"}, [Arabic] = {keys_arabic, "arabic", "arabic"},
[Emoji] = {keys_emoji, "latin", "emoji"},
[ComposeA] = {keys_compose_a, "latin"}, [ComposeA] = {keys_compose_a, "latin"},
[ComposeE] = {keys_compose_e, "latin"}, [ComposeE] = {keys_compose_e, "latin"},
[ComposeY] = {keys_compose_y, "latin"}, [ComposeY] = {keys_compose_y, "latin"},
[ComposeU] = {keys_compose_u, "latin"}, [ComposeU] = {keys_compose_u, "latin"},
[ComposeI] = {keys_compose_i, "latin"}, [ComposeI] = {keys_compose_i, "latin"},
[ComposeO] = {keys_compose_o, "latin"}, [ComposeO] = {keys_compose_o, "latin"},
[ComposeQ] = {keys_compose_q, "latin"},
[ComposeW] = {keys_compose_w, "latin"}, [ComposeW] = {keys_compose_w, "latin"},
[ComposeR] = {keys_compose_r, "latin"}, [ComposeR] = {keys_compose_r, "latin"},
[ComposeT] = {keys_compose_t, "latin"}, [ComposeT] = {keys_compose_t, "latin"},
@ -215,7 +217,7 @@ static struct key keys_full[] = {
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
{"", "", 0.5, Pad}, {"", "", 0.5, Pad},
{"q", "Q", 1.0, Code, KEY_Q, &layouts[ComposeQ]}, {"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]}, {"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]}, {"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
{"r", "R", 1.0, Code, KEY_R, &layouts[ComposeR]}, {"r", "R", 1.0, Code, KEY_R, &layouts[ComposeR]},
@ -306,7 +308,7 @@ static struct key keys_special[] = {
{"<", "«", 1.0, Code, KEY_COMMA, 0, AltGr}, {"<", "«", 1.0, Code, KEY_COMMA, 0, AltGr},
{">", "»", 1.0, Code, KEY_DOT, 0, AltGr}, {">", "»", 1.0, Code, KEY_DOT, 0, AltGr},
{"¡", "¿", 1.0, Code, KEY_MENU}, {"¡", "¿", 1.0, Code, KEY_MENU},
{"", "", 1.0, Pad}, {"🙂", "🙂", 1.0, Layout, 0, &layouts[Emoji]},
{"AGr", "AGr", 1.0, Mod, AltGr, .scheme = 1}, {"AGr", "AGr", 1.0, Mod, AltGr, .scheme = 1},
{"", "", 1.0, Code, KEY_BACKSPACE, .scheme = 1}, {"", "", 1.0, Code, KEY_BACKSPACE, .scheme = 1},
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
@ -324,7 +326,7 @@ static struct key keys_special[] = {
static struct key keys_simple[] = { static struct key keys_simple[] = {
{"Tab", "Tab", 0.5, Code, KEY_TAB, .scheme = 1}, {"Tab", "Tab", 0.5, Code, KEY_TAB, .scheme = 1},
{"q", "Q", 1.0, Code, KEY_Q, &layouts[ComposeQ]}, {"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]}, {"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]}, {"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
{"r", "R", 1.0, Code, KEY_R, &layouts[ComposeR]}, {"r", "R", 1.0, Code, KEY_R, &layouts[ComposeR]},
@ -463,7 +465,7 @@ static struct key keys_arabic[] = {
{"خ", "<", 1.0, Code, KEY_LEFTBRACE}, {"خ", "<", 1.0, Code, KEY_LEFTBRACE},
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
{"ش", "ـِ", 0.0, Code, KEY_A}, {"ش", "ـِ", 1.0, Code, KEY_A},
{"س", "ـٍ", 1.0, Code, KEY_S}, {"س", "ـٍ", 1.0, Code, KEY_S},
{"ي", "]", 1.0, Code, KEY_D}, {"ي", "]", 1.0, Code, KEY_D},
{"ب", "[", 1.0, Code, KEY_F}, {"ب", "[", 1.0, Code, KEY_F},
@ -507,7 +509,7 @@ static struct key keys_compose_a[] = {
{"ã", "Ã", 1.0, Copy, 0x00E3, 0, 0x00C3}, {"ã", "Ã", 1.0, Copy, 0x00E3, 0, 0x00C3},
{"ä", "Ä", 1.0, Copy, 0x00E4, 0, 0x00C4}, {"ä", "Ä", 1.0, Copy, 0x00E4, 0, 0x00C4},
{"å", "Å", 1.0, Copy, 0x00E5, 0, 0x00C5}, {"å", "Å", 1.0, Copy, 0x00E5, 0, 0x00C5},
{"æ", "Æ", 1.0, Copy, 0x00E5, 0, 0x00C6}, {"æ", "Æ", 1.0, Copy, 0x00E7, 0, 0x00C6},
{"ā", "Ā", 1.0, Copy, 0x0101, 0, 0x0100}, {"ā", "Ā", 1.0, Copy, 0x0101, 0, 0x0100},
{"ă", "Ă", 1.0, Copy, 0x0103, 0, 0x0102}, {"ă", "Ă", 1.0, Copy, 0x0103, 0, 0x0102},
{"ą", "Ą", 1.0, Copy, 0x0105, 0, 0x0104}, {"ą", "Ą", 1.0, Copy, 0x0105, 0, 0x0104},
@ -662,44 +664,49 @@ static struct key keys_compose_i[] = {
{"", "", 0.0, Last}, {"", "", 0.0, Last},
}; };
static struct key keys_compose_q[] = { static struct key keys_emoji[] = {
{"🙂", "", 1.0, Copy, 0x1f642, 0, 0}, // Emojis {"🙂", "🙏", 1.0, Copy, 0x1f642, 0, 0x1f64f}, // Emojis
{"😀", "", 1.0, Copy, 0x1f600, 0, 0}, {"😀", "🙋", 1.0, Copy, 0x1f600, 0, 0x1f64b},
{"😁", "", 1.0, Copy, 0x1f601, 0, 0}, {"😁", "", 1.0, Copy, 0x1f601, 0, 0x270B},
{"😂", "", 1.0, Copy, 0x1f602, 0, 0}, {"😂", "🙇", 1.0, Copy, 0x1f602, 0, 0x1f647},
{"😃", "", 1.0, Copy, 0x1f603, 0, 0}, {"😃", "👨", 1.0, Copy, 0x1f603, 0, 0x1f468},
{"😄", "", 1.0, Copy, 0x1f604, 0, 0}, {"😄", "👩", 1.0, Copy, 0x1f604, 0, 0x1f469},
{"😅", "", 1.0, Copy, 0x1f605, 0, 0}, {"😅", "👶", 1.0, Copy, 0x1f605, 0, 0x1f476},
{"😆", "", 1.0, Copy, 0x1f606, 0, 0}, {"😆", "👻", 1.0, Copy, 0x1f606, 0, 0x1f47b},
{"😇", "", 1.0, Copy, 0x1f607, 0, 0}, {"😇", "", 1.0, Copy, 0x1f607, 0, 0x2728},
{"😈", "", 1.0, Copy, 0x1f608, 0, 0}, {"🤣", "💰", 1.0, Copy, 0x1f923, 0, 0x1f4b0},
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
{"😉", "", 1.0, Copy, 0x1f609, 0, 0}, {"😉", "🐕", 1.0, Copy, 0x1f609, 0, 0x1f407},
{"😊", "", 1.0, Copy, 0x1f60a, 0, 0}, {"😊", "🐈", 1.0, Copy, 0x1f60a, 0, 0x1f408},
{"😋", "", 1.0, Copy, 0x1f60b, 0, 0}, {"😋", "🐧", 1.0, Copy, 0x1f60b, 0, 0x1f427},
{"😌", "", 1.0, Copy, 0x1f60c, 0, 0}, {"😌", "💔", 1.0, Copy, 0x1f60c, 0, 0x1f494},
{"😍", "", 1.0, Copy, 0x1f60d, 0, 0}, {"😍", "😘", 1.0, Copy, 0x1f60d, 0, 0x1f618},
{"😎", "", 1.0, Copy, 0x1f60e, 0, 0}, {"😘", "💕", 1.0, Copy, 0x1f618, 0, 0x1f495},
{"😏", "", 1.0, Copy, 0x1f60f, 0, 0}, {"😎", "", 1.0, Copy, 0x1f60e, 0, 0x2764},
{"😐", "", 1.0, Copy, 0x1f610, 0, 0}, {"😐", "😏", 1.0, Copy, 0x1f610, 0, 0x1f60f},
{"😒", "", 1.0, Copy, 0x1f612, 0, 0}, {"😒", "👀", 1.0, Copy, 0x1f612, 0, 0x1f440},
{"😓", "", 1.0, Copy, 0x1f613, 0, 0}, {"😓", "💀", 1.0, Copy, 0x1f613, 0, 0x1f480},
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
{"😛", "", 1.0, Copy, 0x1f61b, 0, 0}, {"", "", 1.0, Mod, Shift, .scheme = 1},
{"😮", "", 1.0, Copy, 0x1f62e, 0, 0}, {"😛", "😜", 1.0, Copy, 0x1f61b, 0, 0x1f61c},
{"😟", "", 1.0, Copy, 0x1f61f, 0, 0}, {"😮", "😝", 1.0, Copy, 0x1f62e, 0, 0x1f61d},
{"😟", "", 1.0, Copy, 0x1f620, 0, 0}, {"😟", "😞", 1.0, Copy, 0x1f61f, 0, 0x1f61e},
{"😢", "", 1.0, Copy, 0x1f622, 0, 0}, {"😟", "🥺", 1.0, Copy, 0x1f620, 0, 0x1f97a },
{"😭", "", 1.0, Copy, 0x1f62d, 0, 0}, {"😢", "👿", 1.0, Copy, 0x1f622, 0, 0x1f47f},
{"😳", "", 1.0, Copy, 0x1f633, 0, 0}, {"😭", "😯", 1.0, Copy, 0x1f62d, 0, 0x1f62f},
{"😴", "", 1.0, Copy, 0x1f634, 0, 0}, {"😳", "😕", 1.0, Copy, 0x1f633, 0, 0x1f615},
{"", "", 2.0, Code, KEY_BACKSPACE}, {"😴", "😵", 1.0, Copy, 0x1f634, 0, 0x1f635},
{"", "", 1.0, Code, KEY_BACKSPACE, .scheme=1},
{"", "", 0.0, EndRow}, {"", "", 0.0, EndRow},
{"Abc", "Abc", 1.0, BackLayer}, {"Abc", "Abc", 1.0, BackLayer, .scheme=1},
{",", "'", 1.0, Code, KEY_COMMA}, {"👆", "👊", 1.0, Copy, 0x1f446, 0, 0x1f44a},
{"", "", 5.0, Code, KEY_SPACE}, {"👇", "👌", 1.0, Copy, 0x1f447, 0, 0x1f44c},
{".", "?", 1.0, Code, KEY_DOT}, {"👈", "👏", 1.0, Copy, 0x1f448, 0, 0x1f44f},
{"Enter", "Enter", 2.0, Code, KEY_ENTER}, {"👉", "👐", 1.0, Copy, 0x1f449, 0, 0x1f450},
{"👋", "🙌", 1.0, Copy, 0x1f603, 0, 0x1f44c},
{"👍", "", 1.0, Copy, 0x1f604, 0, 0x2705},
{"👎", "💪", 1.0, Copy, 0x1f605, 0, 0x1f606},
{"Enter", "Enter", 2.0, Code, KEY_ENTER, .scheme=1},
{"", "", 0.0, Last}, {"", "", 0.0, Last},
}; };