@keymanapp/common-types 17.0.85-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/src/consts/virtual-key-constants.d.ts +131 -0
- package/build/src/consts/virtual-key-constants.d.ts.map +1 -0
- package/build/src/consts/virtual-key-constants.js +245 -0
- package/build/src/consts/virtual-key-constants.js.map +1 -0
- package/build/src/import/techpreview/cldr_info.json +5 -0
- package/build/src/import/techpreview/keys-Latn-implied.xml +80 -0
- package/build/src/import/techpreview/keys-Zyyy-currency.xml +22 -0
- package/build/src/import/techpreview/keys-Zyyy-punctuation.xml +46 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts +7 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js +74 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-reader.js.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts +24 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js +75 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file-writer.js.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts +76 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.d.ts.map +1 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js +26 -0
- package/build/src/keyman-touch-layout/keyman-touch-layout-file.js.map +1 -0
- package/build/src/keyman-touch-layout.clean.spec.json +170 -0
- package/build/src/kmx/element-string.d.ts +19 -0
- package/build/src/kmx/element-string.d.ts.map +1 -0
- package/build/src/kmx/element-string.js +72 -0
- package/build/src/kmx/element-string.js.map +1 -0
- package/build/src/kmx/kmx-builder.d.ts +77 -0
- package/build/src/kmx/kmx-builder.d.ts.map +1 -0
- package/build/src/kmx/kmx-builder.js +193 -0
- package/build/src/kmx/kmx-builder.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.js +25 -0
- package/build/src/kmx/kmx-plus-builder/build-disp.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts +26 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.js +78 -0
- package/build/src/kmx/kmx-plus-builder/build-elem.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts +60 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.js +107 -0
- package/build/src/kmx/kmx-plus-builder/build-keys.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts +54 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.js +99 -0
- package/build/src/kmx/kmx-plus-builder/build-layr.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts +34 -0
- package/build/src/kmx/kmx-plus-builder/build-list.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-list.js +62 -0
- package/build/src/kmx/kmx-plus-builder/build-list.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts +12 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.js +20 -0
- package/build/src/kmx/kmx-plus-builder/build-loca.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts +17 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.js +21 -0
- package/build/src/kmx/kmx-plus-builder/build-meta.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-name.d.ts +12 -0
- package/build/src/kmx/kmx-plus-builder/build-name.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-name.js +23 -0
- package/build/src/kmx/kmx-plus-builder/build-name.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.js +27 -0
- package/build/src/kmx/kmx-plus-builder/build-ordr.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts +16 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.js +14 -0
- package/build/src/kmx/kmx-plus-builder/build-sect.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts +18 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.js +34 -0
- package/build/src/kmx/kmx-plus-builder/build-strs.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts +20 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.js +30 -0
- package/build/src/kmx/kmx-plus-builder/build-tran.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.d.ts +16 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.js +23 -0
- package/build/src/kmx/kmx-plus-builder/build-vkey.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts +6 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.js +3 -0
- package/build/src/kmx/kmx-plus-builder/builder-section.js.map +1 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts +47 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js +143 -0
- package/build/src/kmx/kmx-plus-builder/kmx-plus-builder.js.map +1 -0
- package/build/src/kmx/kmx-plus.d.ts +259 -0
- package/build/src/kmx/kmx-plus.d.ts.map +1 -0
- package/build/src/kmx/kmx-plus.js +594 -0
- package/build/src/kmx/kmx-plus.js.map +1 -0
- package/build/src/kmx/kmx.d.ts +166 -0
- package/build/src/kmx/kmx.d.ts.map +1 -0
- package/build/src/kmx/kmx.js +271 -0
- package/build/src/kmx/kmx.js.map +1 -0
- package/build/src/kmx/string-list.d.ts +29 -0
- package/build/src/kmx/string-list.d.ts.map +1 -0
- package/build/src/kmx/string-list.js +75 -0
- package/build/src/kmx/string-list.js.map +1 -0
- package/build/src/kpj/keyman-developer-project.d.ts +58 -0
- package/build/src/kpj/keyman-developer-project.d.ts.map +1 -0
- package/build/src/kpj/keyman-developer-project.js +141 -0
- package/build/src/kpj/keyman-developer-project.js.map +1 -0
- package/build/src/kpj/kpj-file-reader.d.ts +17 -0
- package/build/src/kpj/kpj-file-reader.d.ts.map +1 -0
- package/build/src/kpj/kpj-file-reader.js +92 -0
- package/build/src/kpj/kpj-file-reader.js.map +1 -0
- package/build/src/kpj/kpj-file.d.ts +39 -0
- package/build/src/kpj/kpj-file.d.ts.map +1 -0
- package/build/src/kpj/kpj-file.js +11 -0
- package/build/src/kpj/kpj-file.js.map +1 -0
- package/build/src/kpj.schema.json +127 -0
- package/build/src/kvk/kvk-file-reader.d.ts +5 -0
- package/build/src/kvk/kvk-file-reader.d.ts.map +1 -0
- package/build/src/kvk/kvk-file-reader.js +35 -0
- package/build/src/kvk/kvk-file-reader.js.map +1 -0
- package/build/src/kvk/kvk-file-writer.d.ts +20 -0
- package/build/src/kvk/kvk-file-writer.d.ts.map +1 -0
- package/build/src/kvk/kvk-file-writer.js +67 -0
- package/build/src/kvk/kvk-file-writer.js.map +1 -0
- package/build/src/kvk/kvk-file.d.ts +64 -0
- package/build/src/kvk/kvk-file.d.ts.map +1 -0
- package/build/src/kvk/kvk-file.js +63 -0
- package/build/src/kvk/kvk-file.js.map +1 -0
- package/build/src/kvk/kvks-file-reader.d.ts +30 -0
- package/build/src/kvk/kvks-file-reader.d.ts.map +1 -0
- package/build/src/kvk/kvks-file-reader.js +154 -0
- package/build/src/kvk/kvks-file-reader.js.map +1 -0
- package/build/src/kvk/kvks-file-writer.d.ts +6 -0
- package/build/src/kvk/kvks-file-writer.d.ts.map +1 -0
- package/build/src/kvk/kvks-file-writer.js +99 -0
- package/build/src/kvk/kvks-file-writer.js.map +1 -0
- package/build/src/kvk/kvks-file.d.ts +44 -0
- package/build/src/kvk/kvks-file.d.ts.map +1 -0
- package/build/src/kvk/kvks-file.js +10 -0
- package/build/src/kvk/kvks-file.js.map +1 -0
- package/build/src/kvk/visual-keyboard.d.ts +35 -0
- package/build/src/kvk/visual-keyboard.d.ts.map +1 -0
- package/build/src/kvk/visual-keyboard.js +61 -0
- package/build/src/kvk/visual-keyboard.js.map +1 -0
- package/build/src/kvks.schema.json +182 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts +56 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js +20 -0
- package/build/src/ldml-keyboard/ldml-keyboard-testdata-xml.js.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts +91 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js +370 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml-reader.js.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts +143 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.d.ts.map +1 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.js +34 -0
- package/build/src/ldml-keyboard/ldml-keyboard-xml.js.map +1 -0
- package/build/src/ldml-keyboard.schema.json +634 -0
- package/build/src/ldml-keyboardtest.schema.json +221 -0
- package/build/src/main.d.ts +21 -0
- package/build/src/main.d.ts.map +1 -0
- package/build/src/main.js +20 -0
- package/build/src/main.js.map +1 -0
- package/build/src/util/common-events.d.ts +49 -0
- package/build/src/util/common-events.d.ts.map +1 -0
- package/build/src/util/common-events.js +29 -0
- package/build/src/util/common-events.js.map +1 -0
- package/build/src/util/compiler-interfaces.d.ts +51 -0
- package/build/src/util/compiler-interfaces.d.ts.map +1 -0
- package/build/src/util/compiler-interfaces.js +33 -0
- package/build/src/util/compiler-interfaces.js.map +1 -0
- package/build/src/util/util.d.ts +17 -0
- package/build/src/util/util.d.ts.map +1 -0
- package/build/src/util/util.js +67 -0
- package/build/src/util/util.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/build.sh +86 -0
- package/package.json +58 -0
- package/src/consts/virtual-key-constants.ts +257 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file-reader.ts +81 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file-writer.ts +84 -0
- package/src/keyman-touch-layout/keyman-touch-layout-file.ts +87 -0
- package/src/kmx/element-string.ts +79 -0
- package/src/kmx/kmx-builder.ts +287 -0
- package/src/kmx/kmx-plus-builder/build-disp.ts +46 -0
- package/src/kmx/kmx-plus-builder/build-elem.ts +103 -0
- package/src/kmx/kmx-plus-builder/build-keys.ts +175 -0
- package/src/kmx/kmx-plus-builder/build-layr.ts +154 -0
- package/src/kmx/kmx-plus-builder/build-list.ts +95 -0
- package/src/kmx/kmx-plus-builder/build-loca.ts +34 -0
- package/src/kmx/kmx-plus-builder/build-meta.ts +37 -0
- package/src/kmx/kmx-plus-builder/build-name.ts +37 -0
- package/src/kmx/kmx-plus-builder/build-ordr.ts +45 -0
- package/src/kmx/kmx-plus-builder/build-sect.ts +31 -0
- package/src/kmx/kmx-plus-builder/build-strs.ts +58 -0
- package/src/kmx/kmx-plus-builder/build-tran.ts +50 -0
- package/src/kmx/kmx-plus-builder/build-vkey.ts +43 -0
- package/src/kmx/kmx-plus-builder/builder-section.ts +6 -0
- package/src/kmx/kmx-plus-builder/kmx-plus-builder.ts +190 -0
- package/src/kmx/kmx-plus.ts +692 -0
- package/src/kmx/kmx.ts +360 -0
- package/src/kmx/string-list.ts +74 -0
- package/src/kpj/keyman-developer-project.ts +155 -0
- package/src/kpj/kpj-file-reader.ts +103 -0
- package/src/kpj/kpj-file.ts +52 -0
- package/src/kvk/kvk-file-reader.ts +34 -0
- package/src/kvk/kvk-file-writer.ts +72 -0
- package/src/kvk/kvk-file.ts +122 -0
- package/src/kvk/kvks-file-reader.ts +164 -0
- package/src/kvk/kvks-file-writer.ts +113 -0
- package/src/kvk/kvks-file.ts +53 -0
- package/src/kvk/visual-keyboard.ts +80 -0
- package/src/ldml-keyboard/ldml-keyboard-testdata-xml.ts +74 -0
- package/src/ldml-keyboard/ldml-keyboard-xml-reader.ts +387 -0
- package/src/ldml-keyboard/ldml-keyboard-xml.ts +177 -0
- package/src/main.ts +27 -0
- package/src/restructure.d.ts +2 -0
- package/src/util/common-events.ts +50 -0
- package/src/util/compiler-interfaces.ts +54 -0
- package/src/util/util.ts +68 -0
- package/test/fixtures/import-minimal.xml +8 -0
- package/test/fixtures/import-minimal1.xml +11 -0
- package/test/fixtures/import-minimal2.xml +11 -0
- package/test/fixtures/import-symbols.xml +13 -0
- package/test/fixtures/invalid-conforms-to.xml +19 -0
- package/test/fixtures/invalid-import-base.xml +16 -0
- package/test/fixtures/invalid-import-path.xml +16 -0
- package/test/fixtures/invalid-import-readfail.xml +16 -0
- package/test/fixtures/invalid-import-wrongroot.xml +16 -0
- package/test/fixtures/invalid-structure-per-dtd.xml +8 -0
- package/test/fixtures/keyman-touch-layout/khmer_angkor.keyman-touch-layout +1950 -0
- package/test/fixtures/keyman-touch-layout/legacy.keyman-touch-layout +36 -0
- package/test/fixtures/kpj/khmer_angkor.kpj +187 -0
- package/test/fixtures/kvk/khmer_angkor.kvk +0 -0
- package/test/fixtures/kvk/khmer_angkor.kvks +206 -0
- package/test/fixtures/test-fr.xml +22 -0
- package/test/helpers/index.ts +39 -0
- package/test/helpers/reader-callback-test.ts +199 -0
- package/test/keyman-touch-layout/test-keyman-touch-layout-file-reader.ts +71 -0
- package/test/keyman-touch-layout/test-keyman-touch-layout-round-trip.ts +35 -0
- package/test/kpj/test-kpj-file-reader.ts +123 -0
- package/test/kvk/test-kvk-file.ts +15 -0
- package/test/kvk/test-kvk-round-trip.ts +87 -0
- package/test/kvk/test-kvk-utils.ts +24 -0
- package/test/kvk/test-kvks-file.ts +45 -0
- package/test/ldml-keyboard/test-ldml-keyboard-testdata-reader.ts +51 -0
- package/test/ldml-keyboard/test-ldml-keyboard-xml-reader.ts +131 -0
- package/test/tsconfig.json +21 -0
- package/test/util/test-unescape.ts +38 -0
- package/tsconfig.json +17 -0
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* May include non-US virtual key codes
|
|
3
|
+
*/
|
|
4
|
+
export declare const USVirtualKeyCodes: {
|
|
5
|
+
K_BKSP: number;
|
|
6
|
+
K_TAB: number;
|
|
7
|
+
K_ENTER: number;
|
|
8
|
+
K_SHIFT: number;
|
|
9
|
+
K_CONTROL: number;
|
|
10
|
+
K_ALT: number;
|
|
11
|
+
K_PAUSE: number;
|
|
12
|
+
K_CAPS: number;
|
|
13
|
+
K_ESC: number;
|
|
14
|
+
K_SPACE: number;
|
|
15
|
+
K_PGUP: number;
|
|
16
|
+
K_PGDN: number;
|
|
17
|
+
K_END: number;
|
|
18
|
+
K_HOME: number;
|
|
19
|
+
K_LEFT: number;
|
|
20
|
+
K_UP: number;
|
|
21
|
+
K_RIGHT: number;
|
|
22
|
+
K_DOWN: number;
|
|
23
|
+
K_SEL: number;
|
|
24
|
+
K_PRINT: number;
|
|
25
|
+
K_EXEC: number;
|
|
26
|
+
K_INS: number;
|
|
27
|
+
K_DEL: number;
|
|
28
|
+
K_HELP: number;
|
|
29
|
+
K_0: number;
|
|
30
|
+
K_1: number;
|
|
31
|
+
K_2: number;
|
|
32
|
+
K_3: number;
|
|
33
|
+
K_4: number;
|
|
34
|
+
K_5: number;
|
|
35
|
+
K_6: number;
|
|
36
|
+
K_7: number;
|
|
37
|
+
K_8: number;
|
|
38
|
+
K_9: number;
|
|
39
|
+
K_A: number;
|
|
40
|
+
K_B: number;
|
|
41
|
+
K_C: number;
|
|
42
|
+
K_D: number;
|
|
43
|
+
K_E: number;
|
|
44
|
+
K_F: number;
|
|
45
|
+
K_G: number;
|
|
46
|
+
K_H: number;
|
|
47
|
+
K_I: number;
|
|
48
|
+
K_J: number;
|
|
49
|
+
K_K: number;
|
|
50
|
+
K_L: number;
|
|
51
|
+
K_M: number;
|
|
52
|
+
K_N: number;
|
|
53
|
+
K_O: number;
|
|
54
|
+
K_P: number;
|
|
55
|
+
K_Q: number;
|
|
56
|
+
K_R: number;
|
|
57
|
+
K_S: number;
|
|
58
|
+
K_T: number;
|
|
59
|
+
K_U: number;
|
|
60
|
+
K_V: number;
|
|
61
|
+
K_W: number;
|
|
62
|
+
K_X: number;
|
|
63
|
+
K_Y: number;
|
|
64
|
+
K_Z: number;
|
|
65
|
+
K_NP0: number;
|
|
66
|
+
K_NP1: number;
|
|
67
|
+
K_NP2: number;
|
|
68
|
+
K_NP3: number;
|
|
69
|
+
K_NP4: number;
|
|
70
|
+
K_NP5: number;
|
|
71
|
+
K_NP6: number;
|
|
72
|
+
K_NP7: number;
|
|
73
|
+
K_NP8: number;
|
|
74
|
+
K_NP9: number;
|
|
75
|
+
K_NPSTAR: number;
|
|
76
|
+
K_NPPLUS: number;
|
|
77
|
+
K_SEPARATOR: number;
|
|
78
|
+
K_NPMINUS: number;
|
|
79
|
+
K_NPDOT: number;
|
|
80
|
+
K_NPSLASH: number;
|
|
81
|
+
K_F1: number;
|
|
82
|
+
K_F2: number;
|
|
83
|
+
K_F3: number;
|
|
84
|
+
K_F4: number;
|
|
85
|
+
K_F5: number;
|
|
86
|
+
K_F6: number;
|
|
87
|
+
K_F7: number;
|
|
88
|
+
K_F8: number;
|
|
89
|
+
K_F9: number;
|
|
90
|
+
K_F10: number;
|
|
91
|
+
K_F11: number;
|
|
92
|
+
K_F12: number;
|
|
93
|
+
K_NUMLOCK: number;
|
|
94
|
+
K_SCROLL: number;
|
|
95
|
+
K_LSHIFT: number;
|
|
96
|
+
K_RSHIFT: number;
|
|
97
|
+
K_LCONTROL: number;
|
|
98
|
+
K_RCONTROL: number;
|
|
99
|
+
K_LALT: number;
|
|
100
|
+
K_RALT: number;
|
|
101
|
+
K_COLON: number;
|
|
102
|
+
K_EQUAL: number;
|
|
103
|
+
K_COMMA: number;
|
|
104
|
+
K_HYPHEN: number;
|
|
105
|
+
K_PERIOD: number;
|
|
106
|
+
K_SLASH: number;
|
|
107
|
+
K_BKQUOTE: number;
|
|
108
|
+
K_LBRKT: number;
|
|
109
|
+
K_BKSLASH: number;
|
|
110
|
+
K_RBRKT: number;
|
|
111
|
+
K_QUOTE: number;
|
|
112
|
+
K_oE2: number;
|
|
113
|
+
K_OE2: number;
|
|
114
|
+
k_oC1: number;
|
|
115
|
+
k_OC1: number;
|
|
116
|
+
};
|
|
117
|
+
export type KeyMap = number[][];
|
|
118
|
+
export declare const USVirtualKeyMap: KeyMap;
|
|
119
|
+
export declare const ISOVirtualKeyMap: KeyMap;
|
|
120
|
+
export declare const JISVirtualKeyMap: KeyMap;
|
|
121
|
+
export declare const ABNT2VirtualKeyMap: KeyMap;
|
|
122
|
+
/**
|
|
123
|
+
* Map from a hardware constant to a keymap
|
|
124
|
+
* For the 'key' see constants.layr_list_hardware_map
|
|
125
|
+
*/
|
|
126
|
+
export declare const HardwareToKeymap: Map<string, KeyMap>;
|
|
127
|
+
/**
|
|
128
|
+
* Maps LDML VKey Names from CLDR VKey Enum in TR35 to Keyman virtual key codes
|
|
129
|
+
*/
|
|
130
|
+
export declare const LdmlVkeyNames: Record<string, number>;
|
|
131
|
+
//# sourceMappingURL=virtual-key-constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"virtual-key-constants.d.ts","sourceRoot":"","sources":["../../../src/consts/virtual-key-constants.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4H7B,CAAC;AAIF,MAAM,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;AAEhC,eAAO,MAAM,eAAe,EAAE,MAW7B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAW9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAW9B,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAWhC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAOhD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmDhD,CAAC"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
// Define standard keycode numbers (exposed for use by other modules)
|
|
2
|
+
// TODO-LDML: merge with common\web\keyboard-processor\src\text\codes.ts
|
|
3
|
+
/**
|
|
4
|
+
* May include non-US virtual key codes
|
|
5
|
+
*/
|
|
6
|
+
export const USVirtualKeyCodes = {
|
|
7
|
+
K_BKSP: 8,
|
|
8
|
+
K_TAB: 9,
|
|
9
|
+
K_ENTER: 13,
|
|
10
|
+
K_SHIFT: 16,
|
|
11
|
+
K_CONTROL: 17,
|
|
12
|
+
K_ALT: 18,
|
|
13
|
+
K_PAUSE: 19,
|
|
14
|
+
K_CAPS: 20,
|
|
15
|
+
K_ESC: 27,
|
|
16
|
+
K_SPACE: 32,
|
|
17
|
+
K_PGUP: 33,
|
|
18
|
+
K_PGDN: 34,
|
|
19
|
+
K_END: 35,
|
|
20
|
+
K_HOME: 36,
|
|
21
|
+
K_LEFT: 37,
|
|
22
|
+
K_UP: 38,
|
|
23
|
+
K_RIGHT: 39,
|
|
24
|
+
K_DOWN: 40,
|
|
25
|
+
K_SEL: 41,
|
|
26
|
+
K_PRINT: 42,
|
|
27
|
+
K_EXEC: 43,
|
|
28
|
+
K_INS: 45,
|
|
29
|
+
K_DEL: 46,
|
|
30
|
+
K_HELP: 47,
|
|
31
|
+
K_0: 48,
|
|
32
|
+
K_1: 49,
|
|
33
|
+
K_2: 50,
|
|
34
|
+
K_3: 51,
|
|
35
|
+
K_4: 52,
|
|
36
|
+
K_5: 53,
|
|
37
|
+
K_6: 54,
|
|
38
|
+
K_7: 55,
|
|
39
|
+
K_8: 56,
|
|
40
|
+
K_9: 57,
|
|
41
|
+
K_A: 65,
|
|
42
|
+
K_B: 66,
|
|
43
|
+
K_C: 67,
|
|
44
|
+
K_D: 68,
|
|
45
|
+
K_E: 69,
|
|
46
|
+
K_F: 70,
|
|
47
|
+
K_G: 71,
|
|
48
|
+
K_H: 72,
|
|
49
|
+
K_I: 73,
|
|
50
|
+
K_J: 74,
|
|
51
|
+
K_K: 75,
|
|
52
|
+
K_L: 76,
|
|
53
|
+
K_M: 77,
|
|
54
|
+
K_N: 78,
|
|
55
|
+
K_O: 79,
|
|
56
|
+
K_P: 80,
|
|
57
|
+
K_Q: 81,
|
|
58
|
+
K_R: 82,
|
|
59
|
+
K_S: 83,
|
|
60
|
+
K_T: 84,
|
|
61
|
+
K_U: 85,
|
|
62
|
+
K_V: 86,
|
|
63
|
+
K_W: 87,
|
|
64
|
+
K_X: 88,
|
|
65
|
+
K_Y: 89,
|
|
66
|
+
K_Z: 90,
|
|
67
|
+
K_NP0: 96,
|
|
68
|
+
K_NP1: 97,
|
|
69
|
+
K_NP2: 98,
|
|
70
|
+
K_NP3: 99,
|
|
71
|
+
K_NP4: 100,
|
|
72
|
+
K_NP5: 101,
|
|
73
|
+
K_NP6: 102,
|
|
74
|
+
K_NP7: 103,
|
|
75
|
+
K_NP8: 104,
|
|
76
|
+
K_NP9: 105,
|
|
77
|
+
K_NPSTAR: 106,
|
|
78
|
+
K_NPPLUS: 107,
|
|
79
|
+
K_SEPARATOR: 108,
|
|
80
|
+
K_NPMINUS: 109,
|
|
81
|
+
K_NPDOT: 110,
|
|
82
|
+
K_NPSLASH: 111,
|
|
83
|
+
K_F1: 112,
|
|
84
|
+
K_F2: 113,
|
|
85
|
+
K_F3: 114,
|
|
86
|
+
K_F4: 115,
|
|
87
|
+
K_F5: 116,
|
|
88
|
+
K_F6: 117,
|
|
89
|
+
K_F7: 118,
|
|
90
|
+
K_F8: 119,
|
|
91
|
+
K_F9: 120,
|
|
92
|
+
K_F10: 121,
|
|
93
|
+
K_F11: 122,
|
|
94
|
+
K_F12: 123,
|
|
95
|
+
K_NUMLOCK: 144,
|
|
96
|
+
K_SCROLL: 145,
|
|
97
|
+
K_LSHIFT: 160,
|
|
98
|
+
K_RSHIFT: 161,
|
|
99
|
+
K_LCONTROL: 162,
|
|
100
|
+
K_RCONTROL: 163,
|
|
101
|
+
K_LALT: 164,
|
|
102
|
+
K_RALT: 165,
|
|
103
|
+
K_COLON: 186,
|
|
104
|
+
K_EQUAL: 187,
|
|
105
|
+
K_COMMA: 188,
|
|
106
|
+
K_HYPHEN: 189,
|
|
107
|
+
K_PERIOD: 190,
|
|
108
|
+
K_SLASH: 191,
|
|
109
|
+
K_BKQUOTE: 192,
|
|
110
|
+
K_LBRKT: 219,
|
|
111
|
+
K_BKSLASH: 220,
|
|
112
|
+
K_RBRKT: 221,
|
|
113
|
+
K_QUOTE: 222,
|
|
114
|
+
K_oE2: 226,
|
|
115
|
+
K_OE2: 226,
|
|
116
|
+
k_oC1: 193,
|
|
117
|
+
k_OC1: 193,
|
|
118
|
+
/*K_LOPT:50001,
|
|
119
|
+
K_ROPT:50002,
|
|
120
|
+
K_NUMERALS:50003,
|
|
121
|
+
K_SYMBOLS:50004,
|
|
122
|
+
K_CURRENCIES:50005,
|
|
123
|
+
K_UPPER:50006,
|
|
124
|
+
K_LOWER:50007,
|
|
125
|
+
K_ALPHA:50008,
|
|
126
|
+
K_SHIFTED:50009,
|
|
127
|
+
K_ALTGR:50010,
|
|
128
|
+
K_TABBACK:50011,
|
|
129
|
+
K_TABFWD:50012*/
|
|
130
|
+
};
|
|
131
|
+
const k = USVirtualKeyCodes;
|
|
132
|
+
export const USVirtualKeyMap = [
|
|
133
|
+
// ` 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
134
|
+
[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],
|
|
135
|
+
// [tab] Q W E R T Y U I O P [ ] \
|
|
136
|
+
[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, k.K_BKSLASH],
|
|
137
|
+
// [caps] A S D F G H J K L ; ' [enter]
|
|
138
|
+
[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],
|
|
139
|
+
// [shift] Z X C V B N M , . / [shift] *=oE2
|
|
140
|
+
[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],
|
|
141
|
+
// space
|
|
142
|
+
[k.K_SPACE],
|
|
143
|
+
];
|
|
144
|
+
export const ISOVirtualKeyMap = [
|
|
145
|
+
// ` 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
146
|
+
[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],
|
|
147
|
+
// [tab] Q W E R T Y U I O P [ ]
|
|
148
|
+
[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],
|
|
149
|
+
// [caps] A S D F G H J K L ; ' \ [enter]
|
|
150
|
+
[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],
|
|
151
|
+
// [shift] * Z X C V B N M , . / [shift] *=oE2
|
|
152
|
+
[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],
|
|
153
|
+
// space
|
|
154
|
+
[k.K_SPACE],
|
|
155
|
+
];
|
|
156
|
+
export const JISVirtualKeyMap = [
|
|
157
|
+
// [Hankaku/Zenkaku] 1 2 3 4 5 6 7 8 9 0 - ^ ¥ [bksp]
|
|
158
|
+
[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? */],
|
|
159
|
+
// [tab] Q W E R T Y U I O P @«`» [ [enter]
|
|
160
|
+
[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_BKQUOTE, k.K_LBRKT],
|
|
161
|
+
// [caps] A S D F G H J K L ; : ] [enter]
|
|
162
|
+
[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],
|
|
163
|
+
// [shift] Z X C V B N M , . / _ [shift]
|
|
164
|
+
[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 /* ろ */],
|
|
165
|
+
// space
|
|
166
|
+
[k.K_SPACE],
|
|
167
|
+
];
|
|
168
|
+
export const ABNT2VirtualKeyMap = [
|
|
169
|
+
// ' 1 2 3 4 5 6 7 8 9 0 - = [bksp]
|
|
170
|
+
[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],
|
|
171
|
+
// [tab] Q W E R T Y U I O P ´ [
|
|
172
|
+
[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],
|
|
173
|
+
// [caps] A S D F G H J K L ç ~ ] [enter]
|
|
174
|
+
[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],
|
|
175
|
+
// [shift] \ Z X C V B N M , . ; / [shift]
|
|
176
|
+
[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 */],
|
|
177
|
+
// space
|
|
178
|
+
[k.K_SPACE],
|
|
179
|
+
];
|
|
180
|
+
/**
|
|
181
|
+
* Map from a hardware constant to a keymap
|
|
182
|
+
* For the 'key' see constants.layr_list_hardware_map
|
|
183
|
+
*/
|
|
184
|
+
export const HardwareToKeymap = new Map([
|
|
185
|
+
["us", USVirtualKeyMap],
|
|
186
|
+
["iso", ISOVirtualKeyMap],
|
|
187
|
+
["jis", JISVirtualKeyMap],
|
|
188
|
+
["abnt2", ABNT2VirtualKeyMap],
|
|
189
|
+
]);
|
|
190
|
+
/**
|
|
191
|
+
* Maps LDML VKey Names from CLDR VKey Enum in TR35 to Keyman virtual key codes
|
|
192
|
+
*/
|
|
193
|
+
export const LdmlVkeyNames = {
|
|
194
|
+
'SPACE': k.K_SPACE,
|
|
195
|
+
'0': k.K_0,
|
|
196
|
+
'1': k.K_1,
|
|
197
|
+
'2': k.K_2,
|
|
198
|
+
'3': k.K_3,
|
|
199
|
+
'4': k.K_4,
|
|
200
|
+
'5': k.K_5,
|
|
201
|
+
'6': k.K_6,
|
|
202
|
+
'7': k.K_7,
|
|
203
|
+
'8': k.K_8,
|
|
204
|
+
'9': k.K_9,
|
|
205
|
+
'A': k.K_A,
|
|
206
|
+
'B': k.K_B,
|
|
207
|
+
'C': k.K_C,
|
|
208
|
+
'D': k.K_D,
|
|
209
|
+
'E': k.K_E,
|
|
210
|
+
'F': k.K_F,
|
|
211
|
+
'G': k.K_G,
|
|
212
|
+
'H': k.K_H,
|
|
213
|
+
'I': k.K_I,
|
|
214
|
+
'J': k.K_J,
|
|
215
|
+
'K': k.K_K,
|
|
216
|
+
'L': k.K_L,
|
|
217
|
+
'M': k.K_M,
|
|
218
|
+
'N': k.K_N,
|
|
219
|
+
'O': k.K_O,
|
|
220
|
+
'P': k.K_P,
|
|
221
|
+
'Q': k.K_Q,
|
|
222
|
+
'R': k.K_R,
|
|
223
|
+
'S': k.K_S,
|
|
224
|
+
'T': k.K_T,
|
|
225
|
+
'U': k.K_U,
|
|
226
|
+
'V': k.K_V,
|
|
227
|
+
'W': k.K_W,
|
|
228
|
+
'X': k.K_X,
|
|
229
|
+
'Y': k.K_Y,
|
|
230
|
+
'Z': k.K_Z,
|
|
231
|
+
'SEMICOLON': k.K_COLON,
|
|
232
|
+
'EQUAL': k.K_EQUAL,
|
|
233
|
+
'COMMA': k.K_COMMA,
|
|
234
|
+
'HYPHEN': k.K_HYPHEN,
|
|
235
|
+
'PERIOD': k.K_PERIOD,
|
|
236
|
+
'SLASH': k.K_SLASH,
|
|
237
|
+
'GRAVE': k.K_BKQUOTE,
|
|
238
|
+
'LBRACKET': k.K_LBRKT,
|
|
239
|
+
'BACKSLASH': k.K_BKSLASH,
|
|
240
|
+
'RBRACKET': k.K_RBRKT,
|
|
241
|
+
'QUOTE': k.K_QUOTE,
|
|
242
|
+
'LESS-THAN': k.K_oE2,
|
|
243
|
+
'ABNT2': k.k_oC1, // 0xC1, // B11 Extra key, left of right-shift, ABNT2
|
|
244
|
+
};
|
|
245
|
+
//# sourceMappingURL=virtual-key-constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"virtual-key-constants.js","sourceRoot":"","sources":["../../../src/consts/virtual-key-constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
Copyright © 1991-2023 Unicode, Inc.
|
|
4
|
+
For terms of use, see http://www.unicode.org/copyright.html
|
|
5
|
+
SPDX-License-Identifier: Unicode-DFS-2016
|
|
6
|
+
CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
|
|
7
|
+
-->
|
|
8
|
+
<!--
|
|
9
|
+
This is the implied import for implied keys.
|
|
10
|
+
Please note that any implied keys may be overridden by keyboard layouts.
|
|
11
|
+
-->
|
|
12
|
+
<!DOCTYPE keys SYSTEM "../dtd/ldmlKeyboard.dtd">
|
|
13
|
+
<keys>
|
|
14
|
+
|
|
15
|
+
<key id="gap" gap="true" width="1"/>
|
|
16
|
+
<key id="space" to=" " stretch="true" width="1"/>
|
|
17
|
+
|
|
18
|
+
<key id="0" to="0"/>
|
|
19
|
+
<key id="1" to="1"/>
|
|
20
|
+
<key id="2" to="2"/>
|
|
21
|
+
<key id="3" to="3"/>
|
|
22
|
+
<key id="4" to="4"/>
|
|
23
|
+
<key id="5" to="5"/>
|
|
24
|
+
<key id="6" to="6"/>
|
|
25
|
+
<key id="7" to="7"/>
|
|
26
|
+
<key id="8" to="8"/>
|
|
27
|
+
<key id="9" to="9"/>
|
|
28
|
+
<key id="A" to="A"/>
|
|
29
|
+
<key id="B" to="B"/>
|
|
30
|
+
<key id="C" to="C"/>
|
|
31
|
+
<key id="D" to="D"/>
|
|
32
|
+
<key id="E" to="E"/>
|
|
33
|
+
<key id="F" to="F"/>
|
|
34
|
+
<key id="G" to="G"/>
|
|
35
|
+
<key id="H" to="H"/>
|
|
36
|
+
<key id="I" to="I"/>
|
|
37
|
+
<key id="J" to="J"/>
|
|
38
|
+
<key id="K" to="K"/>
|
|
39
|
+
<key id="L" to="L"/>
|
|
40
|
+
<key id="M" to="M"/>
|
|
41
|
+
<key id="N" to="N"/>
|
|
42
|
+
<key id="O" to="O"/>
|
|
43
|
+
<key id="P" to="P"/>
|
|
44
|
+
<key id="Q" to="Q"/>
|
|
45
|
+
<key id="R" to="R"/>
|
|
46
|
+
<key id="S" to="S"/>
|
|
47
|
+
<key id="T" to="T"/>
|
|
48
|
+
<key id="U" to="U"/>
|
|
49
|
+
<key id="V" to="V"/>
|
|
50
|
+
<key id="W" to="W"/>
|
|
51
|
+
<key id="X" to="X"/>
|
|
52
|
+
<key id="Y" to="Y"/>
|
|
53
|
+
<key id="Z" to="Z"/>
|
|
54
|
+
<key id="a" to="a"/>
|
|
55
|
+
<key id="b" to="b"/>
|
|
56
|
+
<key id="c" to="c"/>
|
|
57
|
+
<key id="d" to="d"/>
|
|
58
|
+
<key id="e" to="e"/>
|
|
59
|
+
<key id="f" to="f"/>
|
|
60
|
+
<key id="g" to="g"/>
|
|
61
|
+
<key id="h" to="h"/>
|
|
62
|
+
<key id="i" to="i"/>
|
|
63
|
+
<key id="j" to="j"/>
|
|
64
|
+
<key id="k" to="k"/>
|
|
65
|
+
<key id="l" to="l"/>
|
|
66
|
+
<key id="m" to="m"/>
|
|
67
|
+
<key id="n" to="n"/>
|
|
68
|
+
<key id="o" to="o"/>
|
|
69
|
+
<key id="p" to="p"/>
|
|
70
|
+
<key id="q" to="q"/>
|
|
71
|
+
<key id="r" to="r"/>
|
|
72
|
+
<key id="s" to="s"/>
|
|
73
|
+
<key id="t" to="t"/>
|
|
74
|
+
<key id="u" to="u"/>
|
|
75
|
+
<key id="v" to="v"/>
|
|
76
|
+
<key id="w" to="w"/>
|
|
77
|
+
<key id="x" to="x"/>
|
|
78
|
+
<key id="y" to="y"/>
|
|
79
|
+
<key id="z" to="z"/>
|
|
80
|
+
</keys>
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
Copyright © 1991-2023 Unicode, Inc.
|
|
4
|
+
For terms of use, see http://www.unicode.org/copyright.html
|
|
5
|
+
SPDX-License-Identifier: Unicode-DFS-2016
|
|
6
|
+
CLDR data files are interpreted according to the LDML specification (http://unicode.org/reports/tr35/)
|
|
7
|
+
-->
|
|
8
|
+
<!--
|
|
9
|
+
This file is part of the CLDR Keyboard Technical Preview.
|
|
10
|
+
This is a sample of how imports can be used.
|
|
11
|
+
This file is subject to change.
|
|
12
|
+
Please see https://cldr.unicode.org/index/keyboard-workgroup for the latest information.
|
|
13
|
+
-->
|
|
14
|
+
<!DOCTYPE keys SYSTEM "../dtd/ldmlKeyboard.dtd">
|
|
15
|
+
<keys>
|
|
16
|
+
<key id="dollar" to="$" />
|
|
17
|
+
<key id="euro" to="€" />
|
|
18
|
+
<key id="pound" to="£" />
|
|
19
|
+
<key id="yen" to="¥" />
|
|
20
|
+
<key id="cruzeiro" to="₢" />
|
|
21
|
+
<key id="cent" to="¢" />
|
|
22
|
+
</keys>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
This file is part of the CLDR Keyboard Technical Preview.
|
|
4
|
+
This is a sample of how imports can be used.
|
|
5
|
+
This file is subject to change.
|
|
6
|
+
Please see https://cldr.unicode.org/index/keyboard-workgroup for the latest information.
|
|
7
|
+
-->
|
|
8
|
+
<!DOCTYPE keys SYSTEM "../dtd/ldmlKeyboard.dtd">
|
|
9
|
+
<keys>
|
|
10
|
+
<!-- General Symbols -->
|
|
11
|
+
<key id="amp" to="\u{0026}" />
|
|
12
|
+
<key id="apos" to="'" />
|
|
13
|
+
<key id="asterisk" to="*" />
|
|
14
|
+
<key id="at" to="@" />
|
|
15
|
+
<key id="backslash" to="\u{005C}" />
|
|
16
|
+
<key id="bang" to="!" />
|
|
17
|
+
<key id="caret" to="^" />
|
|
18
|
+
<key id="close-angle" to=">" />
|
|
19
|
+
<key id="close-curly" to="}" />
|
|
20
|
+
<key id="close-paren" to=")" />
|
|
21
|
+
<key id="close-square" to="]" />
|
|
22
|
+
<key id="colon" to=":" />
|
|
23
|
+
<key id="comma" to="," />
|
|
24
|
+
<key id="degree" to="°" />
|
|
25
|
+
<key id="double-quote" to="\u{0022}" />
|
|
26
|
+
<key id="equal" to="=" />
|
|
27
|
+
<key id="grave" to="`" />
|
|
28
|
+
<key id="hash" to="#" />
|
|
29
|
+
<key id="hyphen" to="-" />
|
|
30
|
+
<key id="micro" to="µ" />
|
|
31
|
+
<key id="not" to="¬" />
|
|
32
|
+
<key id="open-angle" to="\u{003C}" />
|
|
33
|
+
<key id="open-curly" to="{" />
|
|
34
|
+
<key id="open-paren" to="(" />
|
|
35
|
+
<key id="open-square" to="[" />
|
|
36
|
+
<key id="percent" to="%" />
|
|
37
|
+
<key id="period" to="." />
|
|
38
|
+
<key id="pipe" to="|" />
|
|
39
|
+
<key id="plus" to="+" />
|
|
40
|
+
<key id="question" to="?" />
|
|
41
|
+
<key id="section" to="§" />
|
|
42
|
+
<key id="semi-colon" to=";" />
|
|
43
|
+
<key id="slash" to="/" />
|
|
44
|
+
<key id="tilde" to="~" />
|
|
45
|
+
<key id="underscore" to="_" />
|
|
46
|
+
</keys>
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
import { TouchLayoutFile } from "./keyman-touch-layout-file.js";
|
|
3
|
+
export declare class TouchLayoutFileReader {
|
|
4
|
+
read(source: Uint8Array): TouchLayoutFile;
|
|
5
|
+
validate(source: TouchLayoutFile, schemaBuffer: Buffer): void;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=keyman-touch-layout-file-reader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyman-touch-layout-file-reader.d.ts","sourceRoot":"","sources":["../../../src/keyman-touch-layout/keyman-touch-layout-file-reader.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAEhE,qBAAa,qBAAqB;IACzB,IAAI,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe;IAgEzC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;CAWrE"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { default as AjvModule } from 'ajv';
|
|
2
|
+
const Ajv = AjvModule.default; // The actual expected Ajv type.
|
|
3
|
+
export class TouchLayoutFileReader {
|
|
4
|
+
read(source) {
|
|
5
|
+
const decoder = new TextDecoder('utf-8', { fatal: true, ignoreBOM: true });
|
|
6
|
+
let sourceString;
|
|
7
|
+
try {
|
|
8
|
+
sourceString = decoder.decode(source);
|
|
9
|
+
/* c8 ignore next 7 */
|
|
10
|
+
}
|
|
11
|
+
catch (e) {
|
|
12
|
+
if (e instanceof TypeError) {
|
|
13
|
+
// TODO: Do we want to do something else with this?
|
|
14
|
+
throw e;
|
|
15
|
+
}
|
|
16
|
+
throw e;
|
|
17
|
+
}
|
|
18
|
+
let result;
|
|
19
|
+
try {
|
|
20
|
+
result = JSON.parse(sourceString, function (key, value) {
|
|
21
|
+
// `row.id` should be number, but may have been stringified; we use
|
|
22
|
+
// presence of `key` property to recognise this as a `TouchLayoutRow`.
|
|
23
|
+
if (this.key && key == 'id' && typeof value == 'string') {
|
|
24
|
+
let newValue = parseInt(value, 10);
|
|
25
|
+
/* c8 ignore next 3 */
|
|
26
|
+
if (isNaN(newValue)) {
|
|
27
|
+
throw new TypeError(`Invalid row.id: "${value}"`);
|
|
28
|
+
}
|
|
29
|
+
return newValue;
|
|
30
|
+
}
|
|
31
|
+
// `key.width`, `key.pad`, `key.sp` should be number, but may have been
|
|
32
|
+
// stringified
|
|
33
|
+
if (key == 'width' || key == 'pad' || key == 'sp') {
|
|
34
|
+
if (value === '') {
|
|
35
|
+
// Empty string is equivalent to not present, so fall back to
|
|
36
|
+
// default value
|
|
37
|
+
return undefined;
|
|
38
|
+
}
|
|
39
|
+
let newValue = parseInt(value, 10);
|
|
40
|
+
/* c8 ignore next 3 */
|
|
41
|
+
if (isNaN(newValue)) {
|
|
42
|
+
throw new TypeError(`Invalid [sub]key.${key}: "${value}"`);
|
|
43
|
+
}
|
|
44
|
+
return newValue;
|
|
45
|
+
}
|
|
46
|
+
if (Array.isArray(value) && value.length == 0) {
|
|
47
|
+
// Delete empty arrays
|
|
48
|
+
return undefined;
|
|
49
|
+
}
|
|
50
|
+
return value;
|
|
51
|
+
});
|
|
52
|
+
/* c8 ignore next 7 */
|
|
53
|
+
}
|
|
54
|
+
catch (e) {
|
|
55
|
+
if (e instanceof SyntaxError) {
|
|
56
|
+
// TODO: Do we want to do something else with this?
|
|
57
|
+
throw e;
|
|
58
|
+
}
|
|
59
|
+
throw e;
|
|
60
|
+
}
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
validate(source, schemaBuffer) {
|
|
64
|
+
const schema = JSON.parse(schemaBuffer.toString('utf8'));
|
|
65
|
+
const ajv = new Ajv();
|
|
66
|
+
if (!ajv.validate(schema, source))
|
|
67
|
+
/* c8 ignore next 3 */
|
|
68
|
+
{
|
|
69
|
+
throw new Error(ajv.errorsText());
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
;
|
|
74
|
+
//# sourceMappingURL=keyman-touch-layout-file-reader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyman-touch-layout-file-reader.js","sourceRoot":"","sources":["../../../src/keyman-touch-layout/keyman-touch-layout-file-reader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,KAAK,CAAC;AAC3C,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,gCAAgC;AAG/D,MAAM,OAAO,qBAAqB;IACzB,IAAI,CAAC,MAAkB;QAC5B,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAC,KAAK,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;QACxE,IAAI,YAAoB,CAAC;QACzB,IAAI;YACF,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACxC,sBAAsB;SACrB;QAAC,OAAM,CAAC,EAAE;YACT,IAAG,CAAC,YAAY,SAAS,EAAE;gBACzB,mDAAmD;gBACnD,MAAM,CAAC,CAAC;aACT;YACD,MAAM,CAAC,CAAC;SACT;QAED,IAAI,MAAuB,CAAC;QAC5B,IAAI;YACF,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,UAAS,GAAG,EAAE,KAAK;gBACnD,mEAAmE;gBACnE,sEAAsE;gBACtE,IAAG,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI,IAAI,OAAO,KAAK,IAAI,QAAQ,EAAE;oBACtD,IAAI,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnC,sBAAsB;oBACtB,IAAG,KAAK,CAAC,QAAQ,CAAC,EAAE;wBAClB,MAAM,IAAI,SAAS,CAAC,oBAAoB,KAAK,GAAG,CAAC,CAAC;qBACnD;oBACD,OAAO,QAAQ,CAAC;iBACjB;gBAED,uEAAuE;gBACvE,cAAc;gBACd,IAAG,GAAG,IAAI,OAAO,IAAI,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE;oBAChD,IAAG,KAAK,KAAK,EAAE,EAAE;wBACf,6DAA6D;wBAC7D,gBAAgB;wBAChB,OAAO,SAAS,CAAC;qBAClB;oBAED,IAAI,QAAQ,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;oBACnC,sBAAsB;oBACtB,IAAG,KAAK,CAAC,QAAQ,CAAC,EAAE;wBAClB,MAAM,IAAI,SAAS,CAAC,oBAAoB,GAAG,MAAM,KAAK,GAAG,CAAC,CAAC;qBAC5D;oBACD,OAAO,QAAQ,CAAC;iBACjB;gBAED,IAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;oBAC5C,sBAAsB;oBACtB,OAAO,SAAS,CAAC;iBAClB;gBAED,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;YACL,sBAAsB;SACrB;QAAC,OAAM,CAAC,EAAE;YACT,IAAG,CAAC,YAAY,WAAW,EAAE;gBAC3B,mDAAmD;gBACnD,MAAM,CAAC,CAAC;aACT;YACD,MAAM,CAAC,CAAC;SACT;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,QAAQ,CAAC,MAAuB,EAAE,YAAoB;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,IAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAChC,sBAAsB;QACtB;YACE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;SACnC;IACH,CAAC;CAGF;AAAA,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TouchLayoutFile } from "./keyman-touch-layout-file.js";
|
|
2
|
+
export interface TouchLayoutFileWriterOptions {
|
|
3
|
+
formatted?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare class TouchLayoutFileWriter {
|
|
6
|
+
options: TouchLayoutFileWriterOptions;
|
|
7
|
+
constructor(options?: TouchLayoutFileWriterOptions);
|
|
8
|
+
/**
|
|
9
|
+
* Writes the touch layout to a .keyman-touch-layout JSON file
|
|
10
|
+
* @param source TouchLayoutFile
|
|
11
|
+
* @returns Uint8Array, the .keyman-touch-layout file
|
|
12
|
+
*/
|
|
13
|
+
write(source: TouchLayoutFile): Uint8Array;
|
|
14
|
+
/**
|
|
15
|
+
* Compiles the touch layout file into a KeymanWeb-compatible JSON-style
|
|
16
|
+
* object string. In the future, this may be optimized to remove unnecessary
|
|
17
|
+
* quoting of property names, and remove unused properties, as this string
|
|
18
|
+
* is embedded into .js code.
|
|
19
|
+
* @param source
|
|
20
|
+
* @returns string
|
|
21
|
+
*/
|
|
22
|
+
compile(source: TouchLayoutFile): string;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=keyman-touch-layout-file-writer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyman-touch-layout-file-writer.d.ts","sourceRoot":"","sources":["../../../src/keyman-touch-layout/keyman-touch-layout-file-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA0D,MAAM,+BAA+B,CAAC;AAExH,MAAM,WAAW,4BAA4B;IAC3C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,qBAAa,qBAAqB;IAEhC,OAAO,EAAE,4BAA4B,CAAC;gBAE1B,OAAO,CAAC,EAAE,4BAA4B;IAIlD;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,eAAe,GAAG,UAAU;IAM1C;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,EAAE,eAAe,GAAG,MAAM;CAkDzC"}
|