From 93ca0473e5da02dc402cea6190456dcff1fac9ea Mon Sep 17 00:00:00 2001 From: "Steven R. Loomis" Date: Fri, 24 Mar 2023 12:49:00 -0500 Subject: [PATCH] =?UTF-8?q?fix(developer):=20ldml=20add=20ABNT2=20?= =?UTF-8?q?=F0=9F=99=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - compiles, at least For: #8161 --- .../types/src/consts/virtual-key-constants.ts | 20 ++++++++----------- .../src/kmc-keyboard/src/compiler/keys.ts | 3 ++- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/common/web/types/src/consts/virtual-key-constants.ts b/common/web/types/src/consts/virtual-key-constants.ts index 664e732bcf..e5dab302e3 100644 --- a/common/web/types/src/consts/virtual-key-constants.ts +++ b/common/web/types/src/consts/virtual-key-constants.ts @@ -161,9 +161,7 @@ export const ISOVirtualKeyMap: KeyMap = [ [ k.K_SPACE ], ]; - export const JISVirtualKeyMap: KeyMap = [ - // Note: showing scancode used in «…» // [Hankaku/Zenkaku] 1 2 3 4 5 6 7 8 9 0 - ^ ¥ [bksp] [ k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL, k.K_oE2 /* YEN? */ ], // [tab] Q W E R T Y U I O P @«`» [ [enter] @@ -177,29 +175,27 @@ export const JISVirtualKeyMap: KeyMap = [ ]; export const ABNT2VirtualKeyMap: KeyMap = [ - // TODO-LDML #8161 - // ` 1 2 3 4 5 6 7 8 9 0 - = [bksp] + // ' 1 2 3 4 5 6 7 8 9 0 - = [bksp] [ k.K_BKQUOTE, k.K_1, k.K_2, k.K_3, k.K_4, k.K_5, k.K_6, k.K_7, k.K_8, k.K_9, k.K_0, k.K_HYPHEN, k.K_EQUAL ], - // [tab] Q W E R T Y U I O P [ ] + // [tab] Q W E R T Y U I O P ´ [ [ k.K_Q, k.K_W, k.K_E, k.K_R, k.K_T, k.K_Y, k.K_U, k.K_I, k.K_O, k.K_P, k.K_LBRKT, k.K_RBRKT ], - // [caps] A S D F G H J K L ; ' \ [enter] + // [caps] A S D F G H J K L ç ~ ] [enter] [ k.K_A, k.K_S, k.K_D, k.K_F, k.K_G, k.K_H, k.K_J, k.K_K, k.K_L, k.K_COLON, k.K_QUOTE, k.K_BKSLASH ], - // [shift] * Z X C V B N M , . / [shift] *=oE2 - [ k.K_oE2, k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH ], + // [shift] \ Z X C V B N M , . ; / [shift] + [ k.K_oE2, k.K_Z, k.K_X, k.K_C, k.K_V, k.K_B, k.K_N, k.K_M, k.K_COMMA, k.K_PERIOD, k.K_SLASH, k.k_oC1 /* ABNT2 */ ], // space [ k.K_SPACE ], ]; - /** * Map from a hardware constant to a keymap * For the 'key' see constants.layr_list_hardware_map */ export const HardwareToKeymap: Map = new Map( [ - ["us", USVirtualKeyMap], - ["iso", ISOVirtualKeyMap], - ["jis", JISVirtualKeyMap], + ["us", USVirtualKeyMap], + ["iso", ISOVirtualKeyMap], + ["jis", JISVirtualKeyMap], ["abnt2", ABNT2VirtualKeyMap], ] ); diff --git a/developer/src/kmc-keyboard/src/compiler/keys.ts b/developer/src/kmc-keyboard/src/compiler/keys.ts index 82f7a95de0..fab1d8b28a 100644 --- a/developer/src/kmc-keyboard/src/compiler/keys.ts +++ b/developer/src/kmc-keyboard/src/compiler/keys.ts @@ -173,7 +173,8 @@ export class KeysCompiler extends SectionCompiler { const keymap = Constants.HardwareToKeymap.get(hardware); if (!keymap) { - throw Error(`TODO-LDML: ${hardware} not supported, see #8161`); + this.callbacks.reportMessage(CompilerMessages.Error_InvalidHardware({ form: hardware })); + valid = false; } const uniqueKeys = calculateUniqueKeys([...this.keyboard.keys?.key]);