@keymanapp/kmc-ldml 18.0.41-alpha → 18.0.45-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/compiler/compiler.d.ts +123 -123
- package/build/src/compiler/compiler.js +307 -310
- package/build/src/compiler/compiler.js.map +1 -1
- package/build/src/compiler/disp.d.ts +11 -11
- package/build/src/compiler/disp.js +82 -85
- package/build/src/compiler/disp.js.map +1 -1
- package/build/src/compiler/empty-compiler.d.ts +37 -37
- package/build/src/compiler/empty-compiler.js +114 -117
- package/build/src/compiler/empty-compiler.js.map +1 -1
- package/build/src/compiler/keymanweb-compiler.d.ts +13 -13
- package/build/src/compiler/keymanweb-compiler.js +95 -98
- package/build/src/compiler/keymanweb-compiler.js.map +1 -1
- package/build/src/compiler/keys.d.ts +53 -53
- package/build/src/compiler/keys.js +417 -420
- package/build/src/compiler/keys.js.map +1 -1
- package/build/src/compiler/layr.d.ts +9 -9
- package/build/src/compiler/layr.js +81 -84
- package/build/src/compiler/layr.js.map +1 -1
- package/build/src/compiler/ldml-compiler-options.d.ts +11 -11
- package/build/src/compiler/ldml-compiler-options.js +3 -6
- package/build/src/compiler/ldml-compiler-options.js.map +1 -1
- package/build/src/compiler/loca.d.ts +15 -15
- package/build/src/compiler/loca.js +59 -62
- package/build/src/compiler/loca.js.map +1 -1
- package/build/src/compiler/messages.d.ts +186 -186
- package/build/src/compiler/messages.js +122 -125
- package/build/src/compiler/messages.js.map +1 -1
- package/build/src/compiler/meta.d.ts +13 -13
- package/build/src/compiler/meta.js +55 -58
- package/build/src/compiler/meta.js.map +1 -1
- package/build/src/compiler/metadata-compiler.d.ts +12 -12
- package/build/src/compiler/metadata-compiler.js +47 -50
- package/build/src/compiler/metadata-compiler.js.map +1 -1
- package/build/src/compiler/section-compiler.d.ts +35 -35
- package/build/src/compiler/section-compiler.js +40 -43
- package/build/src/compiler/section-compiler.js.map +1 -1
- package/build/src/compiler/substitution-tracker.d.ts +47 -47
- package/build/src/compiler/substitution-tracker.js +103 -106
- package/build/src/compiler/substitution-tracker.js.map +1 -1
- package/build/src/compiler/touch-layout-compiler.d.ts +7 -7
- package/build/src/compiler/touch-layout-compiler.js +91 -94
- package/build/src/compiler/touch-layout-compiler.js.map +1 -1
- package/build/src/compiler/tran.d.ts +57 -57
- package/build/src/compiler/tran.js +388 -391
- package/build/src/compiler/tran.js.map +1 -1
- package/build/src/compiler/vars.d.ts +21 -21
- package/build/src/compiler/vars.js +234 -237
- package/build/src/compiler/vars.js.map +1 -1
- package/build/src/compiler/visual-keyboard-compiler.d.ts +8 -8
- package/build/src/compiler/visual-keyboard-compiler.js +68 -71
- package/build/src/compiler/visual-keyboard-compiler.js.map +1 -1
- package/build/src/main.d.ts +3 -3
- package/build/src/main.js +3 -6
- package/build/src/main.js.map +1 -1
- package/build/src/util/util.d.ts +49 -49
- package/build/src/util/util.js +183 -186
- package/build/src/util/util.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compiler.js","sources":["../../../src/compiler/compiler.ts"],"
|
|
1
|
+
{"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/compiler/compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { KMXPlus, LDMLKeyboard } from '@keymanapp/common-types';
|
|
2
|
-
import { SectionCompiler } from "./section-compiler.js";
|
|
3
|
-
import DependencySections = KMXPlus.DependencySections;
|
|
4
|
-
import Disp = KMXPlus.Disp;
|
|
5
|
-
import { Substitutions } from "./substitution-tracker.js";
|
|
6
|
-
export declare class DispCompiler extends SectionCompiler {
|
|
7
|
-
static validateSubstitutions(keyboard: LDMLKeyboard.LKKeyboard, st: Substitutions): boolean;
|
|
8
|
-
get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
|
|
9
|
-
validate(): boolean;
|
|
10
|
-
compile(sections: DependencySections): Disp;
|
|
11
|
-
}
|
|
1
|
+
import { KMXPlus, LDMLKeyboard } from '@keymanapp/common-types';
|
|
2
|
+
import { SectionCompiler } from "./section-compiler.js";
|
|
3
|
+
import DependencySections = KMXPlus.DependencySections;
|
|
4
|
+
import Disp = KMXPlus.Disp;
|
|
5
|
+
import { Substitutions } from "./substitution-tracker.js";
|
|
6
|
+
export declare class DispCompiler extends SectionCompiler {
|
|
7
|
+
static validateSubstitutions(keyboard: LDMLKeyboard.LKKeyboard, st: Substitutions): boolean;
|
|
8
|
+
get id(): import("@keymanapp/ldml-keyboard-constants").SectionIdent;
|
|
9
|
+
validate(): boolean;
|
|
10
|
+
compile(sections: DependencySections): Disp;
|
|
11
|
+
}
|
|
12
12
|
//# sourceMappingURL=disp.d.ts.map
|
|
@@ -1,85 +1,82 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
//
|
|
56
|
-
result.
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=disp.js.map
|
|
85
|
-
//# debugId=0746d0dc-5fcb-546f-8d28-752c5c79208d
|
|
1
|
+
import { constants } from "@keymanapp/ldml-keyboard-constants";
|
|
2
|
+
import { KMXPlus } from '@keymanapp/common-types';
|
|
3
|
+
import { CompilerMessages } from "./messages.js";
|
|
4
|
+
import { SectionCompiler } from "./section-compiler.js";
|
|
5
|
+
var Disp = KMXPlus.Disp;
|
|
6
|
+
import { SubstitutionUse } from "./substitution-tracker.js";
|
|
7
|
+
export class DispCompiler extends SectionCompiler {
|
|
8
|
+
static validateSubstitutions(keyboard, st) {
|
|
9
|
+
keyboard.displays?.display?.forEach(({ display, output }) => {
|
|
10
|
+
st.addStringAndMarkerSubstitution(SubstitutionUse.match, output);
|
|
11
|
+
st.addStringSubstitution(SubstitutionUse.emit, display);
|
|
12
|
+
});
|
|
13
|
+
// no marker references in 'id'
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
get id() {
|
|
17
|
+
return constants.section.disp;
|
|
18
|
+
}
|
|
19
|
+
validate() {
|
|
20
|
+
let valid = true;
|
|
21
|
+
const tos = new Set();
|
|
22
|
+
const ids = new Set();
|
|
23
|
+
if (this.keyboard3.displays?.display) {
|
|
24
|
+
for (const { output, keyId } of this.keyboard3.displays?.display) {
|
|
25
|
+
if ((output && keyId) || (!output && !keyId)) {
|
|
26
|
+
this.callbacks.reportMessage(CompilerMessages.Error_DisplayNeedsToOrId({ output, keyId }));
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
else if (output) {
|
|
30
|
+
if (tos.has(output)) {
|
|
31
|
+
this.callbacks.reportMessage(CompilerMessages.Error_DisplayIsRepeated({ output }));
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
tos.add(output);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
else if (keyId) {
|
|
39
|
+
if (ids.has(keyId)) {
|
|
40
|
+
this.callbacks.reportMessage(CompilerMessages.Error_DisplayIsRepeated({ keyId }));
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
ids.add(keyId);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return valid;
|
|
50
|
+
}
|
|
51
|
+
compile(sections) {
|
|
52
|
+
let result = new Disp();
|
|
53
|
+
// displayOptions
|
|
54
|
+
result.baseCharacter = sections.strs.allocString(this.keyboard3.displays?.displayOptions?.baseCharacter, { unescape: true });
|
|
55
|
+
// displays
|
|
56
|
+
result.disps = this.keyboard3.displays?.display.map(display => ({
|
|
57
|
+
to: sections.strs.allocString(display.output, {
|
|
58
|
+
stringVariables: true,
|
|
59
|
+
markers: true,
|
|
60
|
+
unescape: true,
|
|
61
|
+
}, sections),
|
|
62
|
+
id: sections.strs.allocString(display.keyId), // not escaped, not substituted
|
|
63
|
+
display: sections.strs.allocString(display.display, {
|
|
64
|
+
stringVariables: true,
|
|
65
|
+
unescape: true,
|
|
66
|
+
}, sections),
|
|
67
|
+
})) || []; // TODO-LDML: need coverage for the []
|
|
68
|
+
result.disps.sort((a, b) => {
|
|
69
|
+
// sort 'id' first (empty string will be lower)
|
|
70
|
+
const idDiff = a.id.compareTo(b.id);
|
|
71
|
+
if (idDiff != 0) {
|
|
72
|
+
return idDiff;
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
// sort by 'to'
|
|
76
|
+
return a.to.compareTo(b.to);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=disp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disp.js","sources":["../../../src/compiler/disp.ts"],"
|
|
1
|
+
{"version":3,"file":"disp.js","sourceRoot":"","sources":["../../../src/compiler/disp.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,38 +1,38 @@
|
|
|
1
|
-
import { SectionIdent } from '@keymanapp/ldml-keyboard-constants';
|
|
2
|
-
import { SectionCompiler } from "./section-compiler.js";
|
|
3
|
-
import { LDMLKeyboard, KMXPlus, CompilerCallbacks } from "@keymanapp/common-types";
|
|
4
|
-
import { VarsCompiler } from './vars.js';
|
|
5
|
-
/**
|
|
6
|
-
* Compiler for typrs that don't actually consume input XML
|
|
7
|
-
*/
|
|
8
|
-
export declare abstract class EmptyCompiler extends SectionCompiler {
|
|
9
|
-
private _id;
|
|
10
|
-
constructor(id: SectionIdent, source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
11
|
-
get id(): SectionIdent;
|
|
12
|
-
get dependencies(): Set<SectionIdent>;
|
|
13
|
-
}
|
|
14
|
-
export declare class StrsCompiler extends EmptyCompiler {
|
|
15
|
-
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
16
|
-
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
17
|
-
postValidate(section?: KMXPlus.Section): boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare class ElemCompiler extends EmptyCompiler {
|
|
20
|
-
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
21
|
-
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
22
|
-
get dependencies(): Set<SectionIdent>;
|
|
23
|
-
}
|
|
24
|
-
export declare class ListCompiler extends EmptyCompiler {
|
|
25
|
-
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
26
|
-
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
27
|
-
get dependencies(): Set<SectionIdent>;
|
|
28
|
-
}
|
|
29
|
-
export declare class UsetCompiler extends EmptyCompiler {
|
|
30
|
-
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
31
|
-
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
32
|
-
get dependencies(): Set<SectionIdent>;
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* For test use. The top compilers.
|
|
36
|
-
*/
|
|
37
|
-
export declare const BASIC_DEPENDENCIES: (typeof VarsCompiler | typeof StrsCompiler)[];
|
|
1
|
+
import { SectionIdent } from '@keymanapp/ldml-keyboard-constants';
|
|
2
|
+
import { SectionCompiler } from "./section-compiler.js";
|
|
3
|
+
import { LDMLKeyboard, KMXPlus, CompilerCallbacks } from "@keymanapp/common-types";
|
|
4
|
+
import { VarsCompiler } from './vars.js';
|
|
5
|
+
/**
|
|
6
|
+
* Compiler for typrs that don't actually consume input XML
|
|
7
|
+
*/
|
|
8
|
+
export declare abstract class EmptyCompiler extends SectionCompiler {
|
|
9
|
+
private _id;
|
|
10
|
+
constructor(id: SectionIdent, source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
11
|
+
get id(): SectionIdent;
|
|
12
|
+
get dependencies(): Set<SectionIdent>;
|
|
13
|
+
}
|
|
14
|
+
export declare class StrsCompiler extends EmptyCompiler {
|
|
15
|
+
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
16
|
+
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
17
|
+
postValidate(section?: KMXPlus.Section): boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare class ElemCompiler extends EmptyCompiler {
|
|
20
|
+
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
21
|
+
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
22
|
+
get dependencies(): Set<SectionIdent>;
|
|
23
|
+
}
|
|
24
|
+
export declare class ListCompiler extends EmptyCompiler {
|
|
25
|
+
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
26
|
+
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
27
|
+
get dependencies(): Set<SectionIdent>;
|
|
28
|
+
}
|
|
29
|
+
export declare class UsetCompiler extends EmptyCompiler {
|
|
30
|
+
constructor(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile, callbacks: CompilerCallbacks);
|
|
31
|
+
compile(sections: KMXPlus.DependencySections): KMXPlus.Section;
|
|
32
|
+
get dependencies(): Set<SectionIdent>;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* For test use. The top compilers.
|
|
36
|
+
*/
|
|
37
|
+
export declare const BASIC_DEPENDENCIES: (typeof VarsCompiler | typeof StrsCompiler)[];
|
|
38
38
|
//# sourceMappingURL=empty-compiler.d.ts.map
|
|
@@ -1,117 +1,114 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
//
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
export const BASIC_DEPENDENCIES = [StrsCompiler, ListCompiler, ElemCompiler, VarsCompiler];
|
|
116
|
-
//# sourceMappingURL=empty-compiler.js.map
|
|
117
|
-
//# debugId=d178d2a2-c6ae-5e0e-a85b-99084bedff01
|
|
1
|
+
import { constants } from '@keymanapp/ldml-keyboard-constants';
|
|
2
|
+
import { SectionCompiler } from "./section-compiler.js";
|
|
3
|
+
import { KMXPlus, util, MarkerParser } from "@keymanapp/common-types";
|
|
4
|
+
import { VarsCompiler } from './vars.js';
|
|
5
|
+
import { CompilerMessages } from './messages.js';
|
|
6
|
+
/**
|
|
7
|
+
* Compiler for typrs that don't actually consume input XML
|
|
8
|
+
*/
|
|
9
|
+
export class EmptyCompiler extends SectionCompiler {
|
|
10
|
+
_id;
|
|
11
|
+
constructor(id, source, callbacks) {
|
|
12
|
+
super(source, callbacks);
|
|
13
|
+
this._id = id;
|
|
14
|
+
}
|
|
15
|
+
get id() {
|
|
16
|
+
return this._id;
|
|
17
|
+
}
|
|
18
|
+
get dependencies() {
|
|
19
|
+
return new Set(); // no dependencies
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export class StrsCompiler extends EmptyCompiler {
|
|
23
|
+
constructor(source, callbacks) {
|
|
24
|
+
super(constants.section.strs, source, callbacks);
|
|
25
|
+
}
|
|
26
|
+
compile(sections) {
|
|
27
|
+
return new KMXPlus.Strs();
|
|
28
|
+
}
|
|
29
|
+
postValidate(section) {
|
|
30
|
+
const strs = section;
|
|
31
|
+
if (strs) {
|
|
32
|
+
const badStringAnalyzer = new util.BadStringAnalyzer();
|
|
33
|
+
const CONTAINS_MARKER_REGEX = new RegExp(MarkerParser.ANY_MARKER_MATCH);
|
|
34
|
+
for (let s of strs.allProcessedStrings.values()) {
|
|
35
|
+
// replace all \\uXXXX with the actual code point.
|
|
36
|
+
// this lets us analyze whether there are PUA, unassigned, etc.
|
|
37
|
+
// the results might not be valid regex of course.
|
|
38
|
+
if (util.CONTAINS_QUAD_ESCAPE.test(s)) {
|
|
39
|
+
s = util.unescapeQuadString(s);
|
|
40
|
+
}
|
|
41
|
+
// skip marker strings
|
|
42
|
+
if (CONTAINS_MARKER_REGEX.test(s)) {
|
|
43
|
+
// it had a marker, take out all marker strings, as the sentinel is illegal
|
|
44
|
+
// need a new regex to match
|
|
45
|
+
const REPLACE_MARKER_REGEX = new RegExp(MarkerParser.ANY_MARKER_MATCH, 'g');
|
|
46
|
+
s = s.replaceAll(REPLACE_MARKER_REGEX, ''); // remove markers.
|
|
47
|
+
}
|
|
48
|
+
badStringAnalyzer.add(s);
|
|
49
|
+
}
|
|
50
|
+
const m = badStringAnalyzer.analyze();
|
|
51
|
+
if (m?.size > 0) {
|
|
52
|
+
const puas = m.get(util.BadStringType.pua);
|
|
53
|
+
const unassigneds = m.get(util.BadStringType.unassigned);
|
|
54
|
+
const illegals = m.get(util.BadStringType.illegal);
|
|
55
|
+
if (puas) {
|
|
56
|
+
const [count, lowestCh] = [puas.size, Array.from(puas.values()).sort((a, b) => a - b)[0]];
|
|
57
|
+
this.callbacks.reportMessage(CompilerMessages.Hint_PUACharacters({ count, lowestCh }));
|
|
58
|
+
}
|
|
59
|
+
if (unassigneds) {
|
|
60
|
+
const [count, lowestCh] = [unassigneds.size, Array.from(unassigneds.values()).sort((a, b) => a - b)[0]];
|
|
61
|
+
this.callbacks.reportMessage(CompilerMessages.Warn_UnassignedCharacters({ count, lowestCh }));
|
|
62
|
+
}
|
|
63
|
+
if (illegals) {
|
|
64
|
+
// do this last, because we will return false.
|
|
65
|
+
const [count, lowestCh] = [illegals.size, Array.from(illegals.values()).sort((a, b) => a - b)[0]];
|
|
66
|
+
this.callbacks.reportMessage(CompilerMessages.Error_IllegalCharacters({ count, lowestCh }));
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return true;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export class ElemCompiler extends EmptyCompiler {
|
|
75
|
+
constructor(source, callbacks) {
|
|
76
|
+
super(constants.section.elem, source, callbacks);
|
|
77
|
+
}
|
|
78
|
+
compile(sections) {
|
|
79
|
+
return new KMXPlus.Elem(sections);
|
|
80
|
+
}
|
|
81
|
+
get dependencies() {
|
|
82
|
+
const strsOnly = new Set([constants.section.strs]);
|
|
83
|
+
return strsOnly;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
export class ListCompiler extends EmptyCompiler {
|
|
87
|
+
constructor(source, callbacks) {
|
|
88
|
+
super(constants.section.list, source, callbacks);
|
|
89
|
+
}
|
|
90
|
+
compile(sections) {
|
|
91
|
+
return new KMXPlus.List(sections.strs);
|
|
92
|
+
}
|
|
93
|
+
get dependencies() {
|
|
94
|
+
const strsOnly = new Set([constants.section.strs]);
|
|
95
|
+
return strsOnly;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
export class UsetCompiler extends EmptyCompiler {
|
|
99
|
+
constructor(source, callbacks) {
|
|
100
|
+
super(constants.section.uset, source, callbacks);
|
|
101
|
+
}
|
|
102
|
+
compile(sections) {
|
|
103
|
+
return new KMXPlus.Uset();
|
|
104
|
+
}
|
|
105
|
+
get dependencies() {
|
|
106
|
+
const strsOnly = new Set([constants.section.strs]);
|
|
107
|
+
return strsOnly;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* For test use. The top compilers.
|
|
112
|
+
*/
|
|
113
|
+
export const BASIC_DEPENDENCIES = [StrsCompiler, ListCompiler, ElemCompiler, VarsCompiler];
|
|
114
|
+
//# sourceMappingURL=empty-compiler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"empty-compiler.js","sources":["../../../src/compiler/empty-compiler.ts"],"
|
|
1
|
+
{"version":3,"file":"empty-compiler.js","sourceRoot":"","sources":["../../../src/compiler/empty-compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { CompilerCallbacks, LDMLKeyboard } from "@keymanapp/common-types";
|
|
2
|
-
import { LdmlCompilerOptions } from "./ldml-compiler-options.js";
|
|
3
|
-
export declare class LdmlKeyboardKeymanWebCompiler {
|
|
4
|
-
private callbacks;
|
|
5
|
-
private readonly options;
|
|
6
|
-
private readonly nl;
|
|
7
|
-
private readonly tab;
|
|
8
|
-
constructor(callbacks: CompilerCallbacks, options?: LdmlCompilerOptions);
|
|
9
|
-
compileVisualKeyboard(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
10
|
-
compileTouchLayout(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
11
|
-
private cleanName;
|
|
12
|
-
compile(name: string, source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
13
|
-
}
|
|
1
|
+
import { CompilerCallbacks, LDMLKeyboard } from "@keymanapp/common-types";
|
|
2
|
+
import { LdmlCompilerOptions } from "./ldml-compiler-options.js";
|
|
3
|
+
export declare class LdmlKeyboardKeymanWebCompiler {
|
|
4
|
+
private callbacks;
|
|
5
|
+
private readonly options;
|
|
6
|
+
private readonly nl;
|
|
7
|
+
private readonly tab;
|
|
8
|
+
constructor(callbacks: CompilerCallbacks, options?: LdmlCompilerOptions);
|
|
9
|
+
compileVisualKeyboard(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
10
|
+
compileTouchLayout(source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
11
|
+
private cleanName;
|
|
12
|
+
compile(name: string, source: LDMLKeyboard.LDMLKeyboardXMLSourceFile): string;
|
|
13
|
+
}
|
|
14
14
|
//# sourceMappingURL=keymanweb-compiler.d.ts.map
|