feat(260329-uos): extend levels 7-16 with full QWERTZ coverage

- Add levels 7-16 covering r,u,t,z,w,o,q,p,n,b,v,m,c,x,ä,ü,y and punctuation
- Add comma and period to fingerMap (r-mid and r-ring)
- Update keyboard.ts: add ',' and '.' to bottom row in DE and CH layouts
- Add comma and period to fingerColorMap in keyboard.ts
This commit is contained in:
2026-03-29 22:12:46 +02:00
parent 3360ca921b
commit 374298be23
2 changed files with 99 additions and 2 deletions
+4 -2
View File
@@ -7,7 +7,7 @@ const KEYBOARD_ROWS_DE = [
["1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "ß"],
["q", "w", "e", "r", "t", "z", "u", "i", "o", "p", "ü"],
["a", "s", "d", "f", "g", "h", "j", "k", "l", "ö", "ä"],
["y", "x", "c", "v", "b", "n", "m"],
["y", "x", "c", "v", "b", "n", "m", ",", "."],
[" "], // Spacebar
];
@@ -15,7 +15,7 @@ const KEYBOARD_ROWS_CH = [
["1", "2", "3", "4", "5", "6", "7", "8", "9", "0"],
["q", "w", "e", "r", "t", "z", "u", "i", "o", "p", "ü"],
["a", "s", "d", "f", "g", "h", "j", "k", "l", "ö", "ä"],
["y", "x", "c", "v", "b", "n", "m"],
["y", "x", "c", "v", "b", "n", "m", ",", "."],
[" "],
];
@@ -51,9 +51,11 @@ const fingerColorMap: Record<string, string> = {
"7": "--finger-r-index",
i: "--finger-r-mid",
k: "--finger-r-mid",
",": "--finger-r-mid",
"8": "--finger-r-mid",
o: "--finger-r-ring",
l: "--finger-r-ring",
".": "--finger-r-ring",
"9": "--finger-r-ring",
p: "--finger-r-pinky",
ö: "--finger-r-pinky",
+95
View File
@@ -35,9 +35,11 @@ const fingerMap: Record<string, string> = {
// Right middle
i: "--finger-r-mid",
k: "--finger-r-mid",
",": "--finger-r-mid",
// Right ring
o: "--finger-r-ring",
l: "--finger-r-ring",
".": "--finger-r-ring",
// Right pinky
p: "--finger-r-pinky",
ö: "--finger-r-pinky",
@@ -98,6 +100,99 @@ export const levels: Level[] = [
],
fingerMap,
},
{
level: 7,
newKeys: ["r", "u"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u",
],
fingerMap,
},
{
level: 8,
newKeys: ["t", "z"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z",
],
fingerMap,
},
{
level: 9,
newKeys: ["w", "o"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o",
],
fingerMap,
},
{
level: 10,
newKeys: ["q", "p"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p",
],
fingerMap,
},
{
level: 11,
newKeys: ["n", "b"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b",
],
fingerMap,
},
{
level: 12,
newKeys: ["v", "m"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b", "v", "m",
],
fingerMap,
},
{
level: 13,
newKeys: ["c", "x"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b", "v", "m", "c", "x",
],
fingerMap,
},
{
level: 14,
newKeys: ["ä", "ü"],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b", "v", "m", "c", "x",
"ä", "ü",
],
fingerMap,
},
{
level: 15,
newKeys: ["y", ","],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b", "v", "m", "c", "x",
"ä", "ü", "y", ",",
],
fingerMap,
},
{
level: 16,
newKeys: ["."],
allKeys: [
"f", "j", " ", "d", "k", "s", "l", "a", "ö", "g", "h", "e", "i",
"r", "u", "t", "z", "w", "o", "q", "p", "n", "b", "v", "m", "c", "x",
"ä", "ü", "y", ",", ".",
],
fingerMap,
},
];
export function getLevelByNumber(n: number): Level | undefined {