fix(developer): ldml add ABNT2 🙀

- compiles, at least

For: #8161
This commit is contained in:
Steven R. Loomis 2023-03-24 12:49:00 -05:00
parent a474d8cbc6
commit 93ca0473e5
2 changed files with 10 additions and 13 deletions

View file

@ -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<string, KeyMap> = new Map(
[
["us", USVirtualKeyMap],
["iso", ISOVirtualKeyMap],
["jis", JISVirtualKeyMap],
["us", USVirtualKeyMap],
["iso", ISOVirtualKeyMap],
["jis", JISVirtualKeyMap],
["abnt2", ABNT2VirtualKeyMap],
]
);

View file

@ -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]);