From 4957c4818cb72d008dff650a288e7f3d39179312 Mon Sep 17 00:00:00 2001 From: Mischa POSLAWSKY Date: Sat, 30 Dec 2023 06:11:46 +0100 Subject: [PATCH] keyboard/altgr/windows: complete layout and labelled image Forgot about non-alphabetic keys as seen on the KeyboardCompany model KU2971B with printed "USA International" keycaps. --- keyboard/altgr/ku2971b-usint.jpg | Bin 0 -> 8270 bytes keyboard/altgr/windows.eng.inc.pl | 47 +++++++++++++++++++++++++----- 2 files changed, 40 insertions(+), 7 deletions(-) create mode 100644 keyboard/altgr/ku2971b-usint.jpg diff --git a/keyboard/altgr/ku2971b-usint.jpg b/keyboard/altgr/ku2971b-usint.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3f1f55f2654b2d702a51a408aab383086c632f82 GIT binary patch literal 8270 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 $letters[$_]) -} 0 .. $#az; +our %rows = ( + '~' => "\N{COMBINING TILDE}", + '`' => "\N{COMBINING GRAVE ACCENT}", + '!' => '¹', + '1' => '¡', + '2' => '²', + '3' => '³', + '$' => '£', + '4' => '¤', + '5' => '€', + '^' => "\N{COMBINING CIRCUMFLEX ACCENT}", + '6' => '¼', + '7' => '½', + '8' => '¾', + '9' => '‘', + '0' => '’', + '-' => '¥', + '+' => '÷', + '=' => '×', + '{' => '“', + '}' => '”', + '[' => '«', + ']' => '»', + ':' => '°', + ';' => '¶', + "'" => "\N{COMBINING ACUTE ACCENT}", + '"' => "\N{COMBINING DIAERESIS}", + '<' => 'Ç', + ',' => 'ç', + '/' => '¿', + '|' => '¦', + '\\'=> '¬', + map { + ($az[$_] eq $letters[$_]) ? () : + ($az[$_] => $letters[$_]) + } 0 .. $#az +); +{ %{ do 'keyboard/altgr/groups.inc.pl' }, title => 'Windows AltGr', - version => '1.3', + version => '1.4', intro => join("\n", 'Resulting selection of Unicode characters', 'while pressing the AltGr modifier', @@ -25,6 +59,5 @@ our %rows = map { "Windows US international keyboard layout table", "with the AltGr modifier key.", ], - image => 'keyboard/altgr/ibm-m.jpg', - moderows => '21-', + image => 'keyboard/altgr/ku2971b-usint.jpg', } -- 2.30.0