@keymanapp/kmc-analyze 18.0.8-alpha → 18.0.9-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/README.md ADDED
@@ -0,0 +1,11 @@
1
+ # Keyman Developer - kmc-analyze
2
+
3
+ This package provides Keyman keyboard analysis tools. It can be used from the
4
+ command line with [@keymanapp/kmc](https://npmjs.com/package/@keymanapp/kmc).
5
+
6
+ Currently, the primary function of this package is to work with Keyman's
7
+ [`&displayMap` store](https://help.keyman.com/developer/language/reference/displaymap) for
8
+ rewriting the On Screen Keyboard with PUA characters, for consistent display of
9
+ diacritics and combining marks across all platforms.
10
+
11
+ * [API Reference](https://help.keyman.com/developer/current-version/reference/api/kmc-analyze)
@@ -1,7 +1,8 @@
1
1
  /**
2
- * osk-char-use - get list of characters used in on screen keyboard + touch layout
2
+ * @packageDocumentation
3
+ * kmc-analyze - keyboard analysis classes, including tools for `&displayMap`.
3
4
  */
4
- export { AnalyzeOskCharacterUse } from './osk-character-use/index.js';
5
+ export { AnalyzeOskCharacterUse, AnalyzeOskCharacterUseOptions } from './osk-character-use/index.js';
5
6
  export { AnalyzeOskRewritePua } from './osk-rewrite-pua/index.js';
6
7
  export { AnalyzerMessages } from './messages.js';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -1,9 +1,10 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="cee894b3-570b-5a63-9114-dfdeb5c7458f")}catch(e){}}();
1
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4c9393bf-f417-5abb-8feb-4d080e0b6401")}catch(e){}}();
2
2
  /**
3
- * osk-char-use - get list of characters used in on screen keyboard + touch layout
3
+ * @packageDocumentation
4
+ * kmc-analyze - keyboard analysis classes, including tools for `&displayMap`.
4
5
  */
5
6
  export { AnalyzeOskCharacterUse } from './osk-character-use/index.js';
6
7
  export { AnalyzeOskRewritePua } from './osk-rewrite-pua/index.js';
7
8
  export { AnalyzerMessages } from './messages.js';
8
- //# debugId=cee894b3-570b-5a63-9114-dfdeb5c7458f
9
+ //# debugId=4c9393bf-f417-5abb-8feb-4d080e0b6401
9
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"debug_id":"cee894b3-570b-5a63-9114-dfdeb5c7458f","file":"index.js","mappings":";AAAA;;GAEG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC","names":[],"sourceRoot":"","sources":["../../src/index.ts"],"version":3}
1
+ {"debug_id":"4c9393bf-f417-5abb-8feb-4d080e0b6401","file":"index.js","mappings":";AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAiC,MAAM,8BAA8B,CAAC;AACrG,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC","names":[],"sourceRoot":"","sources":["../../src/index.ts"],"version":3}
@@ -1,12 +1,16 @@
1
+ /**
2
+ * @internal
3
+ * Compiler messages for `kmc analyze`
4
+ */
1
5
  export declare class AnalyzerMessages {
2
- static Fatal_UnexpectedException: (o: {
6
+ static readonly FATAL_UnexpectedException: number;
7
+ static readonly Fatal_UnexpectedException: (o: {
3
8
  e: any;
4
9
  }) => import("@keymanapp/common-types").CompilerEvent;
5
- static FATAL_UnexpectedException: number;
6
- static Info_ScanningFile: (o: {
10
+ static readonly INFO_ScanningFile: number;
11
+ static readonly Info_ScanningFile: (o: {
7
12
  type: string;
8
13
  name: string;
9
14
  }) => import("@keymanapp/common-types").CompilerEvent;
10
- static INFO_ScanningFile: number;
11
15
  }
12
16
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"AASA,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,yBAAyB,MAAM;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,qDAAqE;IACnH,MAAM,CAAC,yBAAyB,SAAqB;IAErD,MAAM,CAAC,iBAAiB,MAAM;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,MAAM,CAAA;KAAC,qDACnB;IACvC,MAAM,CAAC,iBAAiB,SAAoB;CAC7C"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"AASA;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,MAAM,CAAC,QAAQ,CAAC,yBAAyB,SAAqB;IAC9D,MAAM,CAAC,QAAQ,CAAC,yBAAyB,MAAM;QAAC,CAAC,EAAE,GAAG,CAAA;KAAC,qDAOrD;IAEF,MAAM,CAAC,QAAQ,CAAC,iBAAiB,SAAoB;IACrD,MAAM,CAAC,QAAQ,CAAC,iBAAiB,MAAM;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,MAAM,CAAA;KAAC,qDAIjE;CACH"}
@@ -1,17 +1,23 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="e868bb19-9ef5-5394-b123-dda6c26dfc8c")}catch(e){}}();
2
- import { CompilerErrorNamespace, CompilerErrorSeverity, CompilerMessageSpec as m } from "@keymanapp/common-types";
1
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5232c186-8f1d-5b98-80c2-069d92981b1a")}catch(e){}}();
2
+ import { CompilerErrorNamespace, CompilerErrorSeverity, CompilerMessageSpec as m, CompilerMessageDef as def, CompilerMessageSpecWithException } from "@keymanapp/common-types";
3
3
  const Namespace = CompilerErrorNamespace.Analyzer;
4
4
  const SevInfo = CompilerErrorSeverity.Info | Namespace;
5
5
  // const SevHint = CompilerErrorSeverity.Hint | Namespace;
6
6
  // const SevWarn = CompilerErrorSeverity.Warn | Namespace;
7
7
  // const SevError = CompilerErrorSeverity.Error | Namespace;
8
8
  const SevFatal = CompilerErrorSeverity.Fatal | Namespace;
9
+ /**
10
+ * @internal
11
+ * Compiler messages for `kmc analyze`
12
+ */
9
13
  export class AnalyzerMessages {
10
- static Fatal_UnexpectedException = (o) => m(this.FATAL_UnexpectedException, null, o.e ?? 'unknown error');
11
14
  static FATAL_UnexpectedException = SevFatal | 0x0001;
12
- static Info_ScanningFile = (o) => m(this.INFO_ScanningFile, `Scanning ${o.type} file ${o.name}`);
15
+ static Fatal_UnexpectedException = (o) => CompilerMessageSpecWithException(this.FATAL_UnexpectedException, null, o.e ?? 'unknown error', `Raised when an analysis components has an internal error. If you
16
+ experience this error, it should be reported to the Keyman team for
17
+ resolution via https://github.com/keymanapp/keyman/issues/new`);
13
18
  static INFO_ScanningFile = SevInfo | 0x0002;
19
+ static Info_ScanningFile = (o) => m(this.INFO_ScanningFile, `Scanning ${def(o.type)} file ${def(o.name)}`, `Informative message reporting on the current file being scanned`);
14
20
  }
15
21
  ;
16
- //# debugId=e868bb19-9ef5-5394-b123-dda6c26dfc8c
22
+ //# debugId=5232c186-8f1d-5b98-80c2-069d92981b1a
17
23
  //# sourceMappingURL=messages.js.map
@@ -1 +1 @@
1
- {"debug_id":"e868bb19-9ef5-5394-b123-dda6c26dfc8c","file":"messages.js","mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,mBAAmB,IAAI,CAAC,EAAE,MAAM,yBAAyB,CAAC;AAElH,MAAM,SAAS,GAAG,sBAAsB,CAAC,QAAQ,CAAC;AAClD,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC;AACvD,0DAA0D;AAC1D,0DAA0D;AAC1D,4DAA4D;AAC5D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,GAAG,SAAS,CAAC;AAEzD,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAC,yBAAyB,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC;IACnH,MAAM,CAAC,yBAAyB,GAAG,QAAQ,GAAG,MAAM,CAAC;IAErD,MAAM,CAAC,iBAAiB,GAAG,CAAC,CAA8B,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EACrF,YAAY,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC;;AAC7C,CAAC","names":[],"sourceRoot":"","sources":["../../src/messages.ts"],"version":3}
1
+ {"debug_id":"5232c186-8f1d-5b98-80c2-069d92981b1a","file":"messages.js","mappings":";AAAA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,mBAAmB,IAAI,CAAC,EAAE,kBAAkB,IAAI,GAAG,EAAE,gCAAgC,EAAE,MAAM,yBAAyB,CAAC;AAE/K,MAAM,SAAS,GAAG,sBAAsB,CAAC,QAAQ,CAAC;AAClD,MAAM,OAAO,GAAG,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC;AACvD,0DAA0D;AAC1D,0DAA0D;AAC1D,4DAA4D;AAC5D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,GAAG,SAAS,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,gBAAgB;IAC3B,MAAM,CAAU,yBAAyB,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9D,MAAM,CAAU,yBAAyB,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,gCAAgC,CAC1F,IAAI,CAAC,yBAAyB,EAC9B,IAAI,EACJ,CAAC,CAAC,CAAC,IAAI,eAAe,EACtB;;kEAE8D,CAC/D,CAAC;IAEF,MAAM,CAAU,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC;IACrD,MAAM,CAAU,iBAAiB,GAAG,CAAC,CAA8B,EAAE,EAAE,CAAC,CAAC,CACvE,IAAI,CAAC,iBAAiB,EACtB,YAAY,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAC7C,iEAAiE,CAClE,CAAC;;AACH,CAAC","names":[],"sourceRoot":"","sources":["../../src/messages.ts"],"version":3}
@@ -1,15 +1,52 @@
1
1
  import { CompilerCallbacks } from "@keymanapp/common-types";
2
+ /**
3
+ * @public
4
+ * Options for character analysis
5
+ */
2
6
  export interface AnalyzeOskCharacterUseOptions {
7
+ /**
8
+ * First character to use in PUA for remapping with &displayMap, defaults to
9
+ * U+F100
10
+ */
3
11
  puaBase?: number;
12
+ /**
13
+ * If true, strips U+25CC from the key cap before further analysis
14
+ */
4
15
  stripDottedCircle?: boolean;
16
+ /**
17
+ * If true, reports number of references to each character found in each
18
+ * source file
19
+ */
5
20
  includeCounts?: boolean;
6
21
  }
22
+ /**
23
+ * @public
24
+ * Analyze the characters used in On Screen Keyboard files (.kvks,
25
+ * .keyman-touch-layout) for use with `&displayMap`.
26
+ */
7
27
  export declare class AnalyzeOskCharacterUse {
8
28
  private callbacks;
9
29
  private _strings;
10
30
  private options;
11
31
  constructor(callbacks: CompilerCallbacks, options?: AnalyzeOskCharacterUseOptions);
32
+ /**
33
+ * Clears analysis data collected from previous calls to
34
+ * {@link AnalyzeOskCharacterUse.analyze}
35
+ */
12
36
  clear(): void;
37
+ /**
38
+ * Analyzes a single source file for Unicode character usage. Can parse .kmn,
39
+ * .kvks, .keyman-touch-layout file formats. Can be called multiple times to
40
+ * collect results from more than one file. Use
41
+ * {@link AnalyzeOskCharacterUse.getStrings} to retrieve results.
42
+ *
43
+ * Note: `analyze()` collects key cap data, so calling this for a .kmn file
44
+ * will retrieve the key caps from the .kvks and .keyman-touch-layout files
45
+ * that it references, rather than key cap data from the .kmn file itself.
46
+ *
47
+ * @param file - relative or absolute path to a Keyman source file
48
+ * @returns true if the file is successfully loaded and parsed
49
+ */
13
50
  analyze(file: string): Promise<boolean>;
14
51
  private analyzeKmnKeyboard;
15
52
  private addStrings;
@@ -17,11 +54,34 @@ export declare class AnalyzeOskCharacterUse {
17
54
  private scanVisualKeyboard;
18
55
  private scanTouchLayout;
19
56
  private prepareResults;
57
+ /**
58
+ * Returns the collected results from earlier calls to
59
+ * {@link AnalyzeOskCharacterUse.analyze}. This generates a mapping from a key
60
+ * cap (one or more characters) to a PUA code, for use with `&displayMap`.
61
+ *
62
+ * Three output formats are supported:
63
+ *
64
+ * - .txt: tab-separated string format, with three columns: PUA, Key Cap, and
65
+ * plain string. The PUA and Key Cap columns are formatted as Unicode Scalar
66
+ * Values, e.g. U+0061, and the plain string is the original key cap string.
67
+ *
68
+ * - .md: formatted for documentation purposes. Generates a Markdown table
69
+ * (GFM) with PUA, Key Cap, and plain string. The PUA and Key Cap columns
70
+ * are formatted as Unicode Scalar Values, e.g. U+0061, and the plain string
71
+ * is the original key cap string.
72
+ *
73
+ * - .json: returns the final aggregated data as an array of strings, which
74
+ * can be joined to form a JSON blob of an object with a single member,
75
+ * `map`, which is an array of {@link Osk.StringResult} objects.
76
+ *
77
+ * @param format - file format to return - can be '.txt', '.md', or '.json'
78
+ * @returns an array of strings, formatted according to the `format`
79
+ * parameter.
80
+ */
20
81
  getStrings(format?: '.txt' | '.md' | '.json'): string[];
21
82
  private static getStringsAsText;
22
83
  private static getStringsAsMarkdown;
23
84
  private static getStringsAsJson;
24
- private static escapeMarkdownChar;
25
85
  private static stringToUnicodeSequence;
26
86
  }
27
87
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/osk-character-use/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAsF,MAAM,yBAAyB,CAAC;AAQhJ,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAQD,qBAAa,sBAAsB;IAIrB,OAAO,CAAC,SAAS;IAH7B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,OAAO,CAAgC;gBAE3B,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,6BAA6B;IAIlF,KAAK;IAQC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAwCtC,kBAAkB;IAuBhC,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,kBAAkB;IAyB1B,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,cAAc;IAef,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAC,KAAK,GAAC,OAAO,GAAG,MAAM,EAAE;IAc1D,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAU/B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAYnC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAM/B,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAcjC,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAUvC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/osk-character-use/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAiF,MAAM,yBAAyB,CAAC;AAS3I;;;GAGG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;OAGG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAQD;;;;GAIG;AACH,qBAAa,sBAAsB;IAIrB,OAAO,CAAC,SAAS;IAH7B,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,OAAO,CAAgC;gBAE3B,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,6BAA6B;IAIzF;;;OAGG;IACI,KAAK;IAQZ;;;;;;;;;;;;OAYG;IACU,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAwCtC,kBAAkB;IAuBhC,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,kBAAkB;IAyB1B,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,cAAc;IAetB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACI,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAC,KAAK,GAAC,OAAO,GAAG,MAAM,EAAE;IAc1D,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAU/B,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAYnC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAM/B,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAUvC"}
@@ -1,6 +1,7 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4f60f810-4a50-5fab-bff2-51f393970336")}catch(e){}}();
1
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="70134771-c873-591e-8319-0916e19ac20d")}catch(e){}}();
2
2
  import { KeymanFileTypes, KvksFileReader, TouchLayoutFileReader } from "@keymanapp/common-types";
3
3
  import { CompilerMessages } from '@keymanapp/kmc-kmn';
4
+ import { escapeMarkdownChar } from '@keymanapp/developer-utils';
4
5
  import { getOskFromKmnFile } from "../util/get-osk-from-kmn-file.js";
5
6
  import { AnalyzerMessages } from "../messages.js";
6
7
  const defaultOptions = {
@@ -8,6 +9,11 @@ const defaultOptions = {
8
9
  stripDottedCircle: false,
9
10
  includeCounts: false,
10
11
  };
12
+ /**
13
+ * @public
14
+ * Analyze the characters used in On Screen Keyboard files (.kvks,
15
+ * .keyman-touch-layout) for use with `&displayMap`.
16
+ */
11
17
  export class AnalyzeOskCharacterUse {
12
18
  callbacks;
13
19
  _strings = {};
@@ -16,12 +22,29 @@ export class AnalyzeOskCharacterUse {
16
22
  this.callbacks = callbacks;
17
23
  this.options = { ...defaultOptions, ...options };
18
24
  }
25
+ /**
26
+ * Clears analysis data collected from previous calls to
27
+ * {@link AnalyzeOskCharacterUse.analyze}
28
+ */
19
29
  clear() {
20
30
  this._strings = {};
21
31
  }
22
32
  //
23
33
  // Analyze a single file
24
34
  //
35
+ /**
36
+ * Analyzes a single source file for Unicode character usage. Can parse .kmn,
37
+ * .kvks, .keyman-touch-layout file formats. Can be called multiple times to
38
+ * collect results from more than one file. Use
39
+ * {@link AnalyzeOskCharacterUse.getStrings} to retrieve results.
40
+ *
41
+ * Note: `analyze()` collects key cap data, so calling this for a .kmn file
42
+ * will retrieve the key caps from the .kvks and .keyman-touch-layout files
43
+ * that it references, rather than key cap data from the .kmn file itself.
44
+ *
45
+ * @param file - relative or absolute path to a Keyman source file
46
+ * @returns true if the file is successfully loaded and parsed
47
+ */
25
48
  async analyze(file) {
26
49
  switch (KeymanFileTypes.sourceTypeFromFilename(file)) {
27
50
  case ".kvks" /* KeymanFileTypes.Source.VisualKeyboard */: {
@@ -184,6 +207,30 @@ export class AnalyzeOskCharacterUse {
184
207
  }
185
208
  return result;
186
209
  }
210
+ /**
211
+ * Returns the collected results from earlier calls to
212
+ * {@link AnalyzeOskCharacterUse.analyze}. This generates a mapping from a key
213
+ * cap (one or more characters) to a PUA code, for use with `&displayMap`.
214
+ *
215
+ * Three output formats are supported:
216
+ *
217
+ * - .txt: tab-separated string format, with three columns: PUA, Key Cap, and
218
+ * plain string. The PUA and Key Cap columns are formatted as Unicode Scalar
219
+ * Values, e.g. U+0061, and the plain string is the original key cap string.
220
+ *
221
+ * - .md: formatted for documentation purposes. Generates a Markdown table
222
+ * (GFM) with PUA, Key Cap, and plain string. The PUA and Key Cap columns
223
+ * are formatted as Unicode Scalar Values, e.g. U+0061, and the plain string
224
+ * is the original key cap string.
225
+ *
226
+ * - .json: returns the final aggregated data as an array of strings, which
227
+ * can be joined to form a JSON blob of an object with a single member,
228
+ * `map`, which is an array of {@link Osk.StringResult} objects.
229
+ *
230
+ * @param format - file format to return - can be '.txt', '.md', or '.json'
231
+ * @returns an array of strings, formatted according to the `format`
232
+ * parameter.
233
+ */
187
234
  getStrings(format) {
188
235
  const final = this.prepareResults(this._strings);
189
236
  switch (format) {
@@ -212,7 +259,7 @@ export class AnalyzeOskCharacterUse {
212
259
  lines.push('-------|-------------|---------');
213
260
  for (let s of strings) {
214
261
  const ux = this.stringToUnicodeSequence(s.str);
215
- lines.push('U+' + s.pua + ' | ' + ux + ' | ' + this.escapeMarkdownChar(s.str));
262
+ lines.push('U+' + s.pua + ' | ' + ux + ' | ' + escapeMarkdownChar(s.str, true));
216
263
  }
217
264
  return lines;
218
265
  }
@@ -221,19 +268,6 @@ export class AnalyzeOskCharacterUse {
221
268
  let map = { "map": strings };
222
269
  return JSON.stringify(map, null, 2).split('\n');
223
270
  }
224
- static escapeMarkdownChar(s) {
225
- // note: could replace with a common lib but too much baggage to be worth it for now
226
- // commonmark 2.4: all punct can be escaped
227
- // const punct = '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~';
228
- s = s.replace(/[!"#$%&'()*+,-./:;<=>?@\[\\\]^_`{|}~]/g, '\\$0');
229
- // replace whitepsace
230
- s = s.replace(/[\n]/g, '\\n');
231
- s = s.replace(/[\r]/g, '\\r');
232
- s = s.replace(/[\t]/g, '\\t');
233
- s = s.replace(/ /g, '&#x20;');
234
- s = s.replace(/\u00a0/g, '&#xa0;');
235
- return s;
236
- }
237
271
  static stringToUnicodeSequence(s, addUPlusPrefix = true) {
238
272
  let result = [];
239
273
  for (let ch of s) {
@@ -245,5 +279,5 @@ export class AnalyzeOskCharacterUse {
245
279
  return result.join(' ');
246
280
  }
247
281
  }
248
- //# debugId=4f60f810-4a50-5fab-bff2-51f393970336
282
+ //# debugId=70134771-c873-591e-8319-0916e19ac20d
249
283
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"debug_id":"4f60f810-4a50-5fab-bff2-51f393970336","file":"index.js","mappings":"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","names":[],"sourceRoot":"","sources":["../../../src/osk-character-use/index.ts"],"version":3}
1
+ {"debug_id":"70134771-c873-591e-8319-0916e19ac20d","file":"index.js","mappings":"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","names":[],"sourceRoot":"","sources":["../../../src/osk-character-use/index.ts"],"version":3}
@@ -1,10 +1,36 @@
1
- import { CompilerCallbacks, Osk } from "@keymanapp/common-types";
1
+ import { CompilerCallbacks } from "@keymanapp/common-types";
2
+ import { Osk } from '@keymanapp/developer-utils';
3
+ /**
4
+ * @public
5
+ * Rewrite On Screen Keyboard files (.kvks, .keyman-touch-layout) with PUA
6
+ * codepoints, based on analysis provided by {@link AnalyzeOskCharacterUse}
7
+ * class.
8
+ */
2
9
  export declare class AnalyzeOskRewritePua {
3
10
  private callbacks;
4
11
  private _data;
5
12
  constructor(callbacks: CompilerCallbacks);
13
+ /**
14
+ * Clears data collected from previous calls to
15
+ * {@link AnalyzeOskRewritePua.analyze}
16
+ */
6
17
  clear(): void;
18
+ /**
19
+ * Analyze a keyboard file or files, and provide a remapped output. Accepts a
20
+ * .kmn, .kvks, .keyman-touch-layout file formats. For .kmn, will rewrite
21
+ * associated On Screen Keyboard file formats. Can be called multiple times to
22
+ * rewrite multiple files. Use the {@link AnalyzeOskRewritePua.data} property
23
+ * to retrieve the output file content for writing. This does not modify the
24
+ * source file.
25
+ * @param file - relative or absolute path to a Keyman source file
26
+ * @param mapping - OSK keycap map provided by {@link AnalyzeOskCharacterUse}
27
+ * @returns true if the file is successfully loaded and rewritten
28
+ */
7
29
  analyze(file: string, mapping: Osk.StringResult[]): Promise<boolean>;
30
+ /**
31
+ * Returns the file data for OSK files rewritten with PUA characters, for use
32
+ * with `&displayMap`.
33
+ */
8
34
  get data(): {
9
35
  [index: string]: Uint8Array;
10
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/osk-rewrite-pua/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA6D,GAAG,EAAgD,MAAM,yBAAyB,CAAC;AAK1K,qBAAa,oBAAoB;IAGnB,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,KAAK,CAAoC;gBAE7B,SAAS,EAAE,iBAAiB;IAGzC,KAAK;IAQC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCjF,IAAW,IAAI;;MAEd;YAEa,kBAAkB;IAqBhC,OAAO,CAAC,qBAAqB;IA6B7B,OAAO,CAAC,kBAAkB;CAe3B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/osk-rewrite-pua/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAA2G,MAAM,yBAAyB,CAAC;AACrK,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AAKjD;;;;;GAKG;AACH,qBAAa,oBAAoB;IAGnB,OAAO,CAAC,SAAS;IAF7B,OAAO,CAAC,KAAK,CAAoC;gBAE7B,SAAS,EAAE,iBAAiB;IAGhD;;;OAGG;IACI,KAAK;IAQZ;;;;;;;;;;OAUG;IACU,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,YAAY,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCjF;;;OAGG;IACH,IAAW,IAAI;;MAEd;YAEa,kBAAkB;IAqBhC,OAAO,CAAC,qBAAqB;IA6B7B,OAAO,CAAC,kBAAkB;CAe3B"}
@@ -1,20 +1,42 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="ed8f36e3-17bc-57b1-9366-311992323cab")}catch(e){}}();
2
- import { KeymanFileTypes, KvksFileReader, KvksFileWriter, Osk, TouchLayoutFileReader, TouchLayoutFileWriter } from "@keymanapp/common-types";
1
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="7d1eb705-f9fa-5bdd-b1a8-1d8c6b425ca0")}catch(e){}}();
2
+ import { KeymanFileTypes, KvksFileReader, KvksFileWriter, TouchLayoutFileReader, TouchLayoutFileWriter } from "@keymanapp/common-types";
3
+ import { Osk } from '@keymanapp/developer-utils';
3
4
  import { CompilerMessages } from '@keymanapp/kmc-kmn';
4
5
  import { getOskFromKmnFile } from "../util/get-osk-from-kmn-file.js";
5
6
  import { AnalyzerMessages } from "../messages.js";
7
+ /**
8
+ * @public
9
+ * Rewrite On Screen Keyboard files (.kvks, .keyman-touch-layout) with PUA
10
+ * codepoints, based on analysis provided by {@link AnalyzeOskCharacterUse}
11
+ * class.
12
+ */
6
13
  export class AnalyzeOskRewritePua {
7
14
  callbacks;
8
15
  _data = {};
9
16
  constructor(callbacks) {
10
17
  this.callbacks = callbacks;
11
18
  }
19
+ /**
20
+ * Clears data collected from previous calls to
21
+ * {@link AnalyzeOskRewritePua.analyze}
22
+ */
12
23
  clear() {
13
24
  this._data = {};
14
25
  }
15
26
  //
16
27
  // Analyze a single file
17
28
  //
29
+ /**
30
+ * Analyze a keyboard file or files, and provide a remapped output. Accepts a
31
+ * .kmn, .kvks, .keyman-touch-layout file formats. For .kmn, will rewrite
32
+ * associated On Screen Keyboard file formats. Can be called multiple times to
33
+ * rewrite multiple files. Use the {@link AnalyzeOskRewritePua.data} property
34
+ * to retrieve the output file content for writing. This does not modify the
35
+ * source file.
36
+ * @param file - relative or absolute path to a Keyman source file
37
+ * @param mapping - OSK keycap map provided by {@link AnalyzeOskCharacterUse}
38
+ * @returns true if the file is successfully loaded and rewritten
39
+ */
18
40
  async analyze(file, mapping) {
19
41
  let map = Osk.parseMapping(mapping);
20
42
  switch (KeymanFileTypes.sourceTypeFromFilename(file)) {
@@ -45,6 +67,10 @@ export class AnalyzeOskRewritePua {
45
67
  }
46
68
  return true;
47
69
  }
70
+ /**
71
+ * Returns the file data for OSK files rewritten with PUA characters, for use
72
+ * with `&displayMap`.
73
+ */
48
74
  get data() {
49
75
  return this._data;
50
76
  }
@@ -102,5 +128,5 @@ export class AnalyzeOskRewritePua {
102
128
  return data;
103
129
  }
104
130
  }
105
- //# debugId=ed8f36e3-17bc-57b1-9366-311992323cab
131
+ //# debugId=7d1eb705-f9fa-5bdd-b1a8-1d8c6b425ca0
106
132
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"debug_id":"ed8f36e3-17bc-57b1-9366-311992323cab","file":"index.js","mappings":"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","names":[],"sourceRoot":"","sources":["../../../src/osk-rewrite-pua/index.ts"],"version":3}
1
+ {"debug_id":"7d1eb705-f9fa-5bdd-b1a8-1d8c6b425ca0","file":"index.js","mappings":";AAAA,OAAO,EAAqB,eAAe,EAAY,cAAc,EAAE,cAAc,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AACrK,OAAO,EAAE,GAAG,EAAE,MAAM,4BAA4B,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;;;GAKG;AACH,MAAM,OAAO,oBAAoB;IAGX;IAFZ,KAAK,GAAiC,EAAE,CAAC;IAEjD,YAAoB,SAA4B;QAA5B,cAAS,GAAT,SAAS,CAAmB;IAChD,CAAC;IAED;;;OAGG;IACI,KAAK;QACV,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,EAAE;IACF,wBAAwB;IACxB,EAAE;IAEF;;;;;;;;;;OAUG;IACI,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,OAA2B;QAC5D,IAAI,GAAG,GAAe,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAEhD,QAAO,eAAe,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE;YACnD;gBACE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACzD,MAAM;YACR;gBACE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACtD,MAAM;YACR;gBACE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBACjE,MAAM;YACR;gBACE,uEAAuE;gBACvE,oEAAoE;gBACpE,gBAAgB;gBAChB,IAAG,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;oBAC5C,OAAO,KAAK,CAAC;iBACd;gBACD,MAAM;YACR;gBACE,8CAA8C;gBAC9C,iEAAiE;gBACjE,MAAM;YACR,QAAQ;YACN,6EAA6E;YAC7E,cAAc;SACjB;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,GAAe;QAChE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAC,iBAAiB,EAAE,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;QAE1G,IAAI,GAAG,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE5D,IAAG,GAAG,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;SAClF;QACD,IAAG,GAAG,CAAC,mBAAmB,EAAE;YAC1B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;SAC7F;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAGD,EAAE;IACF,mCAAmC;IACnC,EAAE;IAGM,qBAAqB,CAAC,QAAgB,EAAE,GAAe;QAC7D,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAC,iBAAiB,EAAE,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACpC,IAAI,MAAwB,CAAC;QAC7B,IAAI;YACF,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;SACzD;QAAC,OAAM,CAAC,EAAE;YACT,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,EAAC,QAAQ,EAAE,CAAC,EAAC,CAAC,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC;SACb;QACD,IAAI,WAAW,GAAa,EAAE,CAAC;QAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACjD,IAAG,CAAC,EAAE,EAAE;YACN,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,EAAC,QAAQ,EAAE,CAAC,EAAC,IAAI,EAAC,CAAC,CAAC,CAAC;YACzF,OAAO,IAAI,CAAC;SACb;QACD,MAAM,KAAK,GAAG,GAAG,CAAC,mBAAmB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC/C,IAAG,CAAC,KAAK,EAAE;YACT,OAAO,IAAI,CAAC;SACb;QACD,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC9B,6DAA6D;QAC7D,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAIO,kBAAkB,CAAC,QAAgB,EAAE,GAAe;QAC1D,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAAC,IAAI,EAAC,cAAc,EAAE,IAAI,EAAC,QAAQ,EAAC,CAAC,CAAC,CAAC;QACvG,MAAM,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE9D,IAAI,KAAK,GAAG,GAAG,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAE9C,IAAG,CAAC,KAAK,EAAE;YACT,OAAO,IAAI,CAAC;SACb;QAED,MAAM,MAAM,GAAG,IAAI,qBAAqB,CAAC,EAAC,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;CACF","names":[],"sourceRoot":"","sources":["../../../src/osk-rewrite-pua/index.ts"],"version":3}
package/package.json CHANGED
@@ -23,11 +23,12 @@
23
23
  "build/src/"
24
24
  ],
25
25
  "dependencies": {
26
- "@keymanapp/common-types": "18.0.8-alpha",
27
- "@keymanapp/kmc-kmn": "18.0.8-alpha"
26
+ "@keymanapp/common-types": "18.0.9-alpha",
27
+ "@keymanapp/developer-utils": "18.0.9-alpha",
28
+ "@keymanapp/kmc-kmn": "18.0.9-alpha"
28
29
  },
29
30
  "devDependencies": {
30
- "@keymanapp/resources-gosh": "18.0.8-alpha",
31
+ "@keymanapp/resources-gosh": "18.0.9-alpha",
31
32
  "@types/chai": "^4.1.7",
32
33
  "@types/mocha": "^5.2.7",
33
34
  "@types/node": "^20.4.1",
@@ -42,5 +43,5 @@
42
43
  "type": "git",
43
44
  "url": "git+https://github.com/keymanapp/keyman.git"
44
45
  },
45
- "version": "18.0.8-alpha"
46
+ "version": "18.0.9-alpha"
46
47
  }