@promptctl/rich-js 0.24.0 → 0.24.1

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.
Files changed (95) hide show
  1. package/THIRD-PARTY-NOTICES +29 -1
  2. package/dist/core/animation.d.ts +78 -0
  3. package/dist/core/animation.js +107 -0
  4. package/dist/core/cell-widths.d.ts +9 -0
  5. package/dist/core/cell-widths.js +140 -0
  6. package/dist/core/cells.d.ts +17 -11
  7. package/dist/core/cells.js +100 -25
  8. package/dist/core/console.js +5 -5
  9. package/dist/core/easing.d.ts +110 -10
  10. package/dist/core/easing.js +269 -36
  11. package/dist/core/json.js +2 -1
  12. package/dist/core/measure.js +2 -2
  13. package/dist/core/place.js +2 -1
  14. package/dist/core/pretty.js +2 -2
  15. package/dist/core/protocol.d.ts +73 -19
  16. package/dist/core/protocol.js +56 -15
  17. package/dist/core/render.js +2 -1
  18. package/dist/core/segment.d.ts +18 -1
  19. package/dist/core/segment.js +45 -44
  20. package/dist/core/strip.d.ts +3 -2
  21. package/dist/core/strip.js +11 -7
  22. package/dist/core/style.js +17 -6
  23. package/dist/core/text.js +22 -14
  24. package/dist/core/timeline.d.ts +84 -0
  25. package/dist/core/timeline.js +144 -0
  26. package/dist/core/tween.d.ts +49 -0
  27. package/dist/core/tween.js +69 -0
  28. package/dist/host/app.js +2 -2
  29. package/dist/index.d.ts +10 -7
  30. package/dist/index.js +13 -4
  31. package/dist/renderables/align.d.ts +3 -2
  32. package/dist/renderables/align.js +3 -0
  33. package/dist/renderables/columns.d.ts +3 -2
  34. package/dist/renderables/columns.js +7 -2
  35. package/dist/renderables/constrain.d.ts +3 -2
  36. package/dist/renderables/constrain.js +5 -1
  37. package/dist/renderables/effect.d.ts +43 -58
  38. package/dist/renderables/effect.js +58 -64
  39. package/dist/renderables/effects.d.ts +16 -14
  40. package/dist/renderables/effects.js +64 -45
  41. package/dist/renderables/embed.js +3 -2
  42. package/dist/renderables/flexStrip.d.ts +3 -2
  43. package/dist/renderables/flexStrip.js +6 -1
  44. package/dist/renderables/frames.d.ts +40 -19
  45. package/dist/renderables/frames.js +48 -21
  46. package/dist/renderables/group.d.ts +3 -2
  47. package/dist/renderables/group.js +5 -2
  48. package/dist/renderables/html-entities.d.ts +8 -0
  49. package/dist/renderables/html-entities.js +386 -0
  50. package/dist/renderables/layout.d.ts +3 -2
  51. package/dist/renderables/layout.js +15 -2
  52. package/dist/renderables/list-view.d.ts +3 -2
  53. package/dist/renderables/list-view.js +12 -5
  54. package/dist/renderables/live.js +2 -2
  55. package/dist/renderables/markdown-parse.d.ts +109 -0
  56. package/dist/renderables/markdown-parse.js +1421 -0
  57. package/dist/renderables/markdown-url.d.ts +19 -0
  58. package/dist/renderables/markdown-url.js +314 -0
  59. package/dist/renderables/markdown.d.ts +5 -7
  60. package/dist/renderables/markdown.js +356 -683
  61. package/dist/renderables/padding.d.ts +8 -20
  62. package/dist/renderables/padding.js +32 -50
  63. package/dist/renderables/panel.d.ts +26 -26
  64. package/dist/renderables/panel.js +67 -103
  65. package/dist/renderables/progress.d.ts +4 -2
  66. package/dist/renderables/progress.js +11 -2
  67. package/dist/renderables/progressBar.js +2 -2
  68. package/dist/renderables/python-space.d.ts +13 -0
  69. package/dist/renderables/python-space.js +24 -0
  70. package/dist/renderables/spinner.d.ts +26 -14
  71. package/dist/renderables/spinner.js +49 -37
  72. package/dist/renderables/syntax.js +2 -1
  73. package/dist/renderables/table.d.ts +19 -11
  74. package/dist/renderables/table.js +140 -156
  75. package/dist/renderables/traceback.d.ts +1 -1
  76. package/dist/renderables/traceback.js +6 -5
  77. package/dist/renderables/tree.d.ts +6 -5
  78. package/dist/renderables/tree.js +11 -7
  79. package/dist/renderables/viewport.d.ts +13 -5
  80. package/dist/renderables/viewport.js +41 -20
  81. package/dist/template-bindings/animation-funcs.js +2 -2
  82. package/dist/template-bindings/index.js +2 -1
  83. package/dist/themes/ramp.d.ts +18 -3
  84. package/dist/themes/ramp.js +23 -2
  85. package/dist/widgets/focus-manager.d.ts +21 -14
  86. package/dist/widgets/focus-manager.js +28 -29
  87. package/dist/widgets/index.d.ts +1 -1
  88. package/dist/widgets/static-item.d.ts +4 -3
  89. package/dist/widgets/static-item.js +9 -7
  90. package/dist/widgets/text-input.d.ts +28 -18
  91. package/dist/widgets/text-input.js +144 -101
  92. package/dist/widgets/widget-app.d.ts +19 -3
  93. package/dist/widgets/widget-app.js +39 -21
  94. package/dist/widgets/widget-base.js +0 -3
  95. package/package.json +2 -5
@@ -0,0 +1,386 @@
1
+ /**
2
+ * HTML's named character references, each name without its `;`, to the
3
+ * characters it stands for — the table markdown-it-py, Rich's parser, decodes
4
+ * with. Generated by scripts/html-entities.py from Python's
5
+ * `html.entities.html5`; regenerate rather than edit.
6
+ */
7
+ const NAMED_REFERENCES = {
8
+ AElig: "\u00c6", AMP: "&", Aacute: "\u00c1", Abreve: "\u0102", Acirc: "\u00c2", Acy: "\u0410", Afr: "\u{1d504}",
9
+ Agrave: "\u00c0", Alpha: "\u0391", Amacr: "\u0100", And: "\u2a53", Aogon: "\u0104", Aopf: "\u{1d538}",
10
+ ApplyFunction: "\u2061", Aring: "\u00c5", Ascr: "\u{1d49c}", Assign: "\u2254", Atilde: "\u00c3", Auml: "\u00c4",
11
+ Backslash: "\u2216", Barv: "\u2ae7", Barwed: "\u2306", Bcy: "\u0411", Because: "\u2235", Bernoullis: "\u212c",
12
+ Beta: "\u0392", Bfr: "\u{1d505}", Bopf: "\u{1d539}", Breve: "\u02d8", Bscr: "\u212c", Bumpeq: "\u224e",
13
+ CHcy: "\u0427", COPY: "\u00a9", Cacute: "\u0106", Cap: "\u22d2", CapitalDifferentialD: "\u2145", Cayleys: "\u212d",
14
+ Ccaron: "\u010c", Ccedil: "\u00c7", Ccirc: "\u0108", Cconint: "\u2230", Cdot: "\u010a", Cedilla: "\u00b8",
15
+ CenterDot: "\u00b7", Cfr: "\u212d", Chi: "\u03a7", CircleDot: "\u2299", CircleMinus: "\u2296", CirclePlus: "\u2295",
16
+ CircleTimes: "\u2297", ClockwiseContourIntegral: "\u2232", CloseCurlyDoubleQuote: "\u201d",
17
+ CloseCurlyQuote: "\u2019", Colon: "\u2237", Colone: "\u2a74", Congruent: "\u2261", Conint: "\u222f",
18
+ ContourIntegral: "\u222e", Copf: "\u2102", Coproduct: "\u2210", CounterClockwiseContourIntegral: "\u2233",
19
+ Cross: "\u2a2f", Cscr: "\u{1d49e}", Cup: "\u22d3", CupCap: "\u224d", DD: "\u2145", DDotrahd: "\u2911",
20
+ DJcy: "\u0402", DScy: "\u0405", DZcy: "\u040f", Dagger: "\u2021", Darr: "\u21a1", Dashv: "\u2ae4", Dcaron: "\u010e",
21
+ Dcy: "\u0414", Del: "\u2207", Delta: "\u0394", Dfr: "\u{1d507}", DiacriticalAcute: "\u00b4",
22
+ DiacriticalDot: "\u02d9", DiacriticalDoubleAcute: "\u02dd", DiacriticalGrave: "`", DiacriticalTilde: "\u02dc",
23
+ Diamond: "\u22c4", DifferentialD: "\u2146", Dopf: "\u{1d53b}", Dot: "\u00a8", DotDot: "\u20dc", DotEqual: "\u2250",
24
+ DoubleContourIntegral: "\u222f", DoubleDot: "\u00a8", DoubleDownArrow: "\u21d3", DoubleLeftArrow: "\u21d0",
25
+ DoubleLeftRightArrow: "\u21d4", DoubleLeftTee: "\u2ae4", DoubleLongLeftArrow: "\u27f8",
26
+ DoubleLongLeftRightArrow: "\u27fa", DoubleLongRightArrow: "\u27f9", DoubleRightArrow: "\u21d2",
27
+ DoubleRightTee: "\u22a8", DoubleUpArrow: "\u21d1", DoubleUpDownArrow: "\u21d5", DoubleVerticalBar: "\u2225",
28
+ DownArrow: "\u2193", DownArrowBar: "\u2913", DownArrowUpArrow: "\u21f5", DownBreve: "\u0311",
29
+ DownLeftRightVector: "\u2950", DownLeftTeeVector: "\u295e", DownLeftVector: "\u21bd", DownLeftVectorBar: "\u2956",
30
+ DownRightTeeVector: "\u295f", DownRightVector: "\u21c1", DownRightVectorBar: "\u2957", DownTee: "\u22a4",
31
+ DownTeeArrow: "\u21a7", Downarrow: "\u21d3", Dscr: "\u{1d49f}", Dstrok: "\u0110", ENG: "\u014a", ETH: "\u00d0",
32
+ Eacute: "\u00c9", Ecaron: "\u011a", Ecirc: "\u00ca", Ecy: "\u042d", Edot: "\u0116", Efr: "\u{1d508}",
33
+ Egrave: "\u00c8", Element: "\u2208", Emacr: "\u0112", EmptySmallSquare: "\u25fb", EmptyVerySmallSquare: "\u25ab",
34
+ Eogon: "\u0118", Eopf: "\u{1d53c}", Epsilon: "\u0395", Equal: "\u2a75", EqualTilde: "\u2242", Equilibrium: "\u21cc",
35
+ Escr: "\u2130", Esim: "\u2a73", Eta: "\u0397", Euml: "\u00cb", Exists: "\u2203", ExponentialE: "\u2147",
36
+ Fcy: "\u0424", Ffr: "\u{1d509}", FilledSmallSquare: "\u25fc", FilledVerySmallSquare: "\u25aa", Fopf: "\u{1d53d}",
37
+ ForAll: "\u2200", Fouriertrf: "\u2131", Fscr: "\u2131", GJcy: "\u0403", GT: ">", Gamma: "\u0393", Gammad: "\u03dc",
38
+ Gbreve: "\u011e", Gcedil: "\u0122", Gcirc: "\u011c", Gcy: "\u0413", Gdot: "\u0120", Gfr: "\u{1d50a}", Gg: "\u22d9",
39
+ Gopf: "\u{1d53e}", GreaterEqual: "\u2265", GreaterEqualLess: "\u22db", GreaterFullEqual: "\u2267",
40
+ GreaterGreater: "\u2aa2", GreaterLess: "\u2277", GreaterSlantEqual: "\u2a7e", GreaterTilde: "\u2273",
41
+ Gscr: "\u{1d4a2}", Gt: "\u226b", HARDcy: "\u042a", Hacek: "\u02c7", Hat: "^", Hcirc: "\u0124", Hfr: "\u210c",
42
+ HilbertSpace: "\u210b", Hopf: "\u210d", HorizontalLine: "\u2500", Hscr: "\u210b", Hstrok: "\u0126",
43
+ HumpDownHump: "\u224e", HumpEqual: "\u224f", IEcy: "\u0415", IJlig: "\u0132", IOcy: "\u0401", Iacute: "\u00cd",
44
+ Icirc: "\u00ce", Icy: "\u0418", Idot: "\u0130", Ifr: "\u2111", Igrave: "\u00cc", Im: "\u2111", Imacr: "\u012a",
45
+ ImaginaryI: "\u2148", Implies: "\u21d2", Int: "\u222c", Integral: "\u222b", Intersection: "\u22c2",
46
+ InvisibleComma: "\u2063", InvisibleTimes: "\u2062", Iogon: "\u012e", Iopf: "\u{1d540}", Iota: "\u0399",
47
+ Iscr: "\u2110", Itilde: "\u0128", Iukcy: "\u0406", Iuml: "\u00cf", Jcirc: "\u0134", Jcy: "\u0419", Jfr: "\u{1d50d}",
48
+ Jopf: "\u{1d541}", Jscr: "\u{1d4a5}", Jsercy: "\u0408", Jukcy: "\u0404", KHcy: "\u0425", KJcy: "\u040c",
49
+ Kappa: "\u039a", Kcedil: "\u0136", Kcy: "\u041a", Kfr: "\u{1d50e}", Kopf: "\u{1d542}", Kscr: "\u{1d4a6}",
50
+ LJcy: "\u0409", LT: "<", Lacute: "\u0139", Lambda: "\u039b", Lang: "\u27ea", Laplacetrf: "\u2112", Larr: "\u219e",
51
+ Lcaron: "\u013d", Lcedil: "\u013b", Lcy: "\u041b", LeftAngleBracket: "\u27e8", LeftArrow: "\u2190",
52
+ LeftArrowBar: "\u21e4", LeftArrowRightArrow: "\u21c6", LeftCeiling: "\u2308", LeftDoubleBracket: "\u27e6",
53
+ LeftDownTeeVector: "\u2961", LeftDownVector: "\u21c3", LeftDownVectorBar: "\u2959", LeftFloor: "\u230a",
54
+ LeftRightArrow: "\u2194", LeftRightVector: "\u294e", LeftTee: "\u22a3", LeftTeeArrow: "\u21a4",
55
+ LeftTeeVector: "\u295a", LeftTriangle: "\u22b2", LeftTriangleBar: "\u29cf", LeftTriangleEqual: "\u22b4",
56
+ LeftUpDownVector: "\u2951", LeftUpTeeVector: "\u2960", LeftUpVector: "\u21bf", LeftUpVectorBar: "\u2958",
57
+ LeftVector: "\u21bc", LeftVectorBar: "\u2952", Leftarrow: "\u21d0", Leftrightarrow: "\u21d4",
58
+ LessEqualGreater: "\u22da", LessFullEqual: "\u2266", LessGreater: "\u2276", LessLess: "\u2aa1",
59
+ LessSlantEqual: "\u2a7d", LessTilde: "\u2272", Lfr: "\u{1d50f}", Ll: "\u22d8", Lleftarrow: "\u21da",
60
+ Lmidot: "\u013f", LongLeftArrow: "\u27f5", LongLeftRightArrow: "\u27f7", LongRightArrow: "\u27f6",
61
+ Longleftarrow: "\u27f8", Longleftrightarrow: "\u27fa", Longrightarrow: "\u27f9", Lopf: "\u{1d543}",
62
+ LowerLeftArrow: "\u2199", LowerRightArrow: "\u2198", Lscr: "\u2112", Lsh: "\u21b0", Lstrok: "\u0141", Lt: "\u226a",
63
+ Map: "\u2905", Mcy: "\u041c", MediumSpace: "\u205f", Mellintrf: "\u2133", Mfr: "\u{1d510}", MinusPlus: "\u2213",
64
+ Mopf: "\u{1d544}", Mscr: "\u2133", Mu: "\u039c", NJcy: "\u040a", Nacute: "\u0143", Ncaron: "\u0147",
65
+ Ncedil: "\u0145", Ncy: "\u041d", NegativeMediumSpace: "\u200b", NegativeThickSpace: "\u200b",
66
+ NegativeThinSpace: "\u200b", NegativeVeryThinSpace: "\u200b", NestedGreaterGreater: "\u226b",
67
+ NestedLessLess: "\u226a", NewLine: "\u000a", Nfr: "\u{1d511}", NoBreak: "\u2060", NonBreakingSpace: "\u00a0",
68
+ Nopf: "\u2115", Not: "\u2aec", NotCongruent: "\u2262", NotCupCap: "\u226d", NotDoubleVerticalBar: "\u2226",
69
+ NotElement: "\u2209", NotEqual: "\u2260", NotEqualTilde: "\u2242\u0338", NotExists: "\u2204", NotGreater: "\u226f",
70
+ NotGreaterEqual: "\u2271", NotGreaterFullEqual: "\u2267\u0338", NotGreaterGreater: "\u226b\u0338",
71
+ NotGreaterLess: "\u2279", NotGreaterSlantEqual: "\u2a7e\u0338", NotGreaterTilde: "\u2275",
72
+ NotHumpDownHump: "\u224e\u0338", NotHumpEqual: "\u224f\u0338", NotLeftTriangle: "\u22ea",
73
+ NotLeftTriangleBar: "\u29cf\u0338", NotLeftTriangleEqual: "\u22ec", NotLess: "\u226e", NotLessEqual: "\u2270",
74
+ NotLessGreater: "\u2278", NotLessLess: "\u226a\u0338", NotLessSlantEqual: "\u2a7d\u0338", NotLessTilde: "\u2274",
75
+ NotNestedGreaterGreater: "\u2aa2\u0338", NotNestedLessLess: "\u2aa1\u0338", NotPrecedes: "\u2280",
76
+ NotPrecedesEqual: "\u2aaf\u0338", NotPrecedesSlantEqual: "\u22e0", NotReverseElement: "\u220c",
77
+ NotRightTriangle: "\u22eb", NotRightTriangleBar: "\u29d0\u0338", NotRightTriangleEqual: "\u22ed",
78
+ NotSquareSubset: "\u228f\u0338", NotSquareSubsetEqual: "\u22e2", NotSquareSuperset: "\u2290\u0338",
79
+ NotSquareSupersetEqual: "\u22e3", NotSubset: "\u2282\u20d2", NotSubsetEqual: "\u2288", NotSucceeds: "\u2281",
80
+ NotSucceedsEqual: "\u2ab0\u0338", NotSucceedsSlantEqual: "\u22e1", NotSucceedsTilde: "\u227f\u0338",
81
+ NotSuperset: "\u2283\u20d2", NotSupersetEqual: "\u2289", NotTilde: "\u2241", NotTildeEqual: "\u2244",
82
+ NotTildeFullEqual: "\u2247", NotTildeTilde: "\u2249", NotVerticalBar: "\u2224", Nscr: "\u{1d4a9}", Ntilde: "\u00d1",
83
+ Nu: "\u039d", OElig: "\u0152", Oacute: "\u00d3", Ocirc: "\u00d4", Ocy: "\u041e", Odblac: "\u0150", Ofr: "\u{1d512}",
84
+ Ograve: "\u00d2", Omacr: "\u014c", Omega: "\u03a9", Omicron: "\u039f", Oopf: "\u{1d546}",
85
+ OpenCurlyDoubleQuote: "\u201c", OpenCurlyQuote: "\u2018", Or: "\u2a54", Oscr: "\u{1d4aa}", Oslash: "\u00d8",
86
+ Otilde: "\u00d5", Otimes: "\u2a37", Ouml: "\u00d6", OverBar: "\u203e", OverBrace: "\u23de", OverBracket: "\u23b4",
87
+ OverParenthesis: "\u23dc", PartialD: "\u2202", Pcy: "\u041f", Pfr: "\u{1d513}", Phi: "\u03a6", Pi: "\u03a0",
88
+ PlusMinus: "\u00b1", Poincareplane: "\u210c", Popf: "\u2119", Pr: "\u2abb", Precedes: "\u227a",
89
+ PrecedesEqual: "\u2aaf", PrecedesSlantEqual: "\u227c", PrecedesTilde: "\u227e", Prime: "\u2033", Product: "\u220f",
90
+ Proportion: "\u2237", Proportional: "\u221d", Pscr: "\u{1d4ab}", Psi: "\u03a8", QUOT: "\u0022", Qfr: "\u{1d514}",
91
+ Qopf: "\u211a", Qscr: "\u{1d4ac}", RBarr: "\u2910", REG: "\u00ae", Racute: "\u0154", Rang: "\u27eb", Rarr: "\u21a0",
92
+ Rarrtl: "\u2916", Rcaron: "\u0158", Rcedil: "\u0156", Rcy: "\u0420", Re: "\u211c", ReverseElement: "\u220b",
93
+ ReverseEquilibrium: "\u21cb", ReverseUpEquilibrium: "\u296f", Rfr: "\u211c", Rho: "\u03a1",
94
+ RightAngleBracket: "\u27e9", RightArrow: "\u2192", RightArrowBar: "\u21e5", RightArrowLeftArrow: "\u21c4",
95
+ RightCeiling: "\u2309", RightDoubleBracket: "\u27e7", RightDownTeeVector: "\u295d", RightDownVector: "\u21c2",
96
+ RightDownVectorBar: "\u2955", RightFloor: "\u230b", RightTee: "\u22a2", RightTeeArrow: "\u21a6",
97
+ RightTeeVector: "\u295b", RightTriangle: "\u22b3", RightTriangleBar: "\u29d0", RightTriangleEqual: "\u22b5",
98
+ RightUpDownVector: "\u294f", RightUpTeeVector: "\u295c", RightUpVector: "\u21be", RightUpVectorBar: "\u2954",
99
+ RightVector: "\u21c0", RightVectorBar: "\u2953", Rightarrow: "\u21d2", Ropf: "\u211d", RoundImplies: "\u2970",
100
+ Rrightarrow: "\u21db", Rscr: "\u211b", Rsh: "\u21b1", RuleDelayed: "\u29f4", SHCHcy: "\u0429", SHcy: "\u0428",
101
+ SOFTcy: "\u042c", Sacute: "\u015a", Sc: "\u2abc", Scaron: "\u0160", Scedil: "\u015e", Scirc: "\u015c", Scy: "\u0421",
102
+ Sfr: "\u{1d516}", ShortDownArrow: "\u2193", ShortLeftArrow: "\u2190", ShortRightArrow: "\u2192",
103
+ ShortUpArrow: "\u2191", Sigma: "\u03a3", SmallCircle: "\u2218", Sopf: "\u{1d54a}", Sqrt: "\u221a", Square: "\u25a1",
104
+ SquareIntersection: "\u2293", SquareSubset: "\u228f", SquareSubsetEqual: "\u2291", SquareSuperset: "\u2290",
105
+ SquareSupersetEqual: "\u2292", SquareUnion: "\u2294", Sscr: "\u{1d4ae}", Star: "\u22c6", Sub: "\u22d0",
106
+ Subset: "\u22d0", SubsetEqual: "\u2286", Succeeds: "\u227b", SucceedsEqual: "\u2ab0", SucceedsSlantEqual: "\u227d",
107
+ SucceedsTilde: "\u227f", SuchThat: "\u220b", Sum: "\u2211", Sup: "\u22d1", Superset: "\u2283",
108
+ SupersetEqual: "\u2287", Supset: "\u22d1", THORN: "\u00de", TRADE: "\u2122", TSHcy: "\u040b", TScy: "\u0426",
109
+ Tab: "\u0009", Tau: "\u03a4", Tcaron: "\u0164", Tcedil: "\u0162", Tcy: "\u0422", Tfr: "\u{1d517}",
110
+ Therefore: "\u2234", Theta: "\u0398", ThickSpace: "\u205f\u200a", ThinSpace: "\u2009", Tilde: "\u223c",
111
+ TildeEqual: "\u2243", TildeFullEqual: "\u2245", TildeTilde: "\u2248", Topf: "\u{1d54b}", TripleDot: "\u20db",
112
+ Tscr: "\u{1d4af}", Tstrok: "\u0166", Uacute: "\u00da", Uarr: "\u219f", Uarrocir: "\u2949", Ubrcy: "\u040e",
113
+ Ubreve: "\u016c", Ucirc: "\u00db", Ucy: "\u0423", Udblac: "\u0170", Ufr: "\u{1d518}", Ugrave: "\u00d9",
114
+ Umacr: "\u016a", UnderBar: "_", UnderBrace: "\u23df", UnderBracket: "\u23b5", UnderParenthesis: "\u23dd",
115
+ Union: "\u22c3", UnionPlus: "\u228e", Uogon: "\u0172", Uopf: "\u{1d54c}", UpArrow: "\u2191", UpArrowBar: "\u2912",
116
+ UpArrowDownArrow: "\u21c5", UpDownArrow: "\u2195", UpEquilibrium: "\u296e", UpTee: "\u22a5", UpTeeArrow: "\u21a5",
117
+ Uparrow: "\u21d1", Updownarrow: "\u21d5", UpperLeftArrow: "\u2196", UpperRightArrow: "\u2197", Upsi: "\u03d2",
118
+ Upsilon: "\u03a5", Uring: "\u016e", Uscr: "\u{1d4b0}", Utilde: "\u0168", Uuml: "\u00dc", VDash: "\u22ab",
119
+ Vbar: "\u2aeb", Vcy: "\u0412", Vdash: "\u22a9", Vdashl: "\u2ae6", Vee: "\u22c1", Verbar: "\u2016", Vert: "\u2016",
120
+ VerticalBar: "\u2223", VerticalLine: "|", VerticalSeparator: "\u2758", VerticalTilde: "\u2240",
121
+ VeryThinSpace: "\u200a", Vfr: "\u{1d519}", Vopf: "\u{1d54d}", Vscr: "\u{1d4b1}", Vvdash: "\u22aa", Wcirc: "\u0174",
122
+ Wedge: "\u22c0", Wfr: "\u{1d51a}", Wopf: "\u{1d54e}", Wscr: "\u{1d4b2}", Xfr: "\u{1d51b}", Xi: "\u039e",
123
+ Xopf: "\u{1d54f}", Xscr: "\u{1d4b3}", YAcy: "\u042f", YIcy: "\u0407", YUcy: "\u042e", Yacute: "\u00dd",
124
+ Ycirc: "\u0176", Ycy: "\u042b", Yfr: "\u{1d51c}", Yopf: "\u{1d550}", Yscr: "\u{1d4b4}", Yuml: "\u0178",
125
+ ZHcy: "\u0416", Zacute: "\u0179", Zcaron: "\u017d", Zcy: "\u0417", Zdot: "\u017b", ZeroWidthSpace: "\u200b",
126
+ Zeta: "\u0396", Zfr: "\u2128", Zopf: "\u2124", Zscr: "\u{1d4b5}", aacute: "\u00e1", abreve: "\u0103", ac: "\u223e",
127
+ acE: "\u223e\u0333", acd: "\u223f", acirc: "\u00e2", acute: "\u00b4", acy: "\u0430", aelig: "\u00e6", af: "\u2061",
128
+ afr: "\u{1d51e}", agrave: "\u00e0", alefsym: "\u2135", aleph: "\u2135", alpha: "\u03b1", amacr: "\u0101",
129
+ amalg: "\u2a3f", amp: "&", and: "\u2227", andand: "\u2a55", andd: "\u2a5c", andslope: "\u2a58", andv: "\u2a5a",
130
+ ang: "\u2220", ange: "\u29a4", angle: "\u2220", angmsd: "\u2221", angmsdaa: "\u29a8", angmsdab: "\u29a9",
131
+ angmsdac: "\u29aa", angmsdad: "\u29ab", angmsdae: "\u29ac", angmsdaf: "\u29ad", angmsdag: "\u29ae",
132
+ angmsdah: "\u29af", angrt: "\u221f", angrtvb: "\u22be", angrtvbd: "\u299d", angsph: "\u2222", angst: "\u00c5",
133
+ angzarr: "\u237c", aogon: "\u0105", aopf: "\u{1d552}", ap: "\u2248", apE: "\u2a70", apacir: "\u2a6f", ape: "\u224a",
134
+ apid: "\u224b", apos: "'", approx: "\u2248", approxeq: "\u224a", aring: "\u00e5", ascr: "\u{1d4b6}", ast: "*",
135
+ asymp: "\u2248", asympeq: "\u224d", atilde: "\u00e3", auml: "\u00e4", awconint: "\u2233", awint: "\u2a11",
136
+ bNot: "\u2aed", backcong: "\u224c", backepsilon: "\u03f6", backprime: "\u2035", backsim: "\u223d",
137
+ backsimeq: "\u22cd", barvee: "\u22bd", barwed: "\u2305", barwedge: "\u2305", bbrk: "\u23b5", bbrktbrk: "\u23b6",
138
+ bcong: "\u224c", bcy: "\u0431", bdquo: "\u201e", becaus: "\u2235", because: "\u2235", bemptyv: "\u29b0",
139
+ bepsi: "\u03f6", bernou: "\u212c", beta: "\u03b2", beth: "\u2136", between: "\u226c", bfr: "\u{1d51f}",
140
+ bigcap: "\u22c2", bigcirc: "\u25ef", bigcup: "\u22c3", bigodot: "\u2a00", bigoplus: "\u2a01", bigotimes: "\u2a02",
141
+ bigsqcup: "\u2a06", bigstar: "\u2605", bigtriangledown: "\u25bd", bigtriangleup: "\u25b3", biguplus: "\u2a04",
142
+ bigvee: "\u22c1", bigwedge: "\u22c0", bkarow: "\u290d", blacklozenge: "\u29eb", blacksquare: "\u25aa",
143
+ blacktriangle: "\u25b4", blacktriangledown: "\u25be", blacktriangleleft: "\u25c2", blacktriangleright: "\u25b8",
144
+ blank: "\u2423", blk12: "\u2592", blk14: "\u2591", blk34: "\u2593", block: "\u2588", bne: "=\u20e5",
145
+ bnequiv: "\u2261\u20e5", bnot: "\u2310", bopf: "\u{1d553}", bot: "\u22a5", bottom: "\u22a5", bowtie: "\u22c8",
146
+ boxDL: "\u2557", boxDR: "\u2554", boxDl: "\u2556", boxDr: "\u2553", boxH: "\u2550", boxHD: "\u2566", boxHU: "\u2569",
147
+ boxHd: "\u2564", boxHu: "\u2567", boxUL: "\u255d", boxUR: "\u255a", boxUl: "\u255c", boxUr: "\u2559", boxV: "\u2551",
148
+ boxVH: "\u256c", boxVL: "\u2563", boxVR: "\u2560", boxVh: "\u256b", boxVl: "\u2562", boxVr: "\u255f",
149
+ boxbox: "\u29c9", boxdL: "\u2555", boxdR: "\u2552", boxdl: "\u2510", boxdr: "\u250c", boxh: "\u2500",
150
+ boxhD: "\u2565", boxhU: "\u2568", boxhd: "\u252c", boxhu: "\u2534", boxminus: "\u229f", boxplus: "\u229e",
151
+ boxtimes: "\u22a0", boxuL: "\u255b", boxuR: "\u2558", boxul: "\u2518", boxur: "\u2514", boxv: "\u2502",
152
+ boxvH: "\u256a", boxvL: "\u2561", boxvR: "\u255e", boxvh: "\u253c", boxvl: "\u2524", boxvr: "\u251c",
153
+ bprime: "\u2035", breve: "\u02d8", brvbar: "\u00a6", bscr: "\u{1d4b7}", bsemi: "\u204f", bsim: "\u223d",
154
+ bsime: "\u22cd", bsol: "\u005c", bsolb: "\u29c5", bsolhsub: "\u27c8", bull: "\u2022", bullet: "\u2022",
155
+ bump: "\u224e", bumpE: "\u2aae", bumpe: "\u224f", bumpeq: "\u224f", cacute: "\u0107", cap: "\u2229",
156
+ capand: "\u2a44", capbrcup: "\u2a49", capcap: "\u2a4b", capcup: "\u2a47", capdot: "\u2a40", caps: "\u2229\ufe00",
157
+ caret: "\u2041", caron: "\u02c7", ccaps: "\u2a4d", ccaron: "\u010d", ccedil: "\u00e7", ccirc: "\u0109",
158
+ ccups: "\u2a4c", ccupssm: "\u2a50", cdot: "\u010b", cedil: "\u00b8", cemptyv: "\u29b2", cent: "\u00a2",
159
+ centerdot: "\u00b7", cfr: "\u{1d520}", chcy: "\u0447", check: "\u2713", checkmark: "\u2713", chi: "\u03c7",
160
+ cir: "\u25cb", cirE: "\u29c3", circ: "\u02c6", circeq: "\u2257", circlearrowleft: "\u21ba",
161
+ circlearrowright: "\u21bb", circledR: "\u00ae", circledS: "\u24c8", circledast: "\u229b", circledcirc: "\u229a",
162
+ circleddash: "\u229d", cire: "\u2257", cirfnint: "\u2a10", cirmid: "\u2aef", cirscir: "\u29c2", clubs: "\u2663",
163
+ clubsuit: "\u2663", colon: ":", colone: "\u2254", coloneq: "\u2254", comma: ",", commat: "@", comp: "\u2201",
164
+ compfn: "\u2218", complement: "\u2201", complexes: "\u2102", cong: "\u2245", congdot: "\u2a6d", conint: "\u222e",
165
+ copf: "\u{1d554}", coprod: "\u2210", copy: "\u00a9", copysr: "\u2117", crarr: "\u21b5", cross: "\u2717",
166
+ cscr: "\u{1d4b8}", csub: "\u2acf", csube: "\u2ad1", csup: "\u2ad0", csupe: "\u2ad2", ctdot: "\u22ef",
167
+ cudarrl: "\u2938", cudarrr: "\u2935", cuepr: "\u22de", cuesc: "\u22df", cularr: "\u21b6", cularrp: "\u293d",
168
+ cup: "\u222a", cupbrcap: "\u2a48", cupcap: "\u2a46", cupcup: "\u2a4a", cupdot: "\u228d", cupor: "\u2a45",
169
+ cups: "\u222a\ufe00", curarr: "\u21b7", curarrm: "\u293c", curlyeqprec: "\u22de", curlyeqsucc: "\u22df",
170
+ curlyvee: "\u22ce", curlywedge: "\u22cf", curren: "\u00a4", curvearrowleft: "\u21b6", curvearrowright: "\u21b7",
171
+ cuvee: "\u22ce", cuwed: "\u22cf", cwconint: "\u2232", cwint: "\u2231", cylcty: "\u232d", dArr: "\u21d3",
172
+ dHar: "\u2965", dagger: "\u2020", daleth: "\u2138", darr: "\u2193", dash: "\u2010", dashv: "\u22a3",
173
+ dbkarow: "\u290f", dblac: "\u02dd", dcaron: "\u010f", dcy: "\u0434", dd: "\u2146", ddagger: "\u2021",
174
+ ddarr: "\u21ca", ddotseq: "\u2a77", deg: "\u00b0", delta: "\u03b4", demptyv: "\u29b1", dfisht: "\u297f",
175
+ dfr: "\u{1d521}", dharl: "\u21c3", dharr: "\u21c2", diam: "\u22c4", diamond: "\u22c4", diamondsuit: "\u2666",
176
+ diams: "\u2666", die: "\u00a8", digamma: "\u03dd", disin: "\u22f2", div: "\u00f7", divide: "\u00f7",
177
+ divideontimes: "\u22c7", divonx: "\u22c7", djcy: "\u0452", dlcorn: "\u231e", dlcrop: "\u230d", dollar: "$",
178
+ dopf: "\u{1d555}", dot: "\u02d9", doteq: "\u2250", doteqdot: "\u2251", dotminus: "\u2238", dotplus: "\u2214",
179
+ dotsquare: "\u22a1", doublebarwedge: "\u2306", downarrow: "\u2193", downdownarrows: "\u21ca",
180
+ downharpoonleft: "\u21c3", downharpoonright: "\u21c2", drbkarow: "\u2910", drcorn: "\u231f", drcrop: "\u230c",
181
+ dscr: "\u{1d4b9}", dscy: "\u0455", dsol: "\u29f6", dstrok: "\u0111", dtdot: "\u22f1", dtri: "\u25bf",
182
+ dtrif: "\u25be", duarr: "\u21f5", duhar: "\u296f", dwangle: "\u29a6", dzcy: "\u045f", dzigrarr: "\u27ff",
183
+ eDDot: "\u2a77", eDot: "\u2251", eacute: "\u00e9", easter: "\u2a6e", ecaron: "\u011b", ecir: "\u2256",
184
+ ecirc: "\u00ea", ecolon: "\u2255", ecy: "\u044d", edot: "\u0117", ee: "\u2147", efDot: "\u2252", efr: "\u{1d522}",
185
+ eg: "\u2a9a", egrave: "\u00e8", egs: "\u2a96", egsdot: "\u2a98", el: "\u2a99", elinters: "\u23e7", ell: "\u2113",
186
+ els: "\u2a95", elsdot: "\u2a97", emacr: "\u0113", empty: "\u2205", emptyset: "\u2205", emptyv: "\u2205",
187
+ emsp: "\u2003", emsp13: "\u2004", emsp14: "\u2005", eng: "\u014b", ensp: "\u2002", eogon: "\u0119",
188
+ eopf: "\u{1d556}", epar: "\u22d5", eparsl: "\u29e3", eplus: "\u2a71", epsi: "\u03b5", epsilon: "\u03b5",
189
+ epsiv: "\u03f5", eqcirc: "\u2256", eqcolon: "\u2255", eqsim: "\u2242", eqslantgtr: "\u2a96", eqslantless: "\u2a95",
190
+ equals: "=", equest: "\u225f", equiv: "\u2261", equivDD: "\u2a78", eqvparsl: "\u29e5", erDot: "\u2253",
191
+ erarr: "\u2971", escr: "\u212f", esdot: "\u2250", esim: "\u2242", eta: "\u03b7", eth: "\u00f0", euml: "\u00eb",
192
+ euro: "\u20ac", excl: "!", exist: "\u2203", expectation: "\u2130", exponentiale: "\u2147", fallingdotseq: "\u2252",
193
+ fcy: "\u0444", female: "\u2640", ffilig: "\ufb03", fflig: "\ufb00", ffllig: "\ufb04", ffr: "\u{1d523}",
194
+ filig: "\ufb01", fjlig: "fj", flat: "\u266d", fllig: "\ufb02", fltns: "\u25b1", fnof: "\u0192", fopf: "\u{1d557}",
195
+ forall: "\u2200", fork: "\u22d4", forkv: "\u2ad9", fpartint: "\u2a0d", frac12: "\u00bd", frac13: "\u2153",
196
+ frac14: "\u00bc", frac15: "\u2155", frac16: "\u2159", frac18: "\u215b", frac23: "\u2154", frac25: "\u2156",
197
+ frac34: "\u00be", frac35: "\u2157", frac38: "\u215c", frac45: "\u2158", frac56: "\u215a", frac58: "\u215d",
198
+ frac78: "\u215e", frasl: "\u2044", frown: "\u2322", fscr: "\u{1d4bb}", gE: "\u2267", gEl: "\u2a8c", gacute: "\u01f5",
199
+ gamma: "\u03b3", gammad: "\u03dd", gap: "\u2a86", gbreve: "\u011f", gcirc: "\u011d", gcy: "\u0433", gdot: "\u0121",
200
+ ge: "\u2265", gel: "\u22db", geq: "\u2265", geqq: "\u2267", geqslant: "\u2a7e", ges: "\u2a7e", gescc: "\u2aa9",
201
+ gesdot: "\u2a80", gesdoto: "\u2a82", gesdotol: "\u2a84", gesl: "\u22db\ufe00", gesles: "\u2a94", gfr: "\u{1d524}",
202
+ gg: "\u226b", ggg: "\u22d9", gimel: "\u2137", gjcy: "\u0453", gl: "\u2277", glE: "\u2a92", gla: "\u2aa5",
203
+ glj: "\u2aa4", gnE: "\u2269", gnap: "\u2a8a", gnapprox: "\u2a8a", gne: "\u2a88", gneq: "\u2a88", gneqq: "\u2269",
204
+ gnsim: "\u22e7", gopf: "\u{1d558}", grave: "`", gscr: "\u210a", gsim: "\u2273", gsime: "\u2a8e", gsiml: "\u2a90",
205
+ gt: ">", gtcc: "\u2aa7", gtcir: "\u2a7a", gtdot: "\u22d7", gtlPar: "\u2995", gtquest: "\u2a7c", gtrapprox: "\u2a86",
206
+ gtrarr: "\u2978", gtrdot: "\u22d7", gtreqless: "\u22db", gtreqqless: "\u2a8c", gtrless: "\u2277", gtrsim: "\u2273",
207
+ gvertneqq: "\u2269\ufe00", gvnE: "\u2269\ufe00", hArr: "\u21d4", hairsp: "\u200a", half: "\u00bd", hamilt: "\u210b",
208
+ hardcy: "\u044a", harr: "\u2194", harrcir: "\u2948", harrw: "\u21ad", hbar: "\u210f", hcirc: "\u0125",
209
+ hearts: "\u2665", heartsuit: "\u2665", hellip: "\u2026", hercon: "\u22b9", hfr: "\u{1d525}", hksearow: "\u2925",
210
+ hkswarow: "\u2926", hoarr: "\u21ff", homtht: "\u223b", hookleftarrow: "\u21a9", hookrightarrow: "\u21aa",
211
+ hopf: "\u{1d559}", horbar: "\u2015", hscr: "\u{1d4bd}", hslash: "\u210f", hstrok: "\u0127", hybull: "\u2043",
212
+ hyphen: "\u2010", iacute: "\u00ed", ic: "\u2063", icirc: "\u00ee", icy: "\u0438", iecy: "\u0435", iexcl: "\u00a1",
213
+ iff: "\u21d4", ifr: "\u{1d526}", igrave: "\u00ec", ii: "\u2148", iiiint: "\u2a0c", iiint: "\u222d", iinfin: "\u29dc",
214
+ iiota: "\u2129", ijlig: "\u0133", imacr: "\u012b", image: "\u2111", imagline: "\u2110", imagpart: "\u2111",
215
+ imath: "\u0131", imof: "\u22b7", imped: "\u01b5", in: "\u2208", incare: "\u2105", infin: "\u221e",
216
+ infintie: "\u29dd", inodot: "\u0131", int: "\u222b", intcal: "\u22ba", integers: "\u2124", intercal: "\u22ba",
217
+ intlarhk: "\u2a17", intprod: "\u2a3c", iocy: "\u0451", iogon: "\u012f", iopf: "\u{1d55a}", iota: "\u03b9",
218
+ iprod: "\u2a3c", iquest: "\u00bf", iscr: "\u{1d4be}", isin: "\u2208", isinE: "\u22f9", isindot: "\u22f5",
219
+ isins: "\u22f4", isinsv: "\u22f3", isinv: "\u2208", it: "\u2062", itilde: "\u0129", iukcy: "\u0456", iuml: "\u00ef",
220
+ jcirc: "\u0135", jcy: "\u0439", jfr: "\u{1d527}", jmath: "\u0237", jopf: "\u{1d55b}", jscr: "\u{1d4bf}",
221
+ jsercy: "\u0458", jukcy: "\u0454", kappa: "\u03ba", kappav: "\u03f0", kcedil: "\u0137", kcy: "\u043a",
222
+ kfr: "\u{1d528}", kgreen: "\u0138", khcy: "\u0445", kjcy: "\u045c", kopf: "\u{1d55c}", kscr: "\u{1d4c0}",
223
+ lAarr: "\u21da", lArr: "\u21d0", lAtail: "\u291b", lBarr: "\u290e", lE: "\u2266", lEg: "\u2a8b", lHar: "\u2962",
224
+ lacute: "\u013a", laemptyv: "\u29b4", lagran: "\u2112", lambda: "\u03bb", lang: "\u27e8", langd: "\u2991",
225
+ langle: "\u27e8", lap: "\u2a85", laquo: "\u00ab", larr: "\u2190", larrb: "\u21e4", larrbfs: "\u291f",
226
+ larrfs: "\u291d", larrhk: "\u21a9", larrlp: "\u21ab", larrpl: "\u2939", larrsim: "\u2973", larrtl: "\u21a2",
227
+ lat: "\u2aab", latail: "\u2919", late: "\u2aad", lates: "\u2aad\ufe00", lbarr: "\u290c", lbbrk: "\u2772",
228
+ lbrace: "{", lbrack: "[", lbrke: "\u298b", lbrksld: "\u298f", lbrkslu: "\u298d", lcaron: "\u013e", lcedil: "\u013c",
229
+ lceil: "\u2308", lcub: "{", lcy: "\u043b", ldca: "\u2936", ldquo: "\u201c", ldquor: "\u201e", ldrdhar: "\u2967",
230
+ ldrushar: "\u294b", ldsh: "\u21b2", le: "\u2264", leftarrow: "\u2190", leftarrowtail: "\u21a2",
231
+ leftharpoondown: "\u21bd", leftharpoonup: "\u21bc", leftleftarrows: "\u21c7", leftrightarrow: "\u2194",
232
+ leftrightarrows: "\u21c6", leftrightharpoons: "\u21cb", leftrightsquigarrow: "\u21ad", leftthreetimes: "\u22cb",
233
+ leg: "\u22da", leq: "\u2264", leqq: "\u2266", leqslant: "\u2a7d", les: "\u2a7d", lescc: "\u2aa8", lesdot: "\u2a7f",
234
+ lesdoto: "\u2a81", lesdotor: "\u2a83", lesg: "\u22da\ufe00", lesges: "\u2a93", lessapprox: "\u2a85",
235
+ lessdot: "\u22d6", lesseqgtr: "\u22da", lesseqqgtr: "\u2a8b", lessgtr: "\u2276", lesssim: "\u2272", lfisht: "\u297c",
236
+ lfloor: "\u230a", lfr: "\u{1d529}", lg: "\u2276", lgE: "\u2a91", lhard: "\u21bd", lharu: "\u21bc", lharul: "\u296a",
237
+ lhblk: "\u2584", ljcy: "\u0459", ll: "\u226a", llarr: "\u21c7", llcorner: "\u231e", llhard: "\u296b",
238
+ lltri: "\u25fa", lmidot: "\u0140", lmoust: "\u23b0", lmoustache: "\u23b0", lnE: "\u2268", lnap: "\u2a89",
239
+ lnapprox: "\u2a89", lne: "\u2a87", lneq: "\u2a87", lneqq: "\u2268", lnsim: "\u22e6", loang: "\u27ec",
240
+ loarr: "\u21fd", lobrk: "\u27e6", longleftarrow: "\u27f5", longleftrightarrow: "\u27f7", longmapsto: "\u27fc",
241
+ longrightarrow: "\u27f6", looparrowleft: "\u21ab", looparrowright: "\u21ac", lopar: "\u2985", lopf: "\u{1d55d}",
242
+ loplus: "\u2a2d", lotimes: "\u2a34", lowast: "\u2217", lowbar: "_", loz: "\u25ca", lozenge: "\u25ca", lozf: "\u29eb",
243
+ lpar: "(", lparlt: "\u2993", lrarr: "\u21c6", lrcorner: "\u231f", lrhar: "\u21cb", lrhard: "\u296d", lrm: "\u200e",
244
+ lrtri: "\u22bf", lsaquo: "\u2039", lscr: "\u{1d4c1}", lsh: "\u21b0", lsim: "\u2272", lsime: "\u2a8d",
245
+ lsimg: "\u2a8f", lsqb: "[", lsquo: "\u2018", lsquor: "\u201a", lstrok: "\u0142", lt: "<", ltcc: "\u2aa6",
246
+ ltcir: "\u2a79", ltdot: "\u22d6", lthree: "\u22cb", ltimes: "\u22c9", ltlarr: "\u2976", ltquest: "\u2a7b",
247
+ ltrPar: "\u2996", ltri: "\u25c3", ltrie: "\u22b4", ltrif: "\u25c2", lurdshar: "\u294a", luruhar: "\u2966",
248
+ lvertneqq: "\u2268\ufe00", lvnE: "\u2268\ufe00", mDDot: "\u223a", macr: "\u00af", male: "\u2642", malt: "\u2720",
249
+ maltese: "\u2720", map: "\u21a6", mapsto: "\u21a6", mapstodown: "\u21a7", mapstoleft: "\u21a4", mapstoup: "\u21a5",
250
+ marker: "\u25ae", mcomma: "\u2a29", mcy: "\u043c", mdash: "\u2014", measuredangle: "\u2221", mfr: "\u{1d52a}",
251
+ mho: "\u2127", micro: "\u00b5", mid: "\u2223", midast: "*", midcir: "\u2af0", middot: "\u00b7", minus: "\u2212",
252
+ minusb: "\u229f", minusd: "\u2238", minusdu: "\u2a2a", mlcp: "\u2adb", mldr: "\u2026", mnplus: "\u2213",
253
+ models: "\u22a7", mopf: "\u{1d55e}", mp: "\u2213", mscr: "\u{1d4c2}", mstpos: "\u223e", mu: "\u03bc",
254
+ multimap: "\u22b8", mumap: "\u22b8", nGg: "\u22d9\u0338", nGt: "\u226b\u20d2", nGtv: "\u226b\u0338",
255
+ nLeftarrow: "\u21cd", nLeftrightarrow: "\u21ce", nLl: "\u22d8\u0338", nLt: "\u226a\u20d2", nLtv: "\u226a\u0338",
256
+ nRightarrow: "\u21cf", nVDash: "\u22af", nVdash: "\u22ae", nabla: "\u2207", nacute: "\u0144", nang: "\u2220\u20d2",
257
+ nap: "\u2249", napE: "\u2a70\u0338", napid: "\u224b\u0338", napos: "\u0149", napprox: "\u2249", natur: "\u266e",
258
+ natural: "\u266e", naturals: "\u2115", nbsp: "\u00a0", nbump: "\u224e\u0338", nbumpe: "\u224f\u0338", ncap: "\u2a43",
259
+ ncaron: "\u0148", ncedil: "\u0146", ncong: "\u2247", ncongdot: "\u2a6d\u0338", ncup: "\u2a42", ncy: "\u043d",
260
+ ndash: "\u2013", ne: "\u2260", neArr: "\u21d7", nearhk: "\u2924", nearr: "\u2197", nearrow: "\u2197",
261
+ nedot: "\u2250\u0338", nequiv: "\u2262", nesear: "\u2928", nesim: "\u2242\u0338", nexist: "\u2204",
262
+ nexists: "\u2204", nfr: "\u{1d52b}", ngE: "\u2267\u0338", nge: "\u2271", ngeq: "\u2271", ngeqq: "\u2267\u0338",
263
+ ngeqslant: "\u2a7e\u0338", nges: "\u2a7e\u0338", ngsim: "\u2275", ngt: "\u226f", ngtr: "\u226f", nhArr: "\u21ce",
264
+ nharr: "\u21ae", nhpar: "\u2af2", ni: "\u220b", nis: "\u22fc", nisd: "\u22fa", niv: "\u220b", njcy: "\u045a",
265
+ nlArr: "\u21cd", nlE: "\u2266\u0338", nlarr: "\u219a", nldr: "\u2025", nle: "\u2270", nleftarrow: "\u219a",
266
+ nleftrightarrow: "\u21ae", nleq: "\u2270", nleqq: "\u2266\u0338", nleqslant: "\u2a7d\u0338", nles: "\u2a7d\u0338",
267
+ nless: "\u226e", nlsim: "\u2274", nlt: "\u226e", nltri: "\u22ea", nltrie: "\u22ec", nmid: "\u2224",
268
+ nopf: "\u{1d55f}", not: "\u00ac", notin: "\u2209", notinE: "\u22f9\u0338", notindot: "\u22f5\u0338",
269
+ notinva: "\u2209", notinvb: "\u22f7", notinvc: "\u22f6", notni: "\u220c", notniva: "\u220c", notnivb: "\u22fe",
270
+ notnivc: "\u22fd", npar: "\u2226", nparallel: "\u2226", nparsl: "\u2afd\u20e5", npart: "\u2202\u0338",
271
+ npolint: "\u2a14", npr: "\u2280", nprcue: "\u22e0", npre: "\u2aaf\u0338", nprec: "\u2280", npreceq: "\u2aaf\u0338",
272
+ nrArr: "\u21cf", nrarr: "\u219b", nrarrc: "\u2933\u0338", nrarrw: "\u219d\u0338", nrightarrow: "\u219b",
273
+ nrtri: "\u22eb", nrtrie: "\u22ed", nsc: "\u2281", nsccue: "\u22e1", nsce: "\u2ab0\u0338", nscr: "\u{1d4c3}",
274
+ nshortmid: "\u2224", nshortparallel: "\u2226", nsim: "\u2241", nsime: "\u2244", nsimeq: "\u2244", nsmid: "\u2224",
275
+ nspar: "\u2226", nsqsube: "\u22e2", nsqsupe: "\u22e3", nsub: "\u2284", nsubE: "\u2ac5\u0338", nsube: "\u2288",
276
+ nsubset: "\u2282\u20d2", nsubseteq: "\u2288", nsubseteqq: "\u2ac5\u0338", nsucc: "\u2281", nsucceq: "\u2ab0\u0338",
277
+ nsup: "\u2285", nsupE: "\u2ac6\u0338", nsupe: "\u2289", nsupset: "\u2283\u20d2", nsupseteq: "\u2289",
278
+ nsupseteqq: "\u2ac6\u0338", ntgl: "\u2279", ntilde: "\u00f1", ntlg: "\u2278", ntriangleleft: "\u22ea",
279
+ ntrianglelefteq: "\u22ec", ntriangleright: "\u22eb", ntrianglerighteq: "\u22ed", nu: "\u03bd", num: "#",
280
+ numero: "\u2116", numsp: "\u2007", nvDash: "\u22ad", nvHarr: "\u2904", nvap: "\u224d\u20d2", nvdash: "\u22ac",
281
+ nvge: "\u2265\u20d2", nvgt: ">\u20d2", nvinfin: "\u29de", nvlArr: "\u2902", nvle: "\u2264\u20d2", nvlt: "<\u20d2",
282
+ nvltrie: "\u22b4\u20d2", nvrArr: "\u2903", nvrtrie: "\u22b5\u20d2", nvsim: "\u223c\u20d2", nwArr: "\u21d6",
283
+ nwarhk: "\u2923", nwarr: "\u2196", nwarrow: "\u2196", nwnear: "\u2927", oS: "\u24c8", oacute: "\u00f3",
284
+ oast: "\u229b", ocir: "\u229a", ocirc: "\u00f4", ocy: "\u043e", odash: "\u229d", odblac: "\u0151", odiv: "\u2a38",
285
+ odot: "\u2299", odsold: "\u29bc", oelig: "\u0153", ofcir: "\u29bf", ofr: "\u{1d52c}", ogon: "\u02db",
286
+ ograve: "\u00f2", ogt: "\u29c1", ohbar: "\u29b5", ohm: "\u03a9", oint: "\u222e", olarr: "\u21ba", olcir: "\u29be",
287
+ olcross: "\u29bb", oline: "\u203e", olt: "\u29c0", omacr: "\u014d", omega: "\u03c9", omicron: "\u03bf",
288
+ omid: "\u29b6", ominus: "\u2296", oopf: "\u{1d560}", opar: "\u29b7", operp: "\u29b9", oplus: "\u2295", or: "\u2228",
289
+ orarr: "\u21bb", ord: "\u2a5d", order: "\u2134", orderof: "\u2134", ordf: "\u00aa", ordm: "\u00ba", origof: "\u22b6",
290
+ oror: "\u2a56", orslope: "\u2a57", orv: "\u2a5b", oscr: "\u2134", oslash: "\u00f8", osol: "\u2298", otilde: "\u00f5",
291
+ otimes: "\u2297", otimesas: "\u2a36", ouml: "\u00f6", ovbar: "\u233d", par: "\u2225", para: "\u00b6",
292
+ parallel: "\u2225", parsim: "\u2af3", parsl: "\u2afd", part: "\u2202", pcy: "\u043f", percnt: "%", period: ".",
293
+ permil: "\u2030", perp: "\u22a5", pertenk: "\u2031", pfr: "\u{1d52d}", phi: "\u03c6", phiv: "\u03d5",
294
+ phmmat: "\u2133", phone: "\u260e", pi: "\u03c0", pitchfork: "\u22d4", piv: "\u03d6", planck: "\u210f",
295
+ planckh: "\u210e", plankv: "\u210f", plus: "+", plusacir: "\u2a23", plusb: "\u229e", pluscir: "\u2a22",
296
+ plusdo: "\u2214", plusdu: "\u2a25", pluse: "\u2a72", plusmn: "\u00b1", plussim: "\u2a26", plustwo: "\u2a27",
297
+ pm: "\u00b1", pointint: "\u2a15", popf: "\u{1d561}", pound: "\u00a3", pr: "\u227a", prE: "\u2ab3", prap: "\u2ab7",
298
+ prcue: "\u227c", pre: "\u2aaf", prec: "\u227a", precapprox: "\u2ab7", preccurlyeq: "\u227c", preceq: "\u2aaf",
299
+ precnapprox: "\u2ab9", precneqq: "\u2ab5", precnsim: "\u22e8", precsim: "\u227e", prime: "\u2032", primes: "\u2119",
300
+ prnE: "\u2ab5", prnap: "\u2ab9", prnsim: "\u22e8", prod: "\u220f", profalar: "\u232e", profline: "\u2312",
301
+ profsurf: "\u2313", prop: "\u221d", propto: "\u221d", prsim: "\u227e", prurel: "\u22b0", pscr: "\u{1d4c5}",
302
+ psi: "\u03c8", puncsp: "\u2008", qfr: "\u{1d52e}", qint: "\u2a0c", qopf: "\u{1d562}", qprime: "\u2057",
303
+ qscr: "\u{1d4c6}", quaternions: "\u210d", quatint: "\u2a16", quest: "?", questeq: "\u225f", quot: "\u0022",
304
+ rAarr: "\u21db", rArr: "\u21d2", rAtail: "\u291c", rBarr: "\u290f", rHar: "\u2964", race: "\u223d\u0331",
305
+ racute: "\u0155", radic: "\u221a", raemptyv: "\u29b3", rang: "\u27e9", rangd: "\u2992", range: "\u29a5",
306
+ rangle: "\u27e9", raquo: "\u00bb", rarr: "\u2192", rarrap: "\u2975", rarrb: "\u21e5", rarrbfs: "\u2920",
307
+ rarrc: "\u2933", rarrfs: "\u291e", rarrhk: "\u21aa", rarrlp: "\u21ac", rarrpl: "\u2945", rarrsim: "\u2974",
308
+ rarrtl: "\u21a3", rarrw: "\u219d", ratail: "\u291a", ratio: "\u2236", rationals: "\u211a", rbarr: "\u290d",
309
+ rbbrk: "\u2773", rbrace: "}", rbrack: "]", rbrke: "\u298c", rbrksld: "\u298e", rbrkslu: "\u2990", rcaron: "\u0159",
310
+ rcedil: "\u0157", rceil: "\u2309", rcub: "}", rcy: "\u0440", rdca: "\u2937", rdldhar: "\u2969", rdquo: "\u201d",
311
+ rdquor: "\u201d", rdsh: "\u21b3", real: "\u211c", realine: "\u211b", realpart: "\u211c", reals: "\u211d",
312
+ rect: "\u25ad", reg: "\u00ae", rfisht: "\u297d", rfloor: "\u230b", rfr: "\u{1d52f}", rhard: "\u21c1",
313
+ rharu: "\u21c0", rharul: "\u296c", rho: "\u03c1", rhov: "\u03f1", rightarrow: "\u2192", rightarrowtail: "\u21a3",
314
+ rightharpoondown: "\u21c1", rightharpoonup: "\u21c0", rightleftarrows: "\u21c4", rightleftharpoons: "\u21cc",
315
+ rightrightarrows: "\u21c9", rightsquigarrow: "\u219d", rightthreetimes: "\u22cc", ring: "\u02da",
316
+ risingdotseq: "\u2253", rlarr: "\u21c4", rlhar: "\u21cc", rlm: "\u200f", rmoust: "\u23b1", rmoustache: "\u23b1",
317
+ rnmid: "\u2aee", roang: "\u27ed", roarr: "\u21fe", robrk: "\u27e7", ropar: "\u2986", ropf: "\u{1d563}",
318
+ roplus: "\u2a2e", rotimes: "\u2a35", rpar: ")", rpargt: "\u2994", rppolint: "\u2a12", rrarr: "\u21c9",
319
+ rsaquo: "\u203a", rscr: "\u{1d4c7}", rsh: "\u21b1", rsqb: "]", rsquo: "\u2019", rsquor: "\u2019", rthree: "\u22cc",
320
+ rtimes: "\u22ca", rtri: "\u25b9", rtrie: "\u22b5", rtrif: "\u25b8", rtriltri: "\u29ce", ruluhar: "\u2968",
321
+ rx: "\u211e", sacute: "\u015b", sbquo: "\u201a", sc: "\u227b", scE: "\u2ab4", scap: "\u2ab8", scaron: "\u0161",
322
+ sccue: "\u227d", sce: "\u2ab0", scedil: "\u015f", scirc: "\u015d", scnE: "\u2ab6", scnap: "\u2aba", scnsim: "\u22e9",
323
+ scpolint: "\u2a13", scsim: "\u227f", scy: "\u0441", sdot: "\u22c5", sdotb: "\u22a1", sdote: "\u2a66",
324
+ seArr: "\u21d8", searhk: "\u2925", searr: "\u2198", searrow: "\u2198", sect: "\u00a7", semi: ";", seswar: "\u2929",
325
+ setminus: "\u2216", setmn: "\u2216", sext: "\u2736", sfr: "\u{1d530}", sfrown: "\u2322", sharp: "\u266f",
326
+ shchcy: "\u0449", shcy: "\u0448", shortmid: "\u2223", shortparallel: "\u2225", shy: "\u00ad", sigma: "\u03c3",
327
+ sigmaf: "\u03c2", sigmav: "\u03c2", sim: "\u223c", simdot: "\u2a6a", sime: "\u2243", simeq: "\u2243", simg: "\u2a9e",
328
+ simgE: "\u2aa0", siml: "\u2a9d", simlE: "\u2a9f", simne: "\u2246", simplus: "\u2a24", simrarr: "\u2972",
329
+ slarr: "\u2190", smallsetminus: "\u2216", smashp: "\u2a33", smeparsl: "\u29e4", smid: "\u2223", smile: "\u2323",
330
+ smt: "\u2aaa", smte: "\u2aac", smtes: "\u2aac\ufe00", softcy: "\u044c", sol: "/", solb: "\u29c4", solbar: "\u233f",
331
+ sopf: "\u{1d564}", spades: "\u2660", spadesuit: "\u2660", spar: "\u2225", sqcap: "\u2293", sqcaps: "\u2293\ufe00",
332
+ sqcup: "\u2294", sqcups: "\u2294\ufe00", sqsub: "\u228f", sqsube: "\u2291", sqsubset: "\u228f", sqsubseteq: "\u2291",
333
+ sqsup: "\u2290", sqsupe: "\u2292", sqsupset: "\u2290", sqsupseteq: "\u2292", squ: "\u25a1", square: "\u25a1",
334
+ squarf: "\u25aa", squf: "\u25aa", srarr: "\u2192", sscr: "\u{1d4c8}", ssetmn: "\u2216", ssmile: "\u2323",
335
+ sstarf: "\u22c6", star: "\u2606", starf: "\u2605", straightepsilon: "\u03f5", straightphi: "\u03d5", strns: "\u00af",
336
+ sub: "\u2282", subE: "\u2ac5", subdot: "\u2abd", sube: "\u2286", subedot: "\u2ac3", submult: "\u2ac1",
337
+ subnE: "\u2acb", subne: "\u228a", subplus: "\u2abf", subrarr: "\u2979", subset: "\u2282", subseteq: "\u2286",
338
+ subseteqq: "\u2ac5", subsetneq: "\u228a", subsetneqq: "\u2acb", subsim: "\u2ac7", subsub: "\u2ad5", subsup: "\u2ad3",
339
+ succ: "\u227b", succapprox: "\u2ab8", succcurlyeq: "\u227d", succeq: "\u2ab0", succnapprox: "\u2aba",
340
+ succneqq: "\u2ab6", succnsim: "\u22e9", succsim: "\u227f", sum: "\u2211", sung: "\u266a", sup: "\u2283",
341
+ sup1: "\u00b9", sup2: "\u00b2", sup3: "\u00b3", supE: "\u2ac6", supdot: "\u2abe", supdsub: "\u2ad8", supe: "\u2287",
342
+ supedot: "\u2ac4", suphsol: "\u27c9", suphsub: "\u2ad7", suplarr: "\u297b", supmult: "\u2ac2", supnE: "\u2acc",
343
+ supne: "\u228b", supplus: "\u2ac0", supset: "\u2283", supseteq: "\u2287", supseteqq: "\u2ac6", supsetneq: "\u228b",
344
+ supsetneqq: "\u2acc", supsim: "\u2ac8", supsub: "\u2ad4", supsup: "\u2ad6", swArr: "\u21d9", swarhk: "\u2926",
345
+ swarr: "\u2199", swarrow: "\u2199", swnwar: "\u292a", szlig: "\u00df", target: "\u2316", tau: "\u03c4",
346
+ tbrk: "\u23b4", tcaron: "\u0165", tcedil: "\u0163", tcy: "\u0442", tdot: "\u20db", telrec: "\u2315",
347
+ tfr: "\u{1d531}", there4: "\u2234", therefore: "\u2234", theta: "\u03b8", thetasym: "\u03d1", thetav: "\u03d1",
348
+ thickapprox: "\u2248", thicksim: "\u223c", thinsp: "\u2009", thkap: "\u2248", thksim: "\u223c", thorn: "\u00fe",
349
+ tilde: "\u02dc", times: "\u00d7", timesb: "\u22a0", timesbar: "\u2a31", timesd: "\u2a30", tint: "\u222d",
350
+ toea: "\u2928", top: "\u22a4", topbot: "\u2336", topcir: "\u2af1", topf: "\u{1d565}", topfork: "\u2ada",
351
+ tosa: "\u2929", tprime: "\u2034", trade: "\u2122", triangle: "\u25b5", triangledown: "\u25bf",
352
+ triangleleft: "\u25c3", trianglelefteq: "\u22b4", triangleq: "\u225c", triangleright: "\u25b9",
353
+ trianglerighteq: "\u22b5", tridot: "\u25ec", trie: "\u225c", triminus: "\u2a3a", triplus: "\u2a39", trisb: "\u29cd",
354
+ tritime: "\u2a3b", trpezium: "\u23e2", tscr: "\u{1d4c9}", tscy: "\u0446", tshcy: "\u045b", tstrok: "\u0167",
355
+ twixt: "\u226c", twoheadleftarrow: "\u219e", twoheadrightarrow: "\u21a0", uArr: "\u21d1", uHar: "\u2963",
356
+ uacute: "\u00fa", uarr: "\u2191", ubrcy: "\u045e", ubreve: "\u016d", ucirc: "\u00fb", ucy: "\u0443", udarr: "\u21c5",
357
+ udblac: "\u0171", udhar: "\u296e", ufisht: "\u297e", ufr: "\u{1d532}", ugrave: "\u00f9", uharl: "\u21bf",
358
+ uharr: "\u21be", uhblk: "\u2580", ulcorn: "\u231c", ulcorner: "\u231c", ulcrop: "\u230f", ultri: "\u25f8",
359
+ umacr: "\u016b", uml: "\u00a8", uogon: "\u0173", uopf: "\u{1d566}", uparrow: "\u2191", updownarrow: "\u2195",
360
+ upharpoonleft: "\u21bf", upharpoonright: "\u21be", uplus: "\u228e", upsi: "\u03c5", upsih: "\u03d2",
361
+ upsilon: "\u03c5", upuparrows: "\u21c8", urcorn: "\u231d", urcorner: "\u231d", urcrop: "\u230e", uring: "\u016f",
362
+ urtri: "\u25f9", uscr: "\u{1d4ca}", utdot: "\u22f0", utilde: "\u0169", utri: "\u25b5", utrif: "\u25b4",
363
+ uuarr: "\u21c8", uuml: "\u00fc", uwangle: "\u29a7", vArr: "\u21d5", vBar: "\u2ae8", vBarv: "\u2ae9", vDash: "\u22a8",
364
+ vangrt: "\u299c", varepsilon: "\u03f5", varkappa: "\u03f0", varnothing: "\u2205", varphi: "\u03d5", varpi: "\u03d6",
365
+ varpropto: "\u221d", varr: "\u2195", varrho: "\u03f1", varsigma: "\u03c2", varsubsetneq: "\u228a\ufe00",
366
+ varsubsetneqq: "\u2acb\ufe00", varsupsetneq: "\u228b\ufe00", varsupsetneqq: "\u2acc\ufe00", vartheta: "\u03d1",
367
+ vartriangleleft: "\u22b2", vartriangleright: "\u22b3", vcy: "\u0432", vdash: "\u22a2", vee: "\u2228",
368
+ veebar: "\u22bb", veeeq: "\u225a", vellip: "\u22ee", verbar: "|", vert: "|", vfr: "\u{1d533}", vltri: "\u22b2",
369
+ vnsub: "\u2282\u20d2", vnsup: "\u2283\u20d2", vopf: "\u{1d567}", vprop: "\u221d", vrtri: "\u22b3", vscr: "\u{1d4cb}",
370
+ vsubnE: "\u2acb\ufe00", vsubne: "\u228a\ufe00", vsupnE: "\u2acc\ufe00", vsupne: "\u228b\ufe00", vzigzag: "\u299a",
371
+ wcirc: "\u0175", wedbar: "\u2a5f", wedge: "\u2227", wedgeq: "\u2259", weierp: "\u2118", wfr: "\u{1d534}",
372
+ wopf: "\u{1d568}", wp: "\u2118", wr: "\u2240", wreath: "\u2240", wscr: "\u{1d4cc}", xcap: "\u22c2", xcirc: "\u25ef",
373
+ xcup: "\u22c3", xdtri: "\u25bd", xfr: "\u{1d535}", xhArr: "\u27fa", xharr: "\u27f7", xi: "\u03be", xlArr: "\u27f8",
374
+ xlarr: "\u27f5", xmap: "\u27fc", xnis: "\u22fb", xodot: "\u2a00", xopf: "\u{1d569}", xoplus: "\u2a01",
375
+ xotime: "\u2a02", xrArr: "\u27f9", xrarr: "\u27f6", xscr: "\u{1d4cd}", xsqcup: "\u2a06", xuplus: "\u2a04",
376
+ xutri: "\u25b3", xvee: "\u22c1", xwedge: "\u22c0", yacute: "\u00fd", yacy: "\u044f", ycirc: "\u0177", ycy: "\u044b",
377
+ yen: "\u00a5", yfr: "\u{1d536}", yicy: "\u0457", yopf: "\u{1d56a}", yscr: "\u{1d4ce}", yucy: "\u044e",
378
+ yuml: "\u00ff", zacute: "\u017a", zcaron: "\u017e", zcy: "\u0437", zdot: "\u017c", zeetrf: "\u2128", zeta: "\u03b6",
379
+ zfr: "\u{1d537}", zhcy: "\u0436", zigrarr: "\u21dd", zopf: "\u{1d56b}", zscr: "\u{1d4cf}", zwj: "\u200d",
380
+ zwnj: "\u200c",
381
+ };
382
+ /** The characters `name`, a reference's name without its `&` and `;`, stands for, if it names any. */
383
+ export function namedReference(name) {
384
+ // An own key only: `constructor` names nothing here, whatever the prototype holds.
385
+ return Object.hasOwn(NAMED_REFERENCES, name) ? NAMED_REFERENCES[name] : undefined;
386
+ }
@@ -2,7 +2,7 @@
2
2
  * Layout — divides the screen into rectangular regions.
3
3
  */
4
4
  import { Segment } from "../core/segment.js";
5
- import type { Renderable, Measurable, RenderOptions } from "../core/protocol.js";
5
+ import type { Composite, Renderable, Measurable, RenderOptions } from "../core/protocol.js";
6
6
  import type { CellCol } from "../core/cells.js";
7
7
  import type { Weight } from "./ratio.js";
8
8
  export interface LayoutOptions {
@@ -12,7 +12,7 @@ export interface LayoutOptions {
12
12
  minimumSize?: number;
13
13
  visible?: boolean;
14
14
  }
15
- export declare class Layout implements Renderable, Measurable {
15
+ export declare class Layout implements Renderable, Measurable, Composite {
16
16
  name: string | undefined;
17
17
  visible: boolean;
18
18
  private _ratio;
@@ -57,6 +57,7 @@ export declare class Layout implements Renderable, Measurable {
57
57
  update(renderable: Renderable | string): void;
58
58
  getByName(name: string): Layout | undefined;
59
59
  render(rawOptions: RenderOptions): Iterable<Segment>;
60
+ contents(): Iterable<Renderable>;
60
61
  private _renderColumn;
61
62
  private _renderRow;
62
63
  /**
@@ -4,6 +4,7 @@
4
4
  import { Segment } from "../core/segment.js";
5
5
  import { embed } from "./embed.js";
6
6
  import { fitHeight, regionRows, stackedHeight, withBoundedWidth, withCellWidth, } from "../core/protocol.js";
7
+ import { render } from "../core/protocol.js";
7
8
  import { Measurement } from "../core/measure.js";
8
9
  import { cellCount } from "../core/cells.js";
9
10
  import { ratioBudget, ratioResolve, shareWeight } from "./ratio.js";
@@ -18,7 +19,7 @@ import { ratioBudget, ratioResolve, shareWeight } from "./ratio.js";
18
19
  */
19
20
  function paneLines(pane, options, rows) {
20
21
  const height = rows === undefined ? stackedHeight(options.height) : { rows, exact: true };
21
- return fitHeight(Segment.splitLines(pane.render({ ...options, height })), height);
22
+ return fitHeight(Segment.splitLines(render(pane, { ...options, height })), height);
22
23
  }
23
24
  export class Layout {
24
25
  name;
@@ -128,7 +129,7 @@ export class Layout {
128
129
  // ended, as the split paths below end theirs: a leaf stacked in a
129
130
  // `Group` is still a region of lines.
130
131
  if (this._renderable) {
131
- const lines = fitHeight(Segment.splitLines(this._renderable.render(options)), options.height);
132
+ const lines = fitHeight(Segment.splitLines(render(this._renderable, options)), options.height);
132
133
  for (const line of lines) {
133
134
  yield* Segment.adjustLineLength(line, options.maxWidth);
134
135
  yield Segment.line();
@@ -146,6 +147,18 @@ export class Layout {
146
147
  yield* this._renderColumn(visibleChildren, options);
147
148
  }
148
149
  }
150
+ // What `render` draws, decided as it decides it: nothing when hidden, a
151
+ // leaf's content, or the visible panes of a split.
152
+ *contents() {
153
+ if (!this.visible)
154
+ return;
155
+ if (this._isLeaf) {
156
+ if (this._renderable)
157
+ yield this._renderable;
158
+ return;
159
+ }
160
+ yield* this._children.filter((c) => c.visible);
161
+ }
149
162
  *_renderColumn(children, options) {
150
163
  // Each pane gets full width and its share of the region. With no region —
151
164
  // a ceiling, or no budget at all — a pane's share is its declared `size`,
@@ -16,7 +16,7 @@
16
16
  * it — so a consumer can take one without the others.
17
17
  */
18
18
  import { Segment } from "../core/segment.js";
19
- import type { Measurable, Renderable, RenderOptions } from "../core/protocol.js";
19
+ import type { Composite, Measurable, Renderable, RenderOptions } from "../core/protocol.js";
20
20
  import type { Viewport } from "./viewport.js";
21
21
  export interface ListViewOptions {
22
22
  /** Blank lines between one item and the next. Absent, none. */
@@ -27,7 +27,7 @@ export interface ListViewOptions {
27
27
  */
28
28
  context?: number;
29
29
  }
30
- export declare class ListView implements Renderable, Measurable {
30
+ export declare class ListView implements Renderable, Measurable, Composite {
31
31
  readonly viewport: Viewport;
32
32
  readonly items: readonly Renderable[];
33
33
  readonly selected: number;
@@ -35,6 +35,7 @@ export declare class ListView implements Renderable, Measurable {
35
35
  readonly context: number;
36
36
  constructor(viewport: Viewport, items: readonly Renderable[], selected: number, options?: ListViewOptions);
37
37
  render(rawOptions: RenderOptions): Iterable<Segment>;
38
+ contents(): Iterable<Renderable>;
38
39
  measure(rawOptions: RenderOptions): {
39
40
  minimum: number;
40
41
  maximum: number;
@@ -17,7 +17,7 @@
17
17
  */
18
18
  import { Segment } from "../core/segment.js";
19
19
  import { Measurement, measureRenderables } from "../core/measure.js";
20
- import { withBoundedWidth, withCellWidth } from "../core/protocol.js";
20
+ import { drawsNothing, render, withBoundedWidth, withCellWidth } from "../core/protocol.js";
21
21
  function lineCount(name, value) {
22
22
  if (!Number.isInteger(value) || value < 0)
23
23
  throw new RangeError(`ListView: ${name} ${value} is not a whole number of lines`);
@@ -45,7 +45,7 @@ export class ListView {
45
45
  const { height: _height, ...rest } = bounded;
46
46
  const options = { ...rest, maxWidth: this.viewport.contentWidth(rest.maxWidth) };
47
47
  const gap = Array.from({ length: this.gap }, () => []);
48
- const drawn = this.items.map((item) => Segment.splitLines(item.render(options)));
48
+ const drawn = this.items.map((item) => Segment.splitLines(render(item, options)));
49
49
  // The gap sits between items, so every item before the selected one
50
50
  // brings its lines and one gap.
51
51
  const start = drawn.slice(0, this.selected).reduce((total, item) => total + item.length + this.gap, 0);
@@ -61,9 +61,16 @@ export class ListView {
61
61
  };
62
62
  // A range reaching past either end is clamped by the viewport, which holds
63
63
  // its offset to the lines that exist. Followed, not ensured: the wheel can
64
- // scroll away from the selection until the selection moves.
65
- this.viewport.follow(start - this.context, end + this.context);
66
- yield* this.viewport.render(bounded);
64
+ // scroll away from the selection until the selection moves. Items handed
65
+ // no column are held, not drawn, and cover no lines, so they name no range
66
+ // and the one last followed stands; followed, it would read as a move.
67
+ if (!drawsNothing(options))
68
+ this.viewport.follow(start - this.context, end + this.context);
69
+ yield* render(this.viewport, bounded);
70
+ }
71
+ *contents() {
72
+ yield* this.items;
73
+ yield this.viewport;
67
74
  }
68
75
  measure(rawOptions) {
69
76
  // Stacked, the items are as wide as the widest of them, plus whatever
@@ -28,7 +28,7 @@ import { frameRate, systemClock } from "../core/clock.js";
28
28
  import { Console } from "../core/console.js";
29
29
  import { Segment } from "../core/segment.js";
30
30
  import { FinalFramePainter, SurfacePainter } from "../core/paint.js";
31
- import { fitHeight } from "../core/protocol.js";
31
+ import { fitHeight, render } from "../core/protocol.js";
32
32
  // [LAW:parse-dont-validate] The one shape Live holds: a renderable becomes
33
33
  // the view that answers it at every t, where it is given, so no frame asks
34
34
  // which it was.
@@ -174,7 +174,7 @@ export class Live {
174
174
  // back — its overflow policy, then `fitHeight`, which pads only a region.
175
175
  const options = this._console.options;
176
176
  const height = this._painter.height(options.height.rows);
177
- const lines = Segment.splitLines(renderable.render({ ...options, height }));
177
+ const lines = Segment.splitLines(render(renderable, { ...options, height }));
178
178
  return { t, lines: fitHeight(this._overflow(lines, height.rows), height) };
179
179
  }
180
180
  // What the console writes goes where the frame was, and the frame is painted