@promptctl/rich-js 0.26.0 → 0.28.0
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 +1 -0
- package/THIRD-PARTY-NOTICES +42 -0
- package/dist/core/animation.d.ts +52 -15
- package/dist/core/animation.js +82 -37
- package/dist/core/ansi.d.ts +15 -8
- package/dist/core/ansi.js +106 -28
- package/dist/core/bidi-data.d.ts +14 -0
- package/dist/core/bidi-data.js +385 -0
- package/dist/core/bidi.d.ts +89 -0
- package/dist/core/bidi.js +615 -0
- package/dist/core/box.d.ts +9 -1
- package/dist/core/box.js +11 -0
- package/dist/core/cell-widths.d.ts +3 -2
- package/dist/core/cell-widths.js +93 -93
- package/dist/core/cells.d.ts +20 -0
- package/dist/core/cells.js +93 -5
- package/dist/core/color.d.ts +26 -18
- package/dist/core/color.js +37 -34
- package/dist/core/console.d.ts +26 -1
- package/dist/core/console.js +26 -6
- package/dist/core/control-codes.d.ts +61 -0
- package/dist/core/control-codes.js +157 -0
- package/dist/core/easing.js +6 -1
- package/dist/core/env.d.ts +6 -0
- package/dist/core/env.js +9 -1
- package/dist/core/export-html.js +4 -3
- package/dist/core/export-lines.d.ts +2 -0
- package/dist/core/export-lines.js +7 -3
- package/dist/core/export-svg.js +6 -5
- package/dist/core/json.js +9 -2
- package/dist/core/markup.js +4 -3
- package/dist/core/oklch.d.ts +2 -0
- package/dist/core/oklch.js +3 -3
- package/dist/core/orient.d.ts +68 -0
- package/dist/core/orient.js +224 -0
- package/dist/core/osc8.d.ts +12 -5
- package/dist/core/osc8.js +14 -7
- package/dist/core/pretty.js +22 -18
- package/dist/core/protocol.d.ts +53 -22
- package/dist/core/protocol.js +14 -6
- package/dist/core/render.d.ts +8 -3
- package/dist/core/render.js +19 -5
- package/dist/core/seal.d.ts +26 -0
- package/dist/core/seal.js +75 -0
- package/dist/core/segment.d.ts +9 -1
- package/dist/core/segment.js +11 -1
- package/dist/core/style.d.ts +29 -1
- package/dist/core/style.js +41 -5
- package/dist/core/text-order.d.ts +51 -0
- package/dist/core/text-order.js +50 -0
- package/dist/core/text.d.ts +10 -0
- package/dist/core/text.js +133 -87
- package/dist/core/timeline.js +6 -6
- package/dist/core/view.d.ts +23 -9
- package/dist/core/view.js +37 -12
- package/dist/core/wrap.d.ts +24 -6
- package/dist/core/wrap.js +82 -16
- package/dist/host/app.d.ts +48 -7
- package/dist/host/app.js +116 -11
- package/dist/host/index.d.ts +3 -2
- package/dist/host/index.js +1 -0
- package/dist/host/input.d.ts +35 -2
- package/dist/host/input.js +88 -4
- package/dist/host/terminal-colors.d.ts +18 -0
- package/dist/host/terminal-colors.js +46 -0
- package/dist/host/terminal-host.d.ts +2 -1
- package/dist/index.d.ts +10 -8
- package/dist/index.js +2 -2
- package/dist/renderables/change.d.ts +1 -3
- package/dist/renderables/change.js +4 -6
- package/dist/renderables/effect.d.ts +61 -60
- package/dist/renderables/effect.js +91 -81
- package/dist/renderables/effects.d.ts +37 -8
- package/dist/renderables/effects.js +193 -55
- package/dist/renderables/frames.d.ts +1 -10
- package/dist/renderables/frames.js +1 -16
- package/dist/renderables/glyph-effect.d.ts +12 -13
- package/dist/renderables/glyph-effect.js +34 -32
- package/dist/renderables/glyph-effects.d.ts +27 -8
- package/dist/renderables/glyph-effects.js +75 -7
- package/dist/renderables/lifecycle.d.ts +40 -32
- package/dist/renderables/lifecycle.js +87 -48
- package/dist/renderables/live.d.ts +3 -3
- package/dist/renderables/live.js +4 -4
- package/dist/renderables/markdown.js +4 -2
- package/dist/renderables/panel.js +6 -4
- package/dist/renderables/progress.d.ts +11 -4
- package/dist/renderables/progress.js +29 -17
- package/dist/renderables/progressBar.d.ts +3 -3
- package/dist/renderables/progressBar.js +16 -13
- package/dist/renderables/syntax.js +7 -2
- package/dist/renderables/table.js +2 -1
- package/dist/template-bindings/animation-funcs.d.ts +49 -18
- package/dist/template-bindings/animation-funcs.js +115 -32
- package/dist/template-bindings/index.d.ts +7 -5
- package/dist/template-bindings/index.js +8 -5
- package/dist/template-bindings/palette-funcs.d.ts +1 -1
- package/dist/template-bindings/palette-funcs.js +1 -1
- package/dist/themes/buildPalette.d.ts +15 -39
- package/dist/themes/buildPalette.js +196 -67
- package/dist/themes/colorMath.d.ts +10 -4
- package/dist/themes/colorMath.js +33 -1
- package/dist/themes/data/index.js +1 -4
- package/dist/themes/data/textual-ansi.js +0 -143
- package/dist/themes/data/types.d.ts +3 -1
- package/dist/themes/palette.d.ts +22 -6
- package/dist/themes/palette.js +13 -21
- package/dist/themes/ramp.d.ts +1 -1
- package/dist/themes/ramp.js +1 -1
- package/dist/themes/registry.d.ts +7 -10
- package/dist/themes/registry.js +9 -30
- package/dist/themes/terminalThemes.d.ts +4 -10
- package/dist/themes/terminalThemes.js +31 -46
- package/dist/themes/transpose.d.ts +5 -10
- package/dist/themes/transpose.js +13 -24
- package/dist/widgets/button.d.ts +1 -1
- package/dist/widgets/button.js +6 -6
- package/dist/widgets/checkbox.js +4 -4
- package/dist/widgets/dropdown.d.ts +1 -1
- package/dist/widgets/dropdown.js +7 -5
- package/dist/widgets/event-router.js +2 -2
- package/dist/widgets/ink.d.ts +5 -4
- package/dist/widgets/ink.js +6 -9
- package/dist/widgets/text-input.d.ts +1 -1
- package/dist/widgets/text-input.js +41 -32
- package/dist/widgets/themed-widget.js +3 -3
- package/dist/widgets/toggle.d.ts +1 -1
- package/dist/widgets/toggle.js +5 -5
- package/dist/widgets/types.d.ts +2 -2
- package/dist/widgets/widget-app.d.ts +3 -3
- package/dist/widgets/widget-app.js +5 -5
- package/package.json +5 -4
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Unicode properties UAX #9 and Arabic joining read. Generated by
|
|
3
|
+
* scripts/bidi-data.py from the Unicode 17.0.0 Character Database; regenerate
|
|
4
|
+
* rather than edit.
|
|
5
|
+
*/
|
|
6
|
+
/** The bidi classes other than L, in the order `CLASS_RANGES` numbers them. */
|
|
7
|
+
export declare const BIDI_CLASSES: readonly ["R", "AL", "EN", "ES", "ET", "AN", "CS", "NSM", "BN", "B", "S", "WS", "ON", "LRE", "LRO", "RLE", "RLO", "PDF", "LRI", "RLI", "FSI", "PDI"];
|
|
8
|
+
/** The joining types other than U, in the order `JOINING_RANGES` numbers them. */
|
|
9
|
+
export declare const JOINING_TYPES: readonly ["R", "L", "D", "C", "T"];
|
|
10
|
+
export declare const CLASS_RANGES: readonly (readonly [number, number, number])[];
|
|
11
|
+
export declare const JOINING_RANGES: readonly (readonly [number, number, number])[];
|
|
12
|
+
export declare const BRACKET_PAIRS: readonly (readonly [number, number])[];
|
|
13
|
+
export declare const MIRRORS: readonly (readonly [number, number])[];
|
|
14
|
+
export declare const PRESENTATION_FORMS: readonly (readonly [number, number, number, number, number])[];
|
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Unicode properties UAX #9 and Arabic joining read. Generated by
|
|
3
|
+
* scripts/bidi-data.py from the Unicode 17.0.0 Character Database; regenerate
|
|
4
|
+
* rather than edit.
|
|
5
|
+
*/
|
|
6
|
+
/** The bidi classes other than L, in the order `CLASS_RANGES` numbers them. */
|
|
7
|
+
export const BIDI_CLASSES = ['R', 'AL', 'EN', 'ES', 'ET', 'AN', 'CS', 'NSM', 'BN', 'B', 'S', 'WS', 'ON', 'LRE', 'LRO', 'RLE', 'RLO', 'PDF', 'LRI', 'RLI', 'FSI', 'PDI'];
|
|
8
|
+
/** The joining types other than U, in the order `JOINING_RANGES` numbers them. */
|
|
9
|
+
export const JOINING_TYPES = ['R', 'L', 'D', 'C', 'T'];
|
|
10
|
+
// Every range of code points not L, as [first, last, index into BIDI_CLASSES]: ascending, disjoint.
|
|
11
|
+
export const CLASS_RANGES = [
|
|
12
|
+
[0x0, 0x8, 8], [0x9, 0x9, 10], [0xa, 0xa, 9], [0xb, 0xb, 10], [0xc, 0xc, 11], [0xd, 0xd, 9], [0xe, 0x1b, 8],
|
|
13
|
+
[0x1c, 0x1e, 9], [0x1f, 0x1f, 10], [0x20, 0x20, 11], [0x21, 0x22, 12], [0x23, 0x25, 4], [0x26, 0x2a, 12],
|
|
14
|
+
[0x2b, 0x2b, 3], [0x2c, 0x2c, 6], [0x2d, 0x2d, 3], [0x2e, 0x2f, 6], [0x30, 0x39, 2], [0x3a, 0x3a, 6],
|
|
15
|
+
[0x3b, 0x40, 12], [0x5b, 0x60, 12], [0x7b, 0x7e, 12], [0x7f, 0x84, 8], [0x85, 0x85, 9], [0x86, 0x9f, 8],
|
|
16
|
+
[0xa0, 0xa0, 6], [0xa1, 0xa1, 12], [0xa2, 0xa5, 4], [0xa6, 0xa9, 12], [0xab, 0xac, 12], [0xad, 0xad, 8],
|
|
17
|
+
[0xae, 0xaf, 12], [0xb0, 0xb1, 4], [0xb2, 0xb3, 2], [0xb4, 0xb4, 12], [0xb6, 0xb8, 12], [0xb9, 0xb9, 2],
|
|
18
|
+
[0xbb, 0xbf, 12], [0xd7, 0xd7, 12], [0xf7, 0xf7, 12], [0x2b9, 0x2ba, 12], [0x2c2, 0x2cf, 12], [0x2d2, 0x2df, 12],
|
|
19
|
+
[0x2e5, 0x2ed, 12], [0x2ef, 0x2ff, 12], [0x300, 0x36f, 7], [0x374, 0x375, 12], [0x37e, 0x37e, 12],
|
|
20
|
+
[0x384, 0x385, 12], [0x387, 0x387, 12], [0x3f6, 0x3f6, 12], [0x483, 0x489, 7], [0x58a, 0x58a, 12],
|
|
21
|
+
[0x58d, 0x58e, 12], [0x58f, 0x58f, 4], [0x590, 0x590, 0], [0x591, 0x5bd, 7], [0x5be, 0x5be, 0], [0x5bf, 0x5bf, 7],
|
|
22
|
+
[0x5c0, 0x5c0, 0], [0x5c1, 0x5c2, 7], [0x5c3, 0x5c3, 0], [0x5c4, 0x5c5, 7], [0x5c6, 0x5c6, 0], [0x5c7, 0x5c7, 7],
|
|
23
|
+
[0x5c8, 0x5ff, 0], [0x600, 0x605, 5], [0x606, 0x607, 12], [0x608, 0x608, 1], [0x609, 0x60a, 4], [0x60b, 0x60b, 1],
|
|
24
|
+
[0x60c, 0x60c, 6], [0x60d, 0x60d, 1], [0x60e, 0x60f, 12], [0x610, 0x61a, 7], [0x61b, 0x64a, 1], [0x64b, 0x65f, 7],
|
|
25
|
+
[0x660, 0x669, 5], [0x66a, 0x66a, 4], [0x66b, 0x66c, 5], [0x66d, 0x66f, 1], [0x670, 0x670, 7], [0x671, 0x6d5, 1],
|
|
26
|
+
[0x6d6, 0x6dc, 7], [0x6dd, 0x6dd, 5], [0x6de, 0x6de, 12], [0x6df, 0x6e4, 7], [0x6e5, 0x6e6, 1], [0x6e7, 0x6e8, 7],
|
|
27
|
+
[0x6e9, 0x6e9, 12], [0x6ea, 0x6ed, 7], [0x6ee, 0x6ef, 1], [0x6f0, 0x6f9, 2], [0x6fa, 0x710, 1], [0x711, 0x711, 7],
|
|
28
|
+
[0x712, 0x72f, 1], [0x730, 0x74a, 7], [0x74b, 0x7a5, 1], [0x7a6, 0x7b0, 7], [0x7b1, 0x7bf, 1], [0x7c0, 0x7ea, 0],
|
|
29
|
+
[0x7eb, 0x7f3, 7], [0x7f4, 0x7f5, 0], [0x7f6, 0x7f9, 12], [0x7fa, 0x7fc, 0], [0x7fd, 0x7fd, 7], [0x7fe, 0x815, 0],
|
|
30
|
+
[0x816, 0x819, 7], [0x81a, 0x81a, 0], [0x81b, 0x823, 7], [0x824, 0x824, 0], [0x825, 0x827, 7], [0x828, 0x828, 0],
|
|
31
|
+
[0x829, 0x82d, 7], [0x82e, 0x858, 0], [0x859, 0x85b, 7], [0x85c, 0x85f, 0], [0x860, 0x88f, 1], [0x890, 0x891, 5],
|
|
32
|
+
[0x892, 0x896, 1], [0x897, 0x89f, 7], [0x8a0, 0x8c9, 1], [0x8ca, 0x8e1, 7], [0x8e2, 0x8e2, 5], [0x8e3, 0x902, 7],
|
|
33
|
+
[0x93a, 0x93a, 7], [0x93c, 0x93c, 7], [0x941, 0x948, 7], [0x94d, 0x94d, 7], [0x951, 0x957, 7], [0x962, 0x963, 7],
|
|
34
|
+
[0x981, 0x981, 7], [0x9bc, 0x9bc, 7], [0x9c1, 0x9c4, 7], [0x9cd, 0x9cd, 7], [0x9e2, 0x9e3, 7], [0x9f2, 0x9f3, 4],
|
|
35
|
+
[0x9fb, 0x9fb, 4], [0x9fe, 0x9fe, 7], [0xa01, 0xa02, 7], [0xa3c, 0xa3c, 7], [0xa41, 0xa42, 7], [0xa47, 0xa48, 7],
|
|
36
|
+
[0xa4b, 0xa4d, 7], [0xa51, 0xa51, 7], [0xa70, 0xa71, 7], [0xa75, 0xa75, 7], [0xa81, 0xa82, 7], [0xabc, 0xabc, 7],
|
|
37
|
+
[0xac1, 0xac5, 7], [0xac7, 0xac8, 7], [0xacd, 0xacd, 7], [0xae2, 0xae3, 7], [0xaf1, 0xaf1, 4], [0xafa, 0xaff, 7],
|
|
38
|
+
[0xb01, 0xb01, 7], [0xb3c, 0xb3c, 7], [0xb3f, 0xb3f, 7], [0xb41, 0xb44, 7], [0xb4d, 0xb4d, 7], [0xb55, 0xb56, 7],
|
|
39
|
+
[0xb62, 0xb63, 7], [0xb82, 0xb82, 7], [0xbc0, 0xbc0, 7], [0xbcd, 0xbcd, 7], [0xbf3, 0xbf8, 12], [0xbf9, 0xbf9, 4],
|
|
40
|
+
[0xbfa, 0xbfa, 12], [0xc00, 0xc00, 7], [0xc04, 0xc04, 7], [0xc3c, 0xc3c, 7], [0xc3e, 0xc40, 7], [0xc46, 0xc48, 7],
|
|
41
|
+
[0xc4a, 0xc4d, 7], [0xc55, 0xc56, 7], [0xc62, 0xc63, 7], [0xc78, 0xc7e, 12], [0xc81, 0xc81, 7], [0xcbc, 0xcbc, 7],
|
|
42
|
+
[0xccc, 0xccd, 7], [0xce2, 0xce3, 7], [0xd00, 0xd01, 7], [0xd3b, 0xd3c, 7], [0xd41, 0xd44, 7], [0xd4d, 0xd4d, 7],
|
|
43
|
+
[0xd62, 0xd63, 7], [0xd81, 0xd81, 7], [0xdca, 0xdca, 7], [0xdd2, 0xdd4, 7], [0xdd6, 0xdd6, 7], [0xe31, 0xe31, 7],
|
|
44
|
+
[0xe34, 0xe3a, 7], [0xe3f, 0xe3f, 4], [0xe47, 0xe4e, 7], [0xeb1, 0xeb1, 7], [0xeb4, 0xebc, 7], [0xec8, 0xece, 7],
|
|
45
|
+
[0xf18, 0xf19, 7], [0xf35, 0xf35, 7], [0xf37, 0xf37, 7], [0xf39, 0xf39, 7], [0xf3a, 0xf3d, 12], [0xf71, 0xf7e, 7],
|
|
46
|
+
[0xf80, 0xf84, 7], [0xf86, 0xf87, 7], [0xf8d, 0xf97, 7], [0xf99, 0xfbc, 7], [0xfc6, 0xfc6, 7], [0x102d, 0x1030, 7],
|
|
47
|
+
[0x1032, 0x1037, 7], [0x1039, 0x103a, 7], [0x103d, 0x103e, 7], [0x1058, 0x1059, 7], [0x105e, 0x1060, 7],
|
|
48
|
+
[0x1071, 0x1074, 7], [0x1082, 0x1082, 7], [0x1085, 0x1086, 7], [0x108d, 0x108d, 7], [0x109d, 0x109d, 7],
|
|
49
|
+
[0x135d, 0x135f, 7], [0x1390, 0x1399, 12], [0x1400, 0x1400, 12], [0x1680, 0x1680, 11], [0x169b, 0x169c, 12],
|
|
50
|
+
[0x1712, 0x1714, 7], [0x1732, 0x1733, 7], [0x1752, 0x1753, 7], [0x1772, 0x1773, 7], [0x17b4, 0x17b5, 7],
|
|
51
|
+
[0x17b7, 0x17bd, 7], [0x17c6, 0x17c6, 7], [0x17c9, 0x17d3, 7], [0x17db, 0x17db, 4], [0x17dd, 0x17dd, 7],
|
|
52
|
+
[0x17f0, 0x17f9, 12], [0x1800, 0x180a, 12], [0x180b, 0x180d, 7], [0x180e, 0x180e, 8], [0x180f, 0x180f, 7],
|
|
53
|
+
[0x1885, 0x1886, 7], [0x18a9, 0x18a9, 7], [0x1920, 0x1922, 7], [0x1927, 0x1928, 7], [0x1932, 0x1932, 7],
|
|
54
|
+
[0x1939, 0x193b, 7], [0x1940, 0x1940, 12], [0x1944, 0x1945, 12], [0x19de, 0x19ff, 12], [0x1a17, 0x1a18, 7],
|
|
55
|
+
[0x1a1b, 0x1a1b, 7], [0x1a56, 0x1a56, 7], [0x1a58, 0x1a5e, 7], [0x1a60, 0x1a60, 7], [0x1a62, 0x1a62, 7],
|
|
56
|
+
[0x1a65, 0x1a6c, 7], [0x1a73, 0x1a7c, 7], [0x1a7f, 0x1a7f, 7], [0x1ab0, 0x1add, 7], [0x1ae0, 0x1aeb, 7],
|
|
57
|
+
[0x1b00, 0x1b03, 7], [0x1b34, 0x1b34, 7], [0x1b36, 0x1b3a, 7], [0x1b3c, 0x1b3c, 7], [0x1b42, 0x1b42, 7],
|
|
58
|
+
[0x1b6b, 0x1b73, 7], [0x1b80, 0x1b81, 7], [0x1ba2, 0x1ba5, 7], [0x1ba8, 0x1ba9, 7], [0x1bab, 0x1bad, 7],
|
|
59
|
+
[0x1be6, 0x1be6, 7], [0x1be8, 0x1be9, 7], [0x1bed, 0x1bed, 7], [0x1bef, 0x1bf1, 7], [0x1c2c, 0x1c33, 7],
|
|
60
|
+
[0x1c36, 0x1c37, 7], [0x1cd0, 0x1cd2, 7], [0x1cd4, 0x1ce0, 7], [0x1ce2, 0x1ce8, 7], [0x1ced, 0x1ced, 7],
|
|
61
|
+
[0x1cf4, 0x1cf4, 7], [0x1cf8, 0x1cf9, 7], [0x1dc0, 0x1dff, 7], [0x1fbd, 0x1fbd, 12], [0x1fbf, 0x1fc1, 12],
|
|
62
|
+
[0x1fcd, 0x1fcf, 12], [0x1fdd, 0x1fdf, 12], [0x1fed, 0x1fef, 12], [0x1ffd, 0x1ffe, 12], [0x2000, 0x200a, 11],
|
|
63
|
+
[0x200b, 0x200d, 8], [0x200f, 0x200f, 0], [0x2010, 0x2027, 12], [0x2028, 0x2028, 11], [0x2029, 0x2029, 9],
|
|
64
|
+
[0x202a, 0x202a, 13], [0x202b, 0x202b, 15], [0x202c, 0x202c, 17], [0x202d, 0x202d, 14], [0x202e, 0x202e, 16],
|
|
65
|
+
[0x202f, 0x202f, 6], [0x2030, 0x2034, 4], [0x2035, 0x2043, 12], [0x2044, 0x2044, 6], [0x2045, 0x205e, 12],
|
|
66
|
+
[0x205f, 0x205f, 11], [0x2060, 0x2065, 8], [0x2066, 0x2066, 18], [0x2067, 0x2067, 19], [0x2068, 0x2068, 20],
|
|
67
|
+
[0x2069, 0x2069, 21], [0x206a, 0x206f, 8], [0x2070, 0x2070, 2], [0x2074, 0x2079, 2], [0x207a, 0x207b, 3],
|
|
68
|
+
[0x207c, 0x207e, 12], [0x2080, 0x2089, 2], [0x208a, 0x208b, 3], [0x208c, 0x208e, 12], [0x20a0, 0x20cf, 4],
|
|
69
|
+
[0x20d0, 0x20f0, 7], [0x2100, 0x2101, 12], [0x2103, 0x2106, 12], [0x2108, 0x2109, 12], [0x2114, 0x2114, 12],
|
|
70
|
+
[0x2116, 0x2118, 12], [0x211e, 0x2123, 12], [0x2125, 0x2125, 12], [0x2127, 0x2127, 12], [0x2129, 0x2129, 12],
|
|
71
|
+
[0x212e, 0x212e, 4], [0x213a, 0x213b, 12], [0x2140, 0x2144, 12], [0x214a, 0x214d, 12], [0x2150, 0x215f, 12],
|
|
72
|
+
[0x2189, 0x218b, 12], [0x2190, 0x2211, 12], [0x2212, 0x2212, 3], [0x2213, 0x2213, 4], [0x2214, 0x2335, 12],
|
|
73
|
+
[0x237b, 0x2394, 12], [0x2396, 0x2429, 12], [0x2440, 0x244a, 12], [0x2460, 0x2487, 12], [0x2488, 0x249b, 2],
|
|
74
|
+
[0x24ea, 0x26ab, 12], [0x26ad, 0x27ff, 12], [0x2900, 0x2b73, 12], [0x2b76, 0x2bff, 12], [0x2ce5, 0x2cea, 12],
|
|
75
|
+
[0x2cef, 0x2cf1, 7], [0x2cf9, 0x2cff, 12], [0x2d7f, 0x2d7f, 7], [0x2de0, 0x2dff, 7], [0x2e00, 0x2e5d, 12],
|
|
76
|
+
[0x2e80, 0x2e99, 12], [0x2e9b, 0x2ef3, 12], [0x2f00, 0x2fd5, 12], [0x2ff0, 0x2fff, 12], [0x3000, 0x3000, 11],
|
|
77
|
+
[0x3001, 0x3004, 12], [0x3008, 0x3020, 12], [0x302a, 0x302d, 7], [0x3030, 0x3030, 12], [0x3036, 0x3037, 12],
|
|
78
|
+
[0x303d, 0x303f, 12], [0x3099, 0x309a, 7], [0x309b, 0x309c, 12], [0x30a0, 0x30a0, 12], [0x30fb, 0x30fb, 12],
|
|
79
|
+
[0x31c0, 0x31e5, 12], [0x31ef, 0x31ef, 12], [0x321d, 0x321e, 12], [0x3250, 0x325f, 12], [0x327c, 0x327e, 12],
|
|
80
|
+
[0x32b1, 0x32bf, 12], [0x32cc, 0x32cf, 12], [0x3377, 0x337a, 12], [0x33de, 0x33df, 12], [0x33ff, 0x33ff, 12],
|
|
81
|
+
[0x4dc0, 0x4dff, 12], [0xa490, 0xa4c6, 12], [0xa60d, 0xa60f, 12], [0xa66f, 0xa672, 7], [0xa673, 0xa673, 12],
|
|
82
|
+
[0xa674, 0xa67d, 7], [0xa67e, 0xa67f, 12], [0xa69e, 0xa69f, 7], [0xa6f0, 0xa6f1, 7], [0xa700, 0xa721, 12],
|
|
83
|
+
[0xa788, 0xa788, 12], [0xa802, 0xa802, 7], [0xa806, 0xa806, 7], [0xa80b, 0xa80b, 7], [0xa825, 0xa826, 7],
|
|
84
|
+
[0xa828, 0xa82b, 12], [0xa82c, 0xa82c, 7], [0xa838, 0xa839, 4], [0xa874, 0xa877, 12], [0xa8c4, 0xa8c5, 7],
|
|
85
|
+
[0xa8e0, 0xa8f1, 7], [0xa8ff, 0xa8ff, 7], [0xa926, 0xa92d, 7], [0xa947, 0xa951, 7], [0xa980, 0xa982, 7],
|
|
86
|
+
[0xa9b3, 0xa9b3, 7], [0xa9b6, 0xa9b9, 7], [0xa9bc, 0xa9bd, 7], [0xa9e5, 0xa9e5, 7], [0xaa29, 0xaa2e, 7],
|
|
87
|
+
[0xaa31, 0xaa32, 7], [0xaa35, 0xaa36, 7], [0xaa43, 0xaa43, 7], [0xaa4c, 0xaa4c, 7], [0xaa7c, 0xaa7c, 7],
|
|
88
|
+
[0xaab0, 0xaab0, 7], [0xaab2, 0xaab4, 7], [0xaab7, 0xaab8, 7], [0xaabe, 0xaabf, 7], [0xaac1, 0xaac1, 7],
|
|
89
|
+
[0xaaec, 0xaaed, 7], [0xaaf6, 0xaaf6, 7], [0xab6a, 0xab6b, 12], [0xabe5, 0xabe5, 7], [0xabe8, 0xabe8, 7],
|
|
90
|
+
[0xabed, 0xabed, 7], [0xfb1d, 0xfb1d, 0], [0xfb1e, 0xfb1e, 7], [0xfb1f, 0xfb28, 0], [0xfb29, 0xfb29, 3],
|
|
91
|
+
[0xfb2a, 0xfb4f, 0], [0xfb50, 0xfbc2, 1], [0xfbc3, 0xfbd2, 12], [0xfbd3, 0xfd3d, 1], [0xfd3e, 0xfd4f, 12],
|
|
92
|
+
[0xfd50, 0xfd8f, 1], [0xfd90, 0xfd91, 12], [0xfd92, 0xfdc7, 1], [0xfdc8, 0xfdcf, 12], [0xfdd0, 0xfdef, 8],
|
|
93
|
+
[0xfdf0, 0xfdfc, 1], [0xfdfd, 0xfdff, 12], [0xfe00, 0xfe0f, 7], [0xfe10, 0xfe19, 12], [0xfe20, 0xfe2f, 7],
|
|
94
|
+
[0xfe30, 0xfe4f, 12], [0xfe50, 0xfe50, 6], [0xfe51, 0xfe51, 12], [0xfe52, 0xfe52, 6], [0xfe54, 0xfe54, 12],
|
|
95
|
+
[0xfe55, 0xfe55, 6], [0xfe56, 0xfe5e, 12], [0xfe5f, 0xfe5f, 4], [0xfe60, 0xfe61, 12], [0xfe62, 0xfe63, 3],
|
|
96
|
+
[0xfe64, 0xfe66, 12], [0xfe68, 0xfe68, 12], [0xfe69, 0xfe6a, 4], [0xfe6b, 0xfe6b, 12], [0xfe70, 0xfefe, 1],
|
|
97
|
+
[0xfeff, 0xfeff, 8], [0xff01, 0xff02, 12], [0xff03, 0xff05, 4], [0xff06, 0xff0a, 12], [0xff0b, 0xff0b, 3],
|
|
98
|
+
[0xff0c, 0xff0c, 6], [0xff0d, 0xff0d, 3], [0xff0e, 0xff0f, 6], [0xff10, 0xff19, 2], [0xff1a, 0xff1a, 6],
|
|
99
|
+
[0xff1b, 0xff20, 12], [0xff3b, 0xff40, 12], [0xff5b, 0xff65, 12], [0xffe0, 0xffe1, 4], [0xffe2, 0xffe4, 12],
|
|
100
|
+
[0xffe5, 0xffe6, 4], [0xffe8, 0xffee, 12], [0xfff0, 0xfff8, 8], [0xfff9, 0xfffd, 12], [0xfffe, 0xffff, 8],
|
|
101
|
+
[0x10101, 0x10101, 12], [0x10140, 0x1018c, 12], [0x10190, 0x1019c, 12], [0x101a0, 0x101a0, 12],
|
|
102
|
+
[0x101fd, 0x101fd, 7], [0x102e0, 0x102e0, 7], [0x102e1, 0x102fb, 2], [0x10376, 0x1037a, 7], [0x10800, 0x1091e, 0],
|
|
103
|
+
[0x1091f, 0x1091f, 12], [0x10920, 0x10a00, 0], [0x10a01, 0x10a03, 7], [0x10a04, 0x10a04, 0], [0x10a05, 0x10a06, 7],
|
|
104
|
+
[0x10a07, 0x10a0b, 0], [0x10a0c, 0x10a0f, 7], [0x10a10, 0x10a37, 0], [0x10a38, 0x10a3a, 7], [0x10a3b, 0x10a3e, 0],
|
|
105
|
+
[0x10a3f, 0x10a3f, 7], [0x10a40, 0x10ae4, 0], [0x10ae5, 0x10ae6, 7], [0x10ae7, 0x10b38, 0], [0x10b39, 0x10b3f, 12],
|
|
106
|
+
[0x10b40, 0x10cff, 0], [0x10d00, 0x10d23, 1], [0x10d24, 0x10d27, 7], [0x10d28, 0x10d2f, 1], [0x10d30, 0x10d39, 5],
|
|
107
|
+
[0x10d3a, 0x10d3f, 1], [0x10d40, 0x10d49, 5], [0x10d4a, 0x10d68, 0], [0x10d69, 0x10d6d, 7], [0x10d6e, 0x10d6e, 12],
|
|
108
|
+
[0x10d6f, 0x10e5f, 0], [0x10e60, 0x10e7e, 5], [0x10e7f, 0x10eaa, 0], [0x10eab, 0x10eac, 7], [0x10ead, 0x10ebf, 0],
|
|
109
|
+
[0x10ec0, 0x10ecf, 1], [0x10ed0, 0x10ed8, 12], [0x10ed9, 0x10ef9, 1], [0x10efa, 0x10eff, 7], [0x10f00, 0x10f2f, 0],
|
|
110
|
+
[0x10f30, 0x10f45, 1], [0x10f46, 0x10f50, 7], [0x10f51, 0x10f6f, 1], [0x10f70, 0x10f81, 0], [0x10f82, 0x10f85, 7],
|
|
111
|
+
[0x10f86, 0x10fff, 0], [0x11001, 0x11001, 7], [0x11038, 0x11046, 7], [0x11052, 0x11065, 12], [0x11070, 0x11070, 7],
|
|
112
|
+
[0x11073, 0x11074, 7], [0x1107f, 0x11081, 7], [0x110b3, 0x110b6, 7], [0x110b9, 0x110ba, 7], [0x110c2, 0x110c2, 7],
|
|
113
|
+
[0x11100, 0x11102, 7], [0x11127, 0x1112b, 7], [0x1112d, 0x11134, 7], [0x11173, 0x11173, 7], [0x11180, 0x11181, 7],
|
|
114
|
+
[0x111b6, 0x111be, 7], [0x111c9, 0x111cc, 7], [0x111cf, 0x111cf, 7], [0x1122f, 0x11231, 7], [0x11234, 0x11234, 7],
|
|
115
|
+
[0x11236, 0x11237, 7], [0x1123e, 0x1123e, 7], [0x11241, 0x11241, 7], [0x112df, 0x112df, 7], [0x112e3, 0x112ea, 7],
|
|
116
|
+
[0x11300, 0x11301, 7], [0x1133b, 0x1133c, 7], [0x11340, 0x11340, 7], [0x11366, 0x1136c, 7], [0x11370, 0x11374, 7],
|
|
117
|
+
[0x113bb, 0x113c0, 7], [0x113ce, 0x113ce, 7], [0x113d0, 0x113d0, 7], [0x113d2, 0x113d2, 7], [0x113e1, 0x113e2, 7],
|
|
118
|
+
[0x11438, 0x1143f, 7], [0x11442, 0x11444, 7], [0x11446, 0x11446, 7], [0x1145e, 0x1145e, 7], [0x114b3, 0x114b8, 7],
|
|
119
|
+
[0x114ba, 0x114ba, 7], [0x114bf, 0x114c0, 7], [0x114c2, 0x114c3, 7], [0x115b2, 0x115b5, 7], [0x115bc, 0x115bd, 7],
|
|
120
|
+
[0x115bf, 0x115c0, 7], [0x115dc, 0x115dd, 7], [0x11633, 0x1163a, 7], [0x1163d, 0x1163d, 7], [0x1163f, 0x11640, 7],
|
|
121
|
+
[0x11660, 0x1166c, 12], [0x116ab, 0x116ab, 7], [0x116ad, 0x116ad, 7], [0x116b0, 0x116b5, 7], [0x116b7, 0x116b7, 7],
|
|
122
|
+
[0x1171d, 0x1171d, 7], [0x1171f, 0x1171f, 7], [0x11722, 0x11725, 7], [0x11727, 0x1172b, 7], [0x1182f, 0x11837, 7],
|
|
123
|
+
[0x11839, 0x1183a, 7], [0x1193b, 0x1193c, 7], [0x1193e, 0x1193e, 7], [0x11943, 0x11943, 7], [0x119d4, 0x119d7, 7],
|
|
124
|
+
[0x119da, 0x119db, 7], [0x119e0, 0x119e0, 7], [0x11a01, 0x11a06, 7], [0x11a09, 0x11a0a, 7], [0x11a33, 0x11a38, 7],
|
|
125
|
+
[0x11a3b, 0x11a3e, 7], [0x11a47, 0x11a47, 7], [0x11a51, 0x11a56, 7], [0x11a59, 0x11a5b, 7], [0x11a8a, 0x11a96, 7],
|
|
126
|
+
[0x11a98, 0x11a99, 7], [0x11b60, 0x11b60, 7], [0x11b62, 0x11b64, 7], [0x11b66, 0x11b66, 7], [0x11c30, 0x11c36, 7],
|
|
127
|
+
[0x11c38, 0x11c3d, 7], [0x11c92, 0x11ca7, 7], [0x11caa, 0x11cb0, 7], [0x11cb2, 0x11cb3, 7], [0x11cb5, 0x11cb6, 7],
|
|
128
|
+
[0x11d31, 0x11d36, 7], [0x11d3a, 0x11d3a, 7], [0x11d3c, 0x11d3d, 7], [0x11d3f, 0x11d45, 7], [0x11d47, 0x11d47, 7],
|
|
129
|
+
[0x11d90, 0x11d91, 7], [0x11d95, 0x11d95, 7], [0x11d97, 0x11d97, 7], [0x11ef3, 0x11ef4, 7], [0x11f00, 0x11f01, 7],
|
|
130
|
+
[0x11f36, 0x11f3a, 7], [0x11f40, 0x11f40, 7], [0x11f42, 0x11f42, 7], [0x11f5a, 0x11f5a, 7], [0x11fd5, 0x11fdc, 12],
|
|
131
|
+
[0x11fdd, 0x11fe0, 4], [0x11fe1, 0x11ff1, 12], [0x13440, 0x13440, 7], [0x13447, 0x13455, 7], [0x1611e, 0x16129, 7],
|
|
132
|
+
[0x1612d, 0x1612f, 7], [0x16af0, 0x16af4, 7], [0x16b30, 0x16b36, 7], [0x16f4f, 0x16f4f, 7], [0x16f8f, 0x16f92, 7],
|
|
133
|
+
[0x16fe2, 0x16fe2, 12], [0x16fe4, 0x16fe4, 7], [0x1bc9d, 0x1bc9e, 7], [0x1bca0, 0x1bca3, 8], [0x1cc00, 0x1ccd5, 12],
|
|
134
|
+
[0x1ccf0, 0x1ccf9, 2], [0x1ccfa, 0x1ccfc, 12], [0x1cd00, 0x1ceb3, 12], [0x1ceba, 0x1ced0, 12],
|
|
135
|
+
[0x1cee0, 0x1cef0, 12], [0x1cf00, 0x1cf2d, 7], [0x1cf30, 0x1cf46, 7], [0x1d167, 0x1d169, 7], [0x1d173, 0x1d17a, 8],
|
|
136
|
+
[0x1d17b, 0x1d182, 7], [0x1d185, 0x1d18b, 7], [0x1d1aa, 0x1d1ad, 7], [0x1d1e9, 0x1d1ea, 12], [0x1d200, 0x1d241, 12],
|
|
137
|
+
[0x1d242, 0x1d244, 7], [0x1d245, 0x1d245, 12], [0x1d300, 0x1d356, 12], [0x1d6c1, 0x1d6c1, 12],
|
|
138
|
+
[0x1d6db, 0x1d6db, 12], [0x1d6fb, 0x1d6fb, 12], [0x1d715, 0x1d715, 12], [0x1d735, 0x1d735, 12],
|
|
139
|
+
[0x1d74f, 0x1d74f, 12], [0x1d76f, 0x1d76f, 12], [0x1d789, 0x1d789, 12], [0x1d7a9, 0x1d7a9, 12],
|
|
140
|
+
[0x1d7c3, 0x1d7c3, 12], [0x1d7ce, 0x1d7ff, 2], [0x1da00, 0x1da36, 7], [0x1da3b, 0x1da6c, 7], [0x1da75, 0x1da75, 7],
|
|
141
|
+
[0x1da84, 0x1da84, 7], [0x1da9b, 0x1da9f, 7], [0x1daa1, 0x1daaf, 7], [0x1e000, 0x1e006, 7], [0x1e008, 0x1e018, 7],
|
|
142
|
+
[0x1e01b, 0x1e021, 7], [0x1e023, 0x1e024, 7], [0x1e026, 0x1e02a, 7], [0x1e08f, 0x1e08f, 7], [0x1e130, 0x1e136, 7],
|
|
143
|
+
[0x1e2ae, 0x1e2ae, 7], [0x1e2ec, 0x1e2ef, 7], [0x1e2ff, 0x1e2ff, 4], [0x1e4ec, 0x1e4ef, 7], [0x1e5ee, 0x1e5ef, 7],
|
|
144
|
+
[0x1e6e3, 0x1e6e3, 7], [0x1e6e6, 0x1e6e6, 7], [0x1e6ee, 0x1e6ef, 7], [0x1e6f5, 0x1e6f5, 7], [0x1e800, 0x1e8cf, 0],
|
|
145
|
+
[0x1e8d0, 0x1e8d6, 7], [0x1e8d7, 0x1e943, 0], [0x1e944, 0x1e94a, 7], [0x1e94b, 0x1ec6f, 0], [0x1ec70, 0x1ecbf, 1],
|
|
146
|
+
[0x1ecc0, 0x1ecff, 0], [0x1ed00, 0x1ed4f, 1], [0x1ed50, 0x1edff, 0], [0x1ee00, 0x1eeef, 1], [0x1eef0, 0x1eef1, 12],
|
|
147
|
+
[0x1eef2, 0x1eeff, 1], [0x1ef00, 0x1efff, 0], [0x1f000, 0x1f02b, 12], [0x1f030, 0x1f093, 12], [0x1f0a0, 0x1f0ae, 12],
|
|
148
|
+
[0x1f0b1, 0x1f0bf, 12], [0x1f0c1, 0x1f0cf, 12], [0x1f0d1, 0x1f0f5, 12], [0x1f100, 0x1f10a, 2],
|
|
149
|
+
[0x1f10b, 0x1f10f, 12], [0x1f12f, 0x1f12f, 12], [0x1f16a, 0x1f16f, 12], [0x1f1ad, 0x1f1ad, 12],
|
|
150
|
+
[0x1f260, 0x1f265, 12], [0x1f300, 0x1f6d8, 12], [0x1f6dc, 0x1f6ec, 12], [0x1f6f0, 0x1f6fc, 12],
|
|
151
|
+
[0x1f700, 0x1f7d9, 12], [0x1f7e0, 0x1f7eb, 12], [0x1f7f0, 0x1f7f0, 12], [0x1f800, 0x1f80b, 12],
|
|
152
|
+
[0x1f810, 0x1f847, 12], [0x1f850, 0x1f859, 12], [0x1f860, 0x1f887, 12], [0x1f890, 0x1f8ad, 12],
|
|
153
|
+
[0x1f8b0, 0x1f8bb, 12], [0x1f8c0, 0x1f8c1, 12], [0x1f8d0, 0x1f8d8, 12], [0x1f900, 0x1fa57, 12],
|
|
154
|
+
[0x1fa60, 0x1fa6d, 12], [0x1fa70, 0x1fa7c, 12], [0x1fa80, 0x1fa8a, 12], [0x1fa8e, 0x1fac6, 12],
|
|
155
|
+
[0x1fac8, 0x1fac8, 12], [0x1facd, 0x1fadc, 12], [0x1fadf, 0x1faea, 12], [0x1faef, 0x1faf8, 12],
|
|
156
|
+
[0x1fb00, 0x1fb92, 12], [0x1fb94, 0x1fbef, 12], [0x1fbf0, 0x1fbf9, 2], [0x1fbfa, 0x1fbfa, 12], [0x1fffe, 0x1ffff, 8],
|
|
157
|
+
[0x2fffe, 0x2ffff, 8], [0x3fffe, 0x3ffff, 8], [0x4fffe, 0x4ffff, 8], [0x5fffe, 0x5ffff, 8], [0x6fffe, 0x6ffff, 8],
|
|
158
|
+
[0x7fffe, 0x7ffff, 8], [0x8fffe, 0x8ffff, 8], [0x9fffe, 0x9ffff, 8], [0xafffe, 0xaffff, 8], [0xbfffe, 0xbffff, 8],
|
|
159
|
+
[0xcfffe, 0xcffff, 8], [0xdfffe, 0xe00ff, 8], [0xe0100, 0xe01ef, 7], [0xe01f0, 0xe0fff, 8], [0xefffe, 0xeffff, 8],
|
|
160
|
+
[0xffffe, 0xfffff, 8], [0x10fffe, 0x10ffff, 8],
|
|
161
|
+
];
|
|
162
|
+
// Every range of code points not U, as [first, last, index into JOINING_TYPES]: ascending, disjoint.
|
|
163
|
+
export const JOINING_RANGES = [
|
|
164
|
+
[0xad, 0xad, 4], [0x300, 0x36f, 4], [0x483, 0x489, 4], [0x591, 0x5bd, 4], [0x5bf, 0x5bf, 4], [0x5c1, 0x5c2, 4],
|
|
165
|
+
[0x5c4, 0x5c5, 4], [0x5c7, 0x5c7, 4], [0x610, 0x61a, 4], [0x61c, 0x61c, 4], [0x620, 0x620, 2], [0x622, 0x625, 0],
|
|
166
|
+
[0x626, 0x626, 2], [0x627, 0x627, 0], [0x628, 0x628, 2], [0x629, 0x629, 0], [0x62a, 0x62e, 2], [0x62f, 0x632, 0],
|
|
167
|
+
[0x633, 0x63f, 2], [0x640, 0x640, 3], [0x641, 0x647, 2], [0x648, 0x648, 0], [0x649, 0x64a, 2], [0x64b, 0x65f, 4],
|
|
168
|
+
[0x66e, 0x66f, 2], [0x670, 0x670, 4], [0x671, 0x673, 0], [0x675, 0x677, 0], [0x678, 0x687, 2], [0x688, 0x699, 0],
|
|
169
|
+
[0x69a, 0x6bf, 2], [0x6c0, 0x6c0, 0], [0x6c1, 0x6c2, 2], [0x6c3, 0x6cb, 0], [0x6cc, 0x6cc, 2], [0x6cd, 0x6cd, 0],
|
|
170
|
+
[0x6ce, 0x6ce, 2], [0x6cf, 0x6cf, 0], [0x6d0, 0x6d1, 2], [0x6d2, 0x6d3, 0], [0x6d5, 0x6d5, 0], [0x6d6, 0x6dc, 4],
|
|
171
|
+
[0x6df, 0x6e4, 4], [0x6e7, 0x6e8, 4], [0x6ea, 0x6ed, 4], [0x6ee, 0x6ef, 0], [0x6fa, 0x6fc, 2], [0x6ff, 0x6ff, 2],
|
|
172
|
+
[0x70f, 0x70f, 4], [0x710, 0x710, 0], [0x711, 0x711, 4], [0x712, 0x714, 2], [0x715, 0x719, 0], [0x71a, 0x71d, 2],
|
|
173
|
+
[0x71e, 0x71e, 0], [0x71f, 0x727, 2], [0x728, 0x728, 0], [0x729, 0x729, 2], [0x72a, 0x72a, 0], [0x72b, 0x72b, 2],
|
|
174
|
+
[0x72c, 0x72c, 0], [0x72d, 0x72e, 2], [0x72f, 0x72f, 0], [0x730, 0x74a, 4], [0x74d, 0x74d, 0], [0x74e, 0x758, 2],
|
|
175
|
+
[0x759, 0x75b, 0], [0x75c, 0x76a, 2], [0x76b, 0x76c, 0], [0x76d, 0x770, 2], [0x771, 0x771, 0], [0x772, 0x772, 2],
|
|
176
|
+
[0x773, 0x774, 0], [0x775, 0x777, 2], [0x778, 0x779, 0], [0x77a, 0x77f, 2], [0x7a6, 0x7b0, 4], [0x7ca, 0x7ea, 2],
|
|
177
|
+
[0x7eb, 0x7f3, 4], [0x7fa, 0x7fa, 3], [0x7fd, 0x7fd, 4], [0x816, 0x819, 4], [0x81b, 0x823, 4], [0x825, 0x827, 4],
|
|
178
|
+
[0x829, 0x82d, 4], [0x840, 0x840, 0], [0x841, 0x845, 2], [0x846, 0x847, 0], [0x848, 0x848, 2], [0x849, 0x849, 0],
|
|
179
|
+
[0x84a, 0x853, 2], [0x854, 0x854, 0], [0x855, 0x855, 2], [0x856, 0x858, 0], [0x859, 0x85b, 4], [0x860, 0x860, 2],
|
|
180
|
+
[0x862, 0x865, 2], [0x867, 0x867, 0], [0x868, 0x868, 2], [0x869, 0x86a, 0], [0x870, 0x882, 0], [0x883, 0x885, 3],
|
|
181
|
+
[0x886, 0x886, 2], [0x889, 0x88d, 2], [0x88e, 0x88e, 0], [0x88f, 0x88f, 2], [0x897, 0x89f, 4], [0x8a0, 0x8a9, 2],
|
|
182
|
+
[0x8aa, 0x8ac, 0], [0x8ae, 0x8ae, 0], [0x8af, 0x8b0, 2], [0x8b1, 0x8b2, 0], [0x8b3, 0x8b8, 2], [0x8b9, 0x8b9, 0],
|
|
183
|
+
[0x8ba, 0x8c8, 2], [0x8ca, 0x8e1, 4], [0x8e3, 0x902, 4], [0x93a, 0x93a, 4], [0x93c, 0x93c, 4], [0x941, 0x948, 4],
|
|
184
|
+
[0x94d, 0x94d, 4], [0x951, 0x957, 4], [0x962, 0x963, 4], [0x981, 0x981, 4], [0x9bc, 0x9bc, 4], [0x9c1, 0x9c4, 4],
|
|
185
|
+
[0x9cd, 0x9cd, 4], [0x9e2, 0x9e3, 4], [0x9fe, 0x9fe, 4], [0xa01, 0xa02, 4], [0xa3c, 0xa3c, 4], [0xa41, 0xa42, 4],
|
|
186
|
+
[0xa47, 0xa48, 4], [0xa4b, 0xa4d, 4], [0xa51, 0xa51, 4], [0xa70, 0xa71, 4], [0xa75, 0xa75, 4], [0xa81, 0xa82, 4],
|
|
187
|
+
[0xabc, 0xabc, 4], [0xac1, 0xac5, 4], [0xac7, 0xac8, 4], [0xacd, 0xacd, 4], [0xae2, 0xae3, 4], [0xafa, 0xaff, 4],
|
|
188
|
+
[0xb01, 0xb01, 4], [0xb3c, 0xb3c, 4], [0xb3f, 0xb3f, 4], [0xb41, 0xb44, 4], [0xb4d, 0xb4d, 4], [0xb55, 0xb56, 4],
|
|
189
|
+
[0xb62, 0xb63, 4], [0xb82, 0xb82, 4], [0xbc0, 0xbc0, 4], [0xbcd, 0xbcd, 4], [0xc00, 0xc00, 4], [0xc04, 0xc04, 4],
|
|
190
|
+
[0xc3c, 0xc3c, 4], [0xc3e, 0xc40, 4], [0xc46, 0xc48, 4], [0xc4a, 0xc4d, 4], [0xc55, 0xc56, 4], [0xc62, 0xc63, 4],
|
|
191
|
+
[0xc81, 0xc81, 4], [0xcbc, 0xcbc, 4], [0xcbf, 0xcbf, 4], [0xcc6, 0xcc6, 4], [0xccc, 0xccd, 4], [0xce2, 0xce3, 4],
|
|
192
|
+
[0xd00, 0xd01, 4], [0xd3b, 0xd3c, 4], [0xd41, 0xd44, 4], [0xd4d, 0xd4d, 4], [0xd62, 0xd63, 4], [0xd81, 0xd81, 4],
|
|
193
|
+
[0xdca, 0xdca, 4], [0xdd2, 0xdd4, 4], [0xdd6, 0xdd6, 4], [0xe31, 0xe31, 4], [0xe34, 0xe3a, 4], [0xe47, 0xe4e, 4],
|
|
194
|
+
[0xeb1, 0xeb1, 4], [0xeb4, 0xebc, 4], [0xec8, 0xece, 4], [0xf18, 0xf19, 4], [0xf35, 0xf35, 4], [0xf37, 0xf37, 4],
|
|
195
|
+
[0xf39, 0xf39, 4], [0xf71, 0xf7e, 4], [0xf80, 0xf84, 4], [0xf86, 0xf87, 4], [0xf8d, 0xf97, 4], [0xf99, 0xfbc, 4],
|
|
196
|
+
[0xfc6, 0xfc6, 4], [0x102d, 0x1030, 4], [0x1032, 0x1037, 4], [0x1039, 0x103a, 4], [0x103d, 0x103e, 4],
|
|
197
|
+
[0x1058, 0x1059, 4], [0x105e, 0x1060, 4], [0x1071, 0x1074, 4], [0x1082, 0x1082, 4], [0x1085, 0x1086, 4],
|
|
198
|
+
[0x108d, 0x108d, 4], [0x109d, 0x109d, 4], [0x135d, 0x135f, 4], [0x1712, 0x1714, 4], [0x1732, 0x1733, 4],
|
|
199
|
+
[0x1752, 0x1753, 4], [0x1772, 0x1773, 4], [0x17b4, 0x17b5, 4], [0x17b7, 0x17bd, 4], [0x17c6, 0x17c6, 4],
|
|
200
|
+
[0x17c9, 0x17d3, 4], [0x17dd, 0x17dd, 4], [0x1807, 0x1807, 2], [0x180a, 0x180a, 3], [0x180b, 0x180d, 4],
|
|
201
|
+
[0x180f, 0x180f, 4], [0x1820, 0x1878, 2], [0x1885, 0x1886, 4], [0x1887, 0x18a8, 2], [0x18a9, 0x18a9, 4],
|
|
202
|
+
[0x18aa, 0x18aa, 2], [0x1920, 0x1922, 4], [0x1927, 0x1928, 4], [0x1932, 0x1932, 4], [0x1939, 0x193b, 4],
|
|
203
|
+
[0x1a17, 0x1a18, 4], [0x1a1b, 0x1a1b, 4], [0x1a56, 0x1a56, 4], [0x1a58, 0x1a5e, 4], [0x1a60, 0x1a60, 4],
|
|
204
|
+
[0x1a62, 0x1a62, 4], [0x1a65, 0x1a6c, 4], [0x1a73, 0x1a7c, 4], [0x1a7f, 0x1a7f, 4], [0x1ab0, 0x1add, 4],
|
|
205
|
+
[0x1ae0, 0x1aeb, 4], [0x1b00, 0x1b03, 4], [0x1b34, 0x1b34, 4], [0x1b36, 0x1b3a, 4], [0x1b3c, 0x1b3c, 4],
|
|
206
|
+
[0x1b42, 0x1b42, 4], [0x1b6b, 0x1b73, 4], [0x1b80, 0x1b81, 4], [0x1ba2, 0x1ba5, 4], [0x1ba8, 0x1ba9, 4],
|
|
207
|
+
[0x1bab, 0x1bad, 4], [0x1be6, 0x1be6, 4], [0x1be8, 0x1be9, 4], [0x1bed, 0x1bed, 4], [0x1bef, 0x1bf1, 4],
|
|
208
|
+
[0x1c2c, 0x1c33, 4], [0x1c36, 0x1c37, 4], [0x1cd0, 0x1cd2, 4], [0x1cd4, 0x1ce0, 4], [0x1ce2, 0x1ce8, 4],
|
|
209
|
+
[0x1ced, 0x1ced, 4], [0x1cf4, 0x1cf4, 4], [0x1cf8, 0x1cf9, 4], [0x1dc0, 0x1dff, 4], [0x200b, 0x200b, 4],
|
|
210
|
+
[0x200d, 0x200d, 3], [0x200e, 0x200f, 4], [0x202a, 0x202e, 4], [0x2060, 0x2064, 4], [0x206a, 0x206f, 4],
|
|
211
|
+
[0x20d0, 0x20f0, 4], [0x2cef, 0x2cf1, 4], [0x2d7f, 0x2d7f, 4], [0x2de0, 0x2dff, 4], [0x302a, 0x302d, 4],
|
|
212
|
+
[0x3099, 0x309a, 4], [0xa66f, 0xa672, 4], [0xa674, 0xa67d, 4], [0xa69e, 0xa69f, 4], [0xa6f0, 0xa6f1, 4],
|
|
213
|
+
[0xa802, 0xa802, 4], [0xa806, 0xa806, 4], [0xa80b, 0xa80b, 4], [0xa825, 0xa826, 4], [0xa82c, 0xa82c, 4],
|
|
214
|
+
[0xa840, 0xa871, 2], [0xa872, 0xa872, 1], [0xa8c4, 0xa8c5, 4], [0xa8e0, 0xa8f1, 4], [0xa8ff, 0xa8ff, 4],
|
|
215
|
+
[0xa926, 0xa92d, 4], [0xa947, 0xa951, 4], [0xa980, 0xa982, 4], [0xa9b3, 0xa9b3, 4], [0xa9b6, 0xa9b9, 4],
|
|
216
|
+
[0xa9bc, 0xa9bd, 4], [0xa9e5, 0xa9e5, 4], [0xaa29, 0xaa2e, 4], [0xaa31, 0xaa32, 4], [0xaa35, 0xaa36, 4],
|
|
217
|
+
[0xaa43, 0xaa43, 4], [0xaa4c, 0xaa4c, 4], [0xaa7c, 0xaa7c, 4], [0xaab0, 0xaab0, 4], [0xaab2, 0xaab4, 4],
|
|
218
|
+
[0xaab7, 0xaab8, 4], [0xaabe, 0xaabf, 4], [0xaac1, 0xaac1, 4], [0xaaec, 0xaaed, 4], [0xaaf6, 0xaaf6, 4],
|
|
219
|
+
[0xabe5, 0xabe5, 4], [0xabe8, 0xabe8, 4], [0xabed, 0xabed, 4], [0xfb1e, 0xfb1e, 4], [0xfe00, 0xfe0f, 4],
|
|
220
|
+
[0xfe20, 0xfe2f, 4], [0xfeff, 0xfeff, 4], [0xfff9, 0xfffb, 4], [0x101fd, 0x101fd, 4], [0x102e0, 0x102e0, 4],
|
|
221
|
+
[0x10376, 0x1037a, 4], [0x10a01, 0x10a03, 4], [0x10a05, 0x10a06, 4], [0x10a0c, 0x10a0f, 4], [0x10a38, 0x10a3a, 4],
|
|
222
|
+
[0x10a3f, 0x10a3f, 4], [0x10ac0, 0x10ac4, 2], [0x10ac5, 0x10ac5, 0], [0x10ac7, 0x10ac7, 0], [0x10ac9, 0x10aca, 0],
|
|
223
|
+
[0x10acd, 0x10acd, 1], [0x10ace, 0x10ad2, 0], [0x10ad3, 0x10ad6, 2], [0x10ad7, 0x10ad7, 1], [0x10ad8, 0x10adc, 2],
|
|
224
|
+
[0x10add, 0x10add, 0], [0x10ade, 0x10ae0, 2], [0x10ae1, 0x10ae1, 0], [0x10ae4, 0x10ae4, 0], [0x10ae5, 0x10ae6, 4],
|
|
225
|
+
[0x10aeb, 0x10aee, 2], [0x10aef, 0x10aef, 0], [0x10b80, 0x10b80, 2], [0x10b81, 0x10b81, 0], [0x10b82, 0x10b82, 2],
|
|
226
|
+
[0x10b83, 0x10b85, 0], [0x10b86, 0x10b88, 2], [0x10b89, 0x10b89, 0], [0x10b8a, 0x10b8b, 2], [0x10b8c, 0x10b8c, 0],
|
|
227
|
+
[0x10b8d, 0x10b8d, 2], [0x10b8e, 0x10b8f, 0], [0x10b90, 0x10b90, 2], [0x10b91, 0x10b91, 0], [0x10ba9, 0x10bac, 0],
|
|
228
|
+
[0x10bad, 0x10bae, 2], [0x10d00, 0x10d00, 1], [0x10d01, 0x10d21, 2], [0x10d22, 0x10d22, 0], [0x10d23, 0x10d23, 2],
|
|
229
|
+
[0x10d24, 0x10d27, 4], [0x10d69, 0x10d6d, 4], [0x10eab, 0x10eac, 4], [0x10ec2, 0x10ec2, 0], [0x10ec3, 0x10ec4, 2],
|
|
230
|
+
[0x10ec6, 0x10ec7, 2], [0x10efa, 0x10eff, 4], [0x10f30, 0x10f32, 2], [0x10f33, 0x10f33, 0], [0x10f34, 0x10f44, 2],
|
|
231
|
+
[0x10f46, 0x10f50, 4], [0x10f51, 0x10f53, 2], [0x10f54, 0x10f54, 0], [0x10f70, 0x10f73, 2], [0x10f74, 0x10f75, 0],
|
|
232
|
+
[0x10f76, 0x10f81, 2], [0x10f82, 0x10f85, 4], [0x10fb0, 0x10fb0, 2], [0x10fb2, 0x10fb3, 2], [0x10fb4, 0x10fb6, 0],
|
|
233
|
+
[0x10fb8, 0x10fb8, 2], [0x10fb9, 0x10fba, 0], [0x10fbb, 0x10fbc, 2], [0x10fbd, 0x10fbd, 0], [0x10fbe, 0x10fbf, 2],
|
|
234
|
+
[0x10fc1, 0x10fc1, 2], [0x10fc2, 0x10fc3, 0], [0x10fc4, 0x10fc4, 2], [0x10fc9, 0x10fc9, 0], [0x10fca, 0x10fca, 2],
|
|
235
|
+
[0x10fcb, 0x10fcb, 1], [0x11001, 0x11001, 4], [0x11038, 0x11046, 4], [0x11070, 0x11070, 4], [0x11073, 0x11074, 4],
|
|
236
|
+
[0x1107f, 0x11081, 4], [0x110b3, 0x110b6, 4], [0x110b9, 0x110ba, 4], [0x110c2, 0x110c2, 4], [0x11100, 0x11102, 4],
|
|
237
|
+
[0x11127, 0x1112b, 4], [0x1112d, 0x11134, 4], [0x11173, 0x11173, 4], [0x11180, 0x11181, 4], [0x111b6, 0x111be, 4],
|
|
238
|
+
[0x111c9, 0x111cc, 4], [0x111cf, 0x111cf, 4], [0x1122f, 0x11231, 4], [0x11234, 0x11234, 4], [0x11236, 0x11237, 4],
|
|
239
|
+
[0x1123e, 0x1123e, 4], [0x11241, 0x11241, 4], [0x112df, 0x112df, 4], [0x112e3, 0x112ea, 4], [0x11300, 0x11301, 4],
|
|
240
|
+
[0x1133b, 0x1133c, 4], [0x11340, 0x11340, 4], [0x11366, 0x1136c, 4], [0x11370, 0x11374, 4], [0x113bb, 0x113c0, 4],
|
|
241
|
+
[0x113ce, 0x113ce, 4], [0x113d0, 0x113d0, 4], [0x113d2, 0x113d2, 4], [0x113e1, 0x113e2, 4], [0x11438, 0x1143f, 4],
|
|
242
|
+
[0x11442, 0x11444, 4], [0x11446, 0x11446, 4], [0x1145e, 0x1145e, 4], [0x114b3, 0x114b8, 4], [0x114ba, 0x114ba, 4],
|
|
243
|
+
[0x114bf, 0x114c0, 4], [0x114c2, 0x114c3, 4], [0x115b2, 0x115b5, 4], [0x115bc, 0x115bd, 4], [0x115bf, 0x115c0, 4],
|
|
244
|
+
[0x115dc, 0x115dd, 4], [0x11633, 0x1163a, 4], [0x1163d, 0x1163d, 4], [0x1163f, 0x11640, 4], [0x116ab, 0x116ab, 4],
|
|
245
|
+
[0x116ad, 0x116ad, 4], [0x116b0, 0x116b5, 4], [0x116b7, 0x116b7, 4], [0x1171d, 0x1171d, 4], [0x1171f, 0x1171f, 4],
|
|
246
|
+
[0x11722, 0x11725, 4], [0x11727, 0x1172b, 4], [0x1182f, 0x11837, 4], [0x11839, 0x1183a, 4], [0x1193b, 0x1193c, 4],
|
|
247
|
+
[0x1193e, 0x1193e, 4], [0x11943, 0x11943, 4], [0x119d4, 0x119d7, 4], [0x119da, 0x119db, 4], [0x119e0, 0x119e0, 4],
|
|
248
|
+
[0x11a01, 0x11a0a, 4], [0x11a33, 0x11a38, 4], [0x11a3b, 0x11a3e, 4], [0x11a47, 0x11a47, 4], [0x11a51, 0x11a56, 4],
|
|
249
|
+
[0x11a59, 0x11a5b, 4], [0x11a8a, 0x11a96, 4], [0x11a98, 0x11a99, 4], [0x11b60, 0x11b60, 4], [0x11b62, 0x11b64, 4],
|
|
250
|
+
[0x11b66, 0x11b66, 4], [0x11c30, 0x11c36, 4], [0x11c38, 0x11c3d, 4], [0x11c3f, 0x11c3f, 4], [0x11c92, 0x11ca7, 4],
|
|
251
|
+
[0x11caa, 0x11cb0, 4], [0x11cb2, 0x11cb3, 4], [0x11cb5, 0x11cb6, 4], [0x11d31, 0x11d36, 4], [0x11d3a, 0x11d3a, 4],
|
|
252
|
+
[0x11d3c, 0x11d3d, 4], [0x11d3f, 0x11d45, 4], [0x11d47, 0x11d47, 4], [0x11d90, 0x11d91, 4], [0x11d95, 0x11d95, 4],
|
|
253
|
+
[0x11d97, 0x11d97, 4], [0x11ef3, 0x11ef4, 4], [0x11f00, 0x11f01, 4], [0x11f36, 0x11f3a, 4], [0x11f40, 0x11f40, 4],
|
|
254
|
+
[0x11f42, 0x11f42, 4], [0x11f5a, 0x11f5a, 4], [0x13430, 0x13440, 4], [0x13447, 0x13455, 4], [0x1611e, 0x16129, 4],
|
|
255
|
+
[0x1612d, 0x1612f, 4], [0x16af0, 0x16af4, 4], [0x16b30, 0x16b36, 4], [0x16f4f, 0x16f4f, 4], [0x16f8f, 0x16f92, 4],
|
|
256
|
+
[0x16fe4, 0x16fe4, 4], [0x1bc9d, 0x1bc9e, 4], [0x1bca0, 0x1bca3, 4], [0x1cf00, 0x1cf2d, 4], [0x1cf30, 0x1cf46, 4],
|
|
257
|
+
[0x1d167, 0x1d169, 4], [0x1d173, 0x1d182, 4], [0x1d185, 0x1d18b, 4], [0x1d1aa, 0x1d1ad, 4], [0x1d242, 0x1d244, 4],
|
|
258
|
+
[0x1da00, 0x1da36, 4], [0x1da3b, 0x1da6c, 4], [0x1da75, 0x1da75, 4], [0x1da84, 0x1da84, 4], [0x1da9b, 0x1da9f, 4],
|
|
259
|
+
[0x1daa1, 0x1daaf, 4], [0x1e000, 0x1e006, 4], [0x1e008, 0x1e018, 4], [0x1e01b, 0x1e021, 4], [0x1e023, 0x1e024, 4],
|
|
260
|
+
[0x1e026, 0x1e02a, 4], [0x1e08f, 0x1e08f, 4], [0x1e130, 0x1e136, 4], [0x1e2ae, 0x1e2ae, 4], [0x1e2ec, 0x1e2ef, 4],
|
|
261
|
+
[0x1e4ec, 0x1e4ef, 4], [0x1e5ee, 0x1e5ef, 4], [0x1e6e3, 0x1e6e3, 4], [0x1e6e6, 0x1e6e6, 4], [0x1e6ee, 0x1e6ef, 4],
|
|
262
|
+
[0x1e6f5, 0x1e6f5, 4], [0x1e8d0, 0x1e8d6, 4], [0x1e900, 0x1e943, 2], [0x1e944, 0x1e94b, 4], [0xe0001, 0xe0001, 4],
|
|
263
|
+
[0xe0020, 0xe007f, 4], [0xe0100, 0xe01ef, 4],
|
|
264
|
+
];
|
|
265
|
+
// Every paired bracket as [opening, closing].
|
|
266
|
+
export const BRACKET_PAIRS = [
|
|
267
|
+
[0x28, 0x29], [0x5b, 0x5d], [0x7b, 0x7d], [0xf3a, 0xf3b], [0xf3c, 0xf3d], [0x169b, 0x169c], [0x2045, 0x2046],
|
|
268
|
+
[0x207d, 0x207e], [0x208d, 0x208e], [0x2308, 0x2309], [0x230a, 0x230b], [0x2329, 0x232a], [0x2768, 0x2769],
|
|
269
|
+
[0x276a, 0x276b], [0x276c, 0x276d], [0x276e, 0x276f], [0x2770, 0x2771], [0x2772, 0x2773], [0x2774, 0x2775],
|
|
270
|
+
[0x27c5, 0x27c6], [0x27e6, 0x27e7], [0x27e8, 0x27e9], [0x27ea, 0x27eb], [0x27ec, 0x27ed], [0x27ee, 0x27ef],
|
|
271
|
+
[0x2983, 0x2984], [0x2985, 0x2986], [0x2987, 0x2988], [0x2989, 0x298a], [0x298b, 0x298c], [0x298d, 0x2990],
|
|
272
|
+
[0x298f, 0x298e], [0x2991, 0x2992], [0x2993, 0x2994], [0x2995, 0x2996], [0x2997, 0x2998], [0x29d8, 0x29d9],
|
|
273
|
+
[0x29da, 0x29db], [0x29fc, 0x29fd], [0x2e22, 0x2e23], [0x2e24, 0x2e25], [0x2e26, 0x2e27], [0x2e28, 0x2e29],
|
|
274
|
+
[0x2e55, 0x2e56], [0x2e57, 0x2e58], [0x2e59, 0x2e5a], [0x2e5b, 0x2e5c], [0x3008, 0x3009], [0x300a, 0x300b],
|
|
275
|
+
[0x300c, 0x300d], [0x300e, 0x300f], [0x3010, 0x3011], [0x3014, 0x3015], [0x3016, 0x3017], [0x3018, 0x3019],
|
|
276
|
+
[0x301a, 0x301b], [0xfe59, 0xfe5a], [0xfe5b, 0xfe5c], [0xfe5d, 0xfe5e], [0xff08, 0xff09], [0xff3b, 0xff3d],
|
|
277
|
+
[0xff5b, 0xff5d], [0xff5f, 0xff60], [0xff62, 0xff63],
|
|
278
|
+
];
|
|
279
|
+
// Every Bidi_Mirroring_Glyph as [code point, its mirror].
|
|
280
|
+
export const MIRRORS = [
|
|
281
|
+
[0x28, 0x29], [0x29, 0x28], [0x3c, 0x3e], [0x3e, 0x3c], [0x5b, 0x5d], [0x5d, 0x5b], [0x7b, 0x7d], [0x7d, 0x7b],
|
|
282
|
+
[0xab, 0xbb], [0xbb, 0xab], [0xf3a, 0xf3b], [0xf3b, 0xf3a], [0xf3c, 0xf3d], [0xf3d, 0xf3c], [0x169b, 0x169c],
|
|
283
|
+
[0x169c, 0x169b], [0x2039, 0x203a], [0x203a, 0x2039], [0x2045, 0x2046], [0x2046, 0x2045], [0x207d, 0x207e],
|
|
284
|
+
[0x207e, 0x207d], [0x208d, 0x208e], [0x208e, 0x208d], [0x2208, 0x220b], [0x2209, 0x220c], [0x220a, 0x220d],
|
|
285
|
+
[0x220b, 0x2208], [0x220c, 0x2209], [0x220d, 0x220a], [0x2215, 0x29f5], [0x221f, 0x2bfe], [0x2220, 0x29a3],
|
|
286
|
+
[0x2221, 0x299b], [0x2222, 0x29a0], [0x2224, 0x2aee], [0x223c, 0x223d], [0x223d, 0x223c], [0x2243, 0x22cd],
|
|
287
|
+
[0x2245, 0x224c], [0x224c, 0x2245], [0x2252, 0x2253], [0x2253, 0x2252], [0x2254, 0x2255], [0x2255, 0x2254],
|
|
288
|
+
[0x2264, 0x2265], [0x2265, 0x2264], [0x2266, 0x2267], [0x2267, 0x2266], [0x2268, 0x2269], [0x2269, 0x2268],
|
|
289
|
+
[0x226a, 0x226b], [0x226b, 0x226a], [0x226e, 0x226f], [0x226f, 0x226e], [0x2270, 0x2271], [0x2271, 0x2270],
|
|
290
|
+
[0x2272, 0x2273], [0x2273, 0x2272], [0x2274, 0x2275], [0x2275, 0x2274], [0x2276, 0x2277], [0x2277, 0x2276],
|
|
291
|
+
[0x2278, 0x2279], [0x2279, 0x2278], [0x227a, 0x227b], [0x227b, 0x227a], [0x227c, 0x227d], [0x227d, 0x227c],
|
|
292
|
+
[0x227e, 0x227f], [0x227f, 0x227e], [0x2280, 0x2281], [0x2281, 0x2280], [0x2282, 0x2283], [0x2283, 0x2282],
|
|
293
|
+
[0x2284, 0x2285], [0x2285, 0x2284], [0x2286, 0x2287], [0x2287, 0x2286], [0x2288, 0x2289], [0x2289, 0x2288],
|
|
294
|
+
[0x228a, 0x228b], [0x228b, 0x228a], [0x228f, 0x2290], [0x2290, 0x228f], [0x2291, 0x2292], [0x2292, 0x2291],
|
|
295
|
+
[0x2298, 0x29b8], [0x22a2, 0x22a3], [0x22a3, 0x22a2], [0x22a6, 0x2ade], [0x22a8, 0x2ae4], [0x22a9, 0x2ae3],
|
|
296
|
+
[0x22ab, 0x2ae5], [0x22b0, 0x22b1], [0x22b1, 0x22b0], [0x22b2, 0x22b3], [0x22b3, 0x22b2], [0x22b4, 0x22b5],
|
|
297
|
+
[0x22b5, 0x22b4], [0x22b6, 0x22b7], [0x22b7, 0x22b6], [0x22b8, 0x27dc], [0x22c9, 0x22ca], [0x22ca, 0x22c9],
|
|
298
|
+
[0x22cb, 0x22cc], [0x22cc, 0x22cb], [0x22cd, 0x2243], [0x22d0, 0x22d1], [0x22d1, 0x22d0], [0x22d6, 0x22d7],
|
|
299
|
+
[0x22d7, 0x22d6], [0x22d8, 0x22d9], [0x22d9, 0x22d8], [0x22da, 0x22db], [0x22db, 0x22da], [0x22dc, 0x22dd],
|
|
300
|
+
[0x22dd, 0x22dc], [0x22de, 0x22df], [0x22df, 0x22de], [0x22e0, 0x22e1], [0x22e1, 0x22e0], [0x22e2, 0x22e3],
|
|
301
|
+
[0x22e3, 0x22e2], [0x22e4, 0x22e5], [0x22e5, 0x22e4], [0x22e6, 0x22e7], [0x22e7, 0x22e6], [0x22e8, 0x22e9],
|
|
302
|
+
[0x22e9, 0x22e8], [0x22ea, 0x22eb], [0x22eb, 0x22ea], [0x22ec, 0x22ed], [0x22ed, 0x22ec], [0x22f0, 0x22f1],
|
|
303
|
+
[0x22f1, 0x22f0], [0x22f2, 0x22fa], [0x22f3, 0x22fb], [0x22f4, 0x22fc], [0x22f6, 0x22fd], [0x22f7, 0x22fe],
|
|
304
|
+
[0x22fa, 0x22f2], [0x22fb, 0x22f3], [0x22fc, 0x22f4], [0x22fd, 0x22f6], [0x22fe, 0x22f7], [0x2308, 0x2309],
|
|
305
|
+
[0x2309, 0x2308], [0x230a, 0x230b], [0x230b, 0x230a], [0x2329, 0x232a], [0x232a, 0x2329], [0x2768, 0x2769],
|
|
306
|
+
[0x2769, 0x2768], [0x276a, 0x276b], [0x276b, 0x276a], [0x276c, 0x276d], [0x276d, 0x276c], [0x276e, 0x276f],
|
|
307
|
+
[0x276f, 0x276e], [0x2770, 0x2771], [0x2771, 0x2770], [0x2772, 0x2773], [0x2773, 0x2772], [0x2774, 0x2775],
|
|
308
|
+
[0x2775, 0x2774], [0x27c3, 0x27c4], [0x27c4, 0x27c3], [0x27c5, 0x27c6], [0x27c6, 0x27c5], [0x27c8, 0x27c9],
|
|
309
|
+
[0x27c9, 0x27c8], [0x27cb, 0x27cd], [0x27cd, 0x27cb], [0x27d5, 0x27d6], [0x27d6, 0x27d5], [0x27dc, 0x22b8],
|
|
310
|
+
[0x27dd, 0x27de], [0x27de, 0x27dd], [0x27e2, 0x27e3], [0x27e3, 0x27e2], [0x27e4, 0x27e5], [0x27e5, 0x27e4],
|
|
311
|
+
[0x27e6, 0x27e7], [0x27e7, 0x27e6], [0x27e8, 0x27e9], [0x27e9, 0x27e8], [0x27ea, 0x27eb], [0x27eb, 0x27ea],
|
|
312
|
+
[0x27ec, 0x27ed], [0x27ed, 0x27ec], [0x27ee, 0x27ef], [0x27ef, 0x27ee], [0x2983, 0x2984], [0x2984, 0x2983],
|
|
313
|
+
[0x2985, 0x2986], [0x2986, 0x2985], [0x2987, 0x2988], [0x2988, 0x2987], [0x2989, 0x298a], [0x298a, 0x2989],
|
|
314
|
+
[0x298b, 0x298c], [0x298c, 0x298b], [0x298d, 0x2990], [0x298e, 0x298f], [0x298f, 0x298e], [0x2990, 0x298d],
|
|
315
|
+
[0x2991, 0x2992], [0x2992, 0x2991], [0x2993, 0x2994], [0x2994, 0x2993], [0x2995, 0x2996], [0x2996, 0x2995],
|
|
316
|
+
[0x2997, 0x2998], [0x2998, 0x2997], [0x299b, 0x2221], [0x29a0, 0x2222], [0x29a3, 0x2220], [0x29a4, 0x29a5],
|
|
317
|
+
[0x29a5, 0x29a4], [0x29a8, 0x29a9], [0x29a9, 0x29a8], [0x29aa, 0x29ab], [0x29ab, 0x29aa], [0x29ac, 0x29ad],
|
|
318
|
+
[0x29ad, 0x29ac], [0x29ae, 0x29af], [0x29af, 0x29ae], [0x29b8, 0x2298], [0x29c0, 0x29c1], [0x29c1, 0x29c0],
|
|
319
|
+
[0x29c4, 0x29c5], [0x29c5, 0x29c4], [0x29cf, 0x29d0], [0x29d0, 0x29cf], [0x29d1, 0x29d2], [0x29d2, 0x29d1],
|
|
320
|
+
[0x29d4, 0x29d5], [0x29d5, 0x29d4], [0x29d8, 0x29d9], [0x29d9, 0x29d8], [0x29da, 0x29db], [0x29db, 0x29da],
|
|
321
|
+
[0x29e8, 0x29e9], [0x29e9, 0x29e8], [0x29f5, 0x2215], [0x29f8, 0x29f9], [0x29f9, 0x29f8], [0x29fc, 0x29fd],
|
|
322
|
+
[0x29fd, 0x29fc], [0x2a2b, 0x2a2c], [0x2a2c, 0x2a2b], [0x2a2d, 0x2a2e], [0x2a2e, 0x2a2d], [0x2a34, 0x2a35],
|
|
323
|
+
[0x2a35, 0x2a34], [0x2a3c, 0x2a3d], [0x2a3d, 0x2a3c], [0x2a64, 0x2a65], [0x2a65, 0x2a64], [0x2a79, 0x2a7a],
|
|
324
|
+
[0x2a7a, 0x2a79], [0x2a7b, 0x2a7c], [0x2a7c, 0x2a7b], [0x2a7d, 0x2a7e], [0x2a7e, 0x2a7d], [0x2a7f, 0x2a80],
|
|
325
|
+
[0x2a80, 0x2a7f], [0x2a81, 0x2a82], [0x2a82, 0x2a81], [0x2a83, 0x2a84], [0x2a84, 0x2a83], [0x2a85, 0x2a86],
|
|
326
|
+
[0x2a86, 0x2a85], [0x2a87, 0x2a88], [0x2a88, 0x2a87], [0x2a89, 0x2a8a], [0x2a8a, 0x2a89], [0x2a8b, 0x2a8c],
|
|
327
|
+
[0x2a8c, 0x2a8b], [0x2a8d, 0x2a8e], [0x2a8e, 0x2a8d], [0x2a8f, 0x2a90], [0x2a90, 0x2a8f], [0x2a91, 0x2a92],
|
|
328
|
+
[0x2a92, 0x2a91], [0x2a93, 0x2a94], [0x2a94, 0x2a93], [0x2a95, 0x2a96], [0x2a96, 0x2a95], [0x2a97, 0x2a98],
|
|
329
|
+
[0x2a98, 0x2a97], [0x2a99, 0x2a9a], [0x2a9a, 0x2a99], [0x2a9b, 0x2a9c], [0x2a9c, 0x2a9b], [0x2a9d, 0x2a9e],
|
|
330
|
+
[0x2a9e, 0x2a9d], [0x2a9f, 0x2aa0], [0x2aa0, 0x2a9f], [0x2aa1, 0x2aa2], [0x2aa2, 0x2aa1], [0x2aa6, 0x2aa7],
|
|
331
|
+
[0x2aa7, 0x2aa6], [0x2aa8, 0x2aa9], [0x2aa9, 0x2aa8], [0x2aaa, 0x2aab], [0x2aab, 0x2aaa], [0x2aac, 0x2aad],
|
|
332
|
+
[0x2aad, 0x2aac], [0x2aaf, 0x2ab0], [0x2ab0, 0x2aaf], [0x2ab1, 0x2ab2], [0x2ab2, 0x2ab1], [0x2ab3, 0x2ab4],
|
|
333
|
+
[0x2ab4, 0x2ab3], [0x2ab5, 0x2ab6], [0x2ab6, 0x2ab5], [0x2ab7, 0x2ab8], [0x2ab8, 0x2ab7], [0x2ab9, 0x2aba],
|
|
334
|
+
[0x2aba, 0x2ab9], [0x2abb, 0x2abc], [0x2abc, 0x2abb], [0x2abd, 0x2abe], [0x2abe, 0x2abd], [0x2abf, 0x2ac0],
|
|
335
|
+
[0x2ac0, 0x2abf], [0x2ac1, 0x2ac2], [0x2ac2, 0x2ac1], [0x2ac3, 0x2ac4], [0x2ac4, 0x2ac3], [0x2ac5, 0x2ac6],
|
|
336
|
+
[0x2ac6, 0x2ac5], [0x2ac7, 0x2ac8], [0x2ac8, 0x2ac7], [0x2ac9, 0x2aca], [0x2aca, 0x2ac9], [0x2acb, 0x2acc],
|
|
337
|
+
[0x2acc, 0x2acb], [0x2acd, 0x2ace], [0x2ace, 0x2acd], [0x2acf, 0x2ad0], [0x2ad0, 0x2acf], [0x2ad1, 0x2ad2],
|
|
338
|
+
[0x2ad2, 0x2ad1], [0x2ad3, 0x2ad4], [0x2ad4, 0x2ad3], [0x2ad5, 0x2ad6], [0x2ad6, 0x2ad5], [0x2ade, 0x22a6],
|
|
339
|
+
[0x2ae3, 0x22a9], [0x2ae4, 0x22a8], [0x2ae5, 0x22ab], [0x2aec, 0x2aed], [0x2aed, 0x2aec], [0x2aee, 0x2224],
|
|
340
|
+
[0x2af7, 0x2af8], [0x2af8, 0x2af7], [0x2af9, 0x2afa], [0x2afa, 0x2af9], [0x2bfe, 0x221f], [0x2e02, 0x2e03],
|
|
341
|
+
[0x2e03, 0x2e02], [0x2e04, 0x2e05], [0x2e05, 0x2e04], [0x2e09, 0x2e0a], [0x2e0a, 0x2e09], [0x2e0c, 0x2e0d],
|
|
342
|
+
[0x2e0d, 0x2e0c], [0x2e1c, 0x2e1d], [0x2e1d, 0x2e1c], [0x2e20, 0x2e21], [0x2e21, 0x2e20], [0x2e22, 0x2e23],
|
|
343
|
+
[0x2e23, 0x2e22], [0x2e24, 0x2e25], [0x2e25, 0x2e24], [0x2e26, 0x2e27], [0x2e27, 0x2e26], [0x2e28, 0x2e29],
|
|
344
|
+
[0x2e29, 0x2e28], [0x2e55, 0x2e56], [0x2e56, 0x2e55], [0x2e57, 0x2e58], [0x2e58, 0x2e57], [0x2e59, 0x2e5a],
|
|
345
|
+
[0x2e5a, 0x2e59], [0x2e5b, 0x2e5c], [0x2e5c, 0x2e5b], [0x3008, 0x3009], [0x3009, 0x3008], [0x300a, 0x300b],
|
|
346
|
+
[0x300b, 0x300a], [0x300c, 0x300d], [0x300d, 0x300c], [0x300e, 0x300f], [0x300f, 0x300e], [0x3010, 0x3011],
|
|
347
|
+
[0x3011, 0x3010], [0x3014, 0x3015], [0x3015, 0x3014], [0x3016, 0x3017], [0x3017, 0x3016], [0x3018, 0x3019],
|
|
348
|
+
[0x3019, 0x3018], [0x301a, 0x301b], [0x301b, 0x301a], [0xfe59, 0xfe5a], [0xfe5a, 0xfe59], [0xfe5b, 0xfe5c],
|
|
349
|
+
[0xfe5c, 0xfe5b], [0xfe5d, 0xfe5e], [0xfe5e, 0xfe5d], [0xfe64, 0xfe65], [0xfe65, 0xfe64], [0xff08, 0xff09],
|
|
350
|
+
[0xff09, 0xff08], [0xff1c, 0xff1e], [0xff1e, 0xff1c], [0xff3b, 0xff3d], [0xff3d, 0xff3b], [0xff5b, 0xff5d],
|
|
351
|
+
[0xff5d, 0xff5b], [0xff5f, 0xff60], [0xff60, 0xff5f], [0xff62, 0xff63], [0xff63, 0xff62],
|
|
352
|
+
];
|
|
353
|
+
// Every letter with a presentation form, as [letter, isolated, final, initial, medial]; 0 is none encoded.
|
|
354
|
+
export const PRESENTATION_FORMS = [
|
|
355
|
+
[0x621, 0xfe80, 0, 0, 0], [0x622, 0xfe81, 0xfe82, 0, 0], [0x623, 0xfe83, 0xfe84, 0, 0],
|
|
356
|
+
[0x624, 0xfe85, 0xfe86, 0, 0], [0x625, 0xfe87, 0xfe88, 0, 0], [0x626, 0xfe89, 0xfe8a, 0xfe8b, 0xfe8c],
|
|
357
|
+
[0x627, 0xfe8d, 0xfe8e, 0, 0], [0x628, 0xfe8f, 0xfe90, 0xfe91, 0xfe92], [0x629, 0xfe93, 0xfe94, 0, 0],
|
|
358
|
+
[0x62a, 0xfe95, 0xfe96, 0xfe97, 0xfe98], [0x62b, 0xfe99, 0xfe9a, 0xfe9b, 0xfe9c],
|
|
359
|
+
[0x62c, 0xfe9d, 0xfe9e, 0xfe9f, 0xfea0], [0x62d, 0xfea1, 0xfea2, 0xfea3, 0xfea4],
|
|
360
|
+
[0x62e, 0xfea5, 0xfea6, 0xfea7, 0xfea8], [0x62f, 0xfea9, 0xfeaa, 0, 0], [0x630, 0xfeab, 0xfeac, 0, 0],
|
|
361
|
+
[0x631, 0xfead, 0xfeae, 0, 0], [0x632, 0xfeaf, 0xfeb0, 0, 0], [0x633, 0xfeb1, 0xfeb2, 0xfeb3, 0xfeb4],
|
|
362
|
+
[0x634, 0xfeb5, 0xfeb6, 0xfeb7, 0xfeb8], [0x635, 0xfeb9, 0xfeba, 0xfebb, 0xfebc],
|
|
363
|
+
[0x636, 0xfebd, 0xfebe, 0xfebf, 0xfec0], [0x637, 0xfec1, 0xfec2, 0xfec3, 0xfec4],
|
|
364
|
+
[0x638, 0xfec5, 0xfec6, 0xfec7, 0xfec8], [0x639, 0xfec9, 0xfeca, 0xfecb, 0xfecc],
|
|
365
|
+
[0x63a, 0xfecd, 0xfece, 0xfecf, 0xfed0], [0x641, 0xfed1, 0xfed2, 0xfed3, 0xfed4],
|
|
366
|
+
[0x642, 0xfed5, 0xfed6, 0xfed7, 0xfed8], [0x643, 0xfed9, 0xfeda, 0xfedb, 0xfedc],
|
|
367
|
+
[0x644, 0xfedd, 0xfede, 0xfedf, 0xfee0], [0x645, 0xfee1, 0xfee2, 0xfee3, 0xfee4],
|
|
368
|
+
[0x646, 0xfee5, 0xfee6, 0xfee7, 0xfee8], [0x647, 0xfee9, 0xfeea, 0xfeeb, 0xfeec], [0x648, 0xfeed, 0xfeee, 0, 0],
|
|
369
|
+
[0x649, 0xfeef, 0xfef0, 0xfbe8, 0xfbe9], [0x64a, 0xfef1, 0xfef2, 0xfef3, 0xfef4], [0x671, 0xfb50, 0xfb51, 0, 0],
|
|
370
|
+
[0x677, 0xfbdd, 0, 0, 0], [0x679, 0xfb66, 0xfb67, 0xfb68, 0xfb69], [0x67a, 0xfb5e, 0xfb5f, 0xfb60, 0xfb61],
|
|
371
|
+
[0x67b, 0xfb52, 0xfb53, 0xfb54, 0xfb55], [0x67e, 0xfb56, 0xfb57, 0xfb58, 0xfb59],
|
|
372
|
+
[0x67f, 0xfb62, 0xfb63, 0xfb64, 0xfb65], [0x680, 0xfb5a, 0xfb5b, 0xfb5c, 0xfb5d],
|
|
373
|
+
[0x683, 0xfb76, 0xfb77, 0xfb78, 0xfb79], [0x684, 0xfb72, 0xfb73, 0xfb74, 0xfb75],
|
|
374
|
+
[0x686, 0xfb7a, 0xfb7b, 0xfb7c, 0xfb7d], [0x687, 0xfb7e, 0xfb7f, 0xfb80, 0xfb81], [0x688, 0xfb88, 0xfb89, 0, 0],
|
|
375
|
+
[0x68c, 0xfb84, 0xfb85, 0, 0], [0x68d, 0xfb82, 0xfb83, 0, 0], [0x68e, 0xfb86, 0xfb87, 0, 0],
|
|
376
|
+
[0x691, 0xfb8c, 0xfb8d, 0, 0], [0x698, 0xfb8a, 0xfb8b, 0, 0], [0x6a4, 0xfb6a, 0xfb6b, 0xfb6c, 0xfb6d],
|
|
377
|
+
[0x6a6, 0xfb6e, 0xfb6f, 0xfb70, 0xfb71], [0x6a9, 0xfb8e, 0xfb8f, 0xfb90, 0xfb91],
|
|
378
|
+
[0x6ad, 0xfbd3, 0xfbd4, 0xfbd5, 0xfbd6], [0x6af, 0xfb92, 0xfb93, 0xfb94, 0xfb95],
|
|
379
|
+
[0x6b1, 0xfb9a, 0xfb9b, 0xfb9c, 0xfb9d], [0x6b3, 0xfb96, 0xfb97, 0xfb98, 0xfb99], [0x6ba, 0xfb9e, 0xfb9f, 0, 0],
|
|
380
|
+
[0x6bb, 0xfba0, 0xfba1, 0xfba2, 0xfba3], [0x6be, 0xfbaa, 0xfbab, 0xfbac, 0xfbad], [0x6c0, 0xfba4, 0xfba5, 0, 0],
|
|
381
|
+
[0x6c1, 0xfba6, 0xfba7, 0xfba8, 0xfba9], [0x6c5, 0xfbe0, 0xfbe1, 0, 0], [0x6c6, 0xfbd9, 0xfbda, 0, 0],
|
|
382
|
+
[0x6c7, 0xfbd7, 0xfbd8, 0, 0], [0x6c8, 0xfbdb, 0xfbdc, 0, 0], [0x6c9, 0xfbe2, 0xfbe3, 0, 0],
|
|
383
|
+
[0x6cb, 0xfbde, 0xfbdf, 0, 0], [0x6cc, 0xfbfc, 0xfbfd, 0xfbfe, 0xfbff], [0x6d0, 0xfbe4, 0xfbe5, 0xfbe6, 0xfbe7],
|
|
384
|
+
[0x6d2, 0xfbae, 0xfbaf, 0, 0], [0x6d3, 0xfbb0, 0xfbb1, 0, 0],
|
|
385
|
+
];
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Unicode Bidirectional Algorithm (UAX #9): the embedding level of every
|
|
3
|
+
* character of a paragraph, and the visual order of a line of them.
|
|
4
|
+
*
|
|
5
|
+
* Levels are resolved over a whole paragraph and reordered a line at a time,
|
|
6
|
+
* because rules L1 and L2 run after line breaking (UAX #9 section 3.4). So a
|
|
7
|
+
* caller resolves first, cuts however it cuts, and asks for each piece's order
|
|
8
|
+
* with the levels it took along. Rule numbers below are the standard's.
|
|
9
|
+
*
|
|
10
|
+
* Levels index UTF-16 code units, as every offset into a JavaScript string does;
|
|
11
|
+
* both units of a surrogate pair carry one level. `REMOVED` is rule X9: a
|
|
12
|
+
* character the algorithm takes out of the text, which has no level.
|
|
13
|
+
*/
|
|
14
|
+
import type { ParagraphLevel } from "./text-order.js";
|
|
15
|
+
export type { ParagraphLevel } from "./text-order.js";
|
|
16
|
+
/** The level of a character rule X9 removes. */
|
|
17
|
+
export declare const REMOVED = -1;
|
|
18
|
+
export interface Paragraph {
|
|
19
|
+
readonly level: ParagraphLevel;
|
|
20
|
+
/** One level per code unit of the text, `REMOVED` for what X9 removes. */
|
|
21
|
+
readonly levels: readonly number[];
|
|
22
|
+
}
|
|
23
|
+
/** `codePoint`'s Bidi_Mirroring_Glyph, or itself. */
|
|
24
|
+
export declare function mirrored(codePoint: number): number;
|
|
25
|
+
export declare const EXPLICIT: import("./pattern.js").Pattern;
|
|
26
|
+
/** `text` with every explicit formatting character gone. */
|
|
27
|
+
export declare function withoutExplicit(text: string): string;
|
|
28
|
+
/** `text` as data on show: what the wire would drop, and every explicit control, spelled by `escape`. */
|
|
29
|
+
export declare function escaped(text: string, escape: (character: string) => string): string;
|
|
30
|
+
/** `text` with LRM, RLM and ALM gone. */
|
|
31
|
+
export declare function withoutMarks(text: string): string;
|
|
32
|
+
/** The openers in force, outermost first, and how many are isolates, so an unmatched PDI costs no scan of them. */
|
|
33
|
+
export interface Open {
|
|
34
|
+
readonly stack: string[];
|
|
35
|
+
isolates: number;
|
|
36
|
+
}
|
|
37
|
+
/** `openers` in force, as a row's start states them. */
|
|
38
|
+
export declare function opened(openers?: string): Open;
|
|
39
|
+
/**
|
|
40
|
+
* `character` applied to `open`, the openers in force, outermost first: an
|
|
41
|
+
* opener joins them, a closer takes what it closes, and a line feed ends them
|
|
42
|
+
* all, as X8 does at a paragraph's end. A line is the paragraph here, so U+2029
|
|
43
|
+
* ends nothing: `paragraph` resolves it inside the line that holds it. False for
|
|
44
|
+
* a closer that matches nothing, which closes nothing: PDF closes an embedding
|
|
45
|
+
* opened since the innermost isolate, and PDI the innermost isolate with every
|
|
46
|
+
* embedding inside it.
|
|
47
|
+
*/
|
|
48
|
+
export declare function advance(open: Open, character: string): boolean;
|
|
49
|
+
/** The openers `text` leaves open at its end, outermost first. */
|
|
50
|
+
export declare function openersOf(text: string): string;
|
|
51
|
+
/**
|
|
52
|
+
* What reopens `text`'s state at an offset: read forwards, since rows ask in
|
|
53
|
+
* order, and from the start again for one behind. An opener past `MAX_DEPTH` is
|
|
54
|
+
* one the algorithm ignores, so no row repeats it, or a hostile line's every row
|
|
55
|
+
* would carry them all. An explicit control is one code unit, so offsets need no
|
|
56
|
+
* care for surrogates.
|
|
57
|
+
*/
|
|
58
|
+
export declare function openersAlong(text: string): (offset: number) => string;
|
|
59
|
+
/** What closes `openers`, innermost first. */
|
|
60
|
+
export declare function closersOf(openers: string): string;
|
|
61
|
+
/** What closes the direction state `content` leaves open. */
|
|
62
|
+
export declare function closing(content: string): string;
|
|
63
|
+
/** `content` with the direction state it leaves open closed: separate content starts clean after it. */
|
|
64
|
+
export declare function closed(content: string): string;
|
|
65
|
+
/** Whether `text` needs the algorithm at all. */
|
|
66
|
+
export declare function isBidi(text: string): boolean;
|
|
67
|
+
/**
|
|
68
|
+
* `text`, one paragraph, resolved to rule I2. `direction` is rule HL1: a
|
|
69
|
+
* paragraph direction stated rather than found. Absent, P2 and P3 find it.
|
|
70
|
+
*/
|
|
71
|
+
/** P2 and P3 alone: `text`'s paragraph level, for a caller that resolves nothing else. */
|
|
72
|
+
export declare function paragraphLevel(text: string): ParagraphLevel;
|
|
73
|
+
export declare function paragraph(text: string, direction?: ParagraphLevel): Paragraph;
|
|
74
|
+
/** L1: the levels of one line, its separators and trailing whitespace back at the paragraph level. */
|
|
75
|
+
export declare function lineLevels(line: string, levels: readonly number[], paragraphLevel: ParagraphLevel): number[];
|
|
76
|
+
/** L2: the indexes of `levels` in visual order, what X9 removed left out. */
|
|
77
|
+
export declare function visualOrder(levels: readonly number[]): number[];
|
|
78
|
+
/**
|
|
79
|
+
* Arabic joining on one row's grapheme clusters, in logical order and in place:
|
|
80
|
+
* each letter takes the presentation form its neighbours call for, because a
|
|
81
|
+
* terminal that does not reorder does not join either. A presentation form is
|
|
82
|
+
* one cell, as the letter was, so no width moves. Lam-alef stays two forms rather
|
|
83
|
+
* than the one-cell ligature, as VTE leaves it, since the ligature would narrow
|
|
84
|
+
* a line after it was laid out. A letter Unicode encodes no such form for stays a
|
|
85
|
+
* base letter. A joiner beside a shaped letter goes, its effect carried by the
|
|
86
|
+
* form; any other joiner, an emoji sequence's among them, stays or `cellLen`
|
|
87
|
+
* would change after the cut.
|
|
88
|
+
*/
|
|
89
|
+
export declare function shaped(clusters: readonly string[]): string[];
|