added stacy's variant of the simple layout (grid) as we can't agree on which is best

This commit is contained in:
Maarten van Gompel 2021-08-26 22:42:45 +02:00 committed by John Sullivan
parent 3a241c8d2c
commit 2dac77392c
2 changed files with 54 additions and 2 deletions

View File

@ -24,6 +24,7 @@ static enum layout_id layers[] = {
Special,
Emoji,
Simple,
SimpleGrid,
Cyrillic,
Arabic,
NumLayouts //signals the last item, may not be omitted

View File

@ -17,6 +17,7 @@ enum layout_id {
Full = 0,
Special,
Simple,
SimpleGrid,
Cyrillic,
Arabic,
Emoji,
@ -62,7 +63,7 @@ enum layout_id {
NumLayouts,
};
static struct key keys_full[], keys_special[], keys_simple[], keys_cyrillic[],
static struct key keys_full[], keys_special[], keys_simple[], keys_simplegrid[], keys_cyrillic[],
keys_arabic[],
keys_emoji[],
keys_landscape[],
@ -83,6 +84,7 @@ static struct layout layouts[NumLayouts] = {
// third parameter is the layout name
[Special] = {keys_special, "latin", "special"},
[Simple] = {keys_simple, "latin", "simple"},
[SimpleGrid] = {keys_simplegrid, "latin", "simplegrid"},
[Cyrillic] = {keys_cyrillic, "cyrillic", "cyrillic"},
[Arabic] = {keys_arabic, "arabic", "arabic"},
[Emoji] = {keys_emoji, "latin", "emoji"},
@ -293,7 +295,7 @@ static struct key keys_special[] = {
};
static struct key keys_simple[] = {
{"Tab", "Tab", 0.5, Code, KEY_TAB, .scheme = 1},
{"", "", 0.5, Code, KEY_TAB, .scheme = 1},
{"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
@ -341,6 +343,55 @@ static struct key keys_simple[] = {
{"", "", 0.0, Last},
};
static struct key keys_simplegrid[] = {
{"q", "Q", 1.0, Code, KEY_Q, &layouts[Emoji]},
{"w", "W", 1.0, Code, KEY_W, &layouts[ComposeW]},
{"e", "E", 1.0, Code, KEY_E, &layouts[ComposeE]},
{"r", "R", 1.0, Code, KEY_R, &layouts[ComposeR]},
{"t", "T", 1.0, Code, KEY_T, &layouts[ComposeT]},
{"y", "Y", 1.0, Code, KEY_Y, &layouts[ComposeY]},
{"u", "U", 1.0, Code, KEY_U, &layouts[ComposeU]},
{"i", "I", 1.0, Code, KEY_I, &layouts[ComposeI]},
{"o", "O", 1.0, Code, KEY_O, &layouts[ComposeO]},
{"p", "P", 1.0, Code, KEY_P, &layouts[ComposeP]},
{"", "", 0.0, EndRow},
{"a", "A", 1.0, Code, KEY_A, &layouts[ComposeA]},
{"s", "S", 1.0, Code, KEY_S, &layouts[ComposeS]},
{"d", "D", 1.0, Code, KEY_D, &layouts[ComposeD]},
{"f", "F", 1.0, Code, KEY_F, &layouts[ComposeF]},
{"g", "G", 1.0, Code, KEY_G, &layouts[ComposeG]},
{"h", "H", 1.0, Code, KEY_H, &layouts[ComposeH]},
{"j", "J", 1.0, Code, KEY_J, &layouts[ComposeJ]},
{"k", "K", 1.0, Code, KEY_K, &layouts[ComposeK]},
{"l", "L", 1.0, Code, KEY_L, &layouts[ComposeL]},
{"'", "\"", 1.0, Code, KEY_APOSTROPHE, &layouts[ComposeBracket]},
{"", "", 0.0, EndRow},
{"", "", 1.0, Mod, Shift, .scheme = 1},
{"z", "Z", 1.0, Code, KEY_Z, &layouts[ComposeZ]},
{"x", "X", 1.0, Code, KEY_X, &layouts[ComposeX]},
{"c", "C", 1.0, Code, KEY_C, &layouts[ComposeC]},
{"v", "V", 1.0, Code, KEY_V, &layouts[ComposeV]},
{"b", "B", 1.0, Code, KEY_B, &layouts[ComposeB]},
{"n", "N", 1.0, Code, KEY_N, &layouts[ComposeN]},
{"m", "M", 1.0, Code, KEY_M, &layouts[ComposeM]},
{"Tab", "Tab", 1.0, Code, KEY_TAB, .scheme = 1},
{"", "", 1.0, Code, KEY_BACKSPACE, .scheme = 1},
{"", "", 0.0, EndRow},
{"Abc", "Abc", 1.0, NextLayer, .scheme = 1},
{"Ctr", "Ctr", 1.0, Mod, Ctrl, .scheme = 1},
{",", "'", 1.0, Code, KEY_COMMA, &layouts[ComposeMath]},
{"Cmp", "Cmp", 1.0, Compose, .scheme = 1},
{"", "", 3.0, Code, KEY_SPACE},
{".", "?", 1.0, Code, KEY_DOT, &layouts[ComposePunctuation]},
{"Enter", "Enter", 2.0, Code, KEY_ENTER, .scheme = 1},
/* end of layout */
{"", "", 0.0, Last},
};
static struct key keys_cyrillic[] = {
{"1", "!", 1.0, Code, KEY_1},
{"2", "@", 1.0, Code, KEY_2},