rapier-markdown-kit 1.1.49 → 1.1.51
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 +11 -3
- package/dist/kit/conformance/README.md +6 -6
- package/dist/kit/conformance/run.mjs +1 -1
- package/package.json +19 -1
package/README.md
CHANGED
|
@@ -1,7 +1,15 @@
|
|
|
1
1
|
# rapier-markdown-kit
|
|
2
2
|
|
|
3
|
-
Read, write and style Self-contained Markdown
|
|
4
|
-
|
|
3
|
+
Read, write and style Self-contained Markdown in your own code: one `.md` file that carries its pictures, layout
|
|
4
|
+
and colour.
|
|
5
|
+
|
|
6
|
+
- Everything past CommonMark and GFM is an HTML comment other readers ignore or an ordinary reference
|
|
7
|
+
definition, so every Markdown app still reads the file.
|
|
8
|
+
- One stylesheet renders the document as the editor and its exported page do.
|
|
9
|
+
- The line planner flows text around a picture's real shape; a conformance suite of thirteen documents runs
|
|
10
|
+
any implementation against it.
|
|
11
|
+
- Will/1 markers say which regions an agent may edit, only add to, or must keep.
|
|
12
|
+
- MIT, no dependencies, Node 22 or newer.
|
|
5
13
|
|
|
6
14
|
To hand a person the whole editor around their document as one offline file, run `npx rapier-html notes.md`.
|
|
7
15
|
The same command accepts a drawing or an SVG.
|
|
@@ -217,7 +225,7 @@ node node_modules/rapier-markdown-kit/dist/kit/conformance/run.mjs
|
|
|
217
225
|
|
|
218
226
|
Thirteen small documents, each with the line boxes Rapier's own export produced for it. **Preservation**: every
|
|
219
227
|
layout comment round-trips exactly (12 of 12 that carry one). **Presentation**: how closely the planned lines match
|
|
220
|
-
(
|
|
228
|
+
(3 agree within 2px, 10 are close with a named cause, none differ; `dist/kit/conformance/README.md`).
|
|
221
229
|
`--impl path/to/module.mjs` runs another implementation against the same documents; `--tolerance 2` sets the pixel
|
|
222
230
|
tolerance.
|
|
223
231
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# The conformance kit
|
|
2
2
|
|
|
3
3
|
Thirteen small documents, each covering one placement fact from [the Markdown
|
|
4
|
-
standard](
|
|
4
|
+
standard](https://rapier.website/markdown-standard): inline (no layout comment), width/x/align, `wrap=around`
|
|
5
5
|
with a real alpha silhouette, `wrap=box`, `behind`, `front`, `rotate=` on a plain raster, a foreign
|
|
6
6
|
SVG "drawing" already turned in its own bytes, a ring drawing whose unfilled interior takes a line of
|
|
7
7
|
text, both-sides wrapping around a centred picture, the neighbour search skipping a second, unrelated
|
|
@@ -75,18 +75,18 @@ Prints two separate tables (preservation and presentation are different claims):
|
|
|
75
75
|
- **Presentation** — does the planned line count and each line's left/right agree with the recorded
|
|
76
76
|
fact, within `--tolerance` pixels (default 2). This depends entirely on the measurer supplied;
|
|
77
77
|
`run.mjs`'s own default (`measurer.mjs`, R77) replays Rapier's real Pretext trace wherever one was
|
|
78
|
-
captured, falling back to the character-glyph sum only where none exists. Current result: **
|
|
79
|
-
AGREE outright** (`04-wrap-box`, `
|
|
78
|
+
captured, falling back to the character-glyph sum only where none exists. Current result: **3/13
|
|
79
|
+
AGREE outright** (`04-wrap-box`, `10-both-sides`, `12-heading-barrier` — every
|
|
80
80
|
one a case where the compared edge is pure obstacle-slot geometry, unaffected by text fidelity
|
|
81
|
-
either way), **
|
|
81
|
+
either way), **10 CLOSE, 0 DIFFERS**, each CLOSE row's cause named rather than left as "close
|
|
82
82
|
enough": `01-inline`/`02-width-x-align`/`05-behind`/`06-front` have no real trace at all (see
|
|
83
83
|
`measurements` above) so still rest on the character-sum fallback; `03-wrap-around-silhouette`,
|
|
84
84
|
`11-neighbour-skips-image` and `13-rtl-text` run Pretext for real during export (`13-rtl-text` at
|
|
85
85
|
100% — every query of its own answered from the real trace) yet still carry a small, constant
|
|
86
|
-
left-edge delta (
|
|
86
|
+
left-edge delta (9.64px) that is a picture-obstacle *geometry* fact, not a text one: their
|
|
87
87
|
`profileHint` is a hand-computed, quantized alpha-band descriptor for a picture Rapier's own export
|
|
88
88
|
never serializes an occupancy descriptor for, and that descriptor's own precision — not the
|
|
89
|
-
measurer — is the residual gap. `09-drawing-ring-interior` plans the recorded 14 lines, but one row
|
|
89
|
+
measurer — is the residual gap. `07-rotate-raster` and `08-drawing-rotation` have right-edge geometry deltas of 4.48px and 5.31px, with no measurer calls. `09-drawing-ring-interior` plans the recorded 14 lines, but one row
|
|
90
90
|
differs by a whole slot (115.08px left, 292.09px right): its recorded trace, taken before a word
|
|
91
91
|
that must break inside itself was given the widest slot of its row, cuts "ordinary" into "ordinar"
|
|
92
92
|
and "y" in the ring's narrow left slot, where the planner now leaves that slot empty and sets the
|
|
@@ -114,7 +114,7 @@ console.log(`reads CLOSE rather than AGREE, none of them "close enough": (a) no
|
|
|
114
114
|
console.log(`-- their picture pushes no flow obstacle, so layout/interchange.js's own prepare() never calls Pretext for this paragraph during export (see`);
|
|
115
115
|
console.log(`measurer.mjs) -- the from-scratch character-sum approximation disagrees with real shaping by a bounded, named amount; (b) 03/11/13 DO run`);
|
|
116
116
|
console.log(`Pretext for real (hits > 0, 13-rtl-text at 100% -- every query answered from the real trace) yet still carry a small, constant left-edge delta`);
|
|
117
|
-
console.log(`(
|
|
117
|
+
console.log(`(9.64px today, a constant from before this measurer existed) -- a picture-obstacle geometry fact, not a text one: these`);
|
|
118
118
|
console.log(`fixtures' profileHint is a hand-computed, quantized alpha band descriptor for a raster Rapier's own export never serialized an occupancy`);
|
|
119
119
|
console.log(`descriptor for (conformance/README.md, "profileHint"), and that descriptor's own precision -- not this lane's measurer -- is the residual gap; (c) 09 plans the recorded 14 lines but one row`);
|
|
120
120
|
console.log(`differs by a whole slot: its recorded trace cuts a word in the ring's narrow left slot, and the planner now gives a word that must break inside itself`);
|
package/package.json
CHANGED
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rapier-markdown-kit",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.51",
|
|
4
4
|
"description": "Read, write and style Self-contained Markdown: the universal stylesheet, picture layout, text marks, picture appendix, line planner and Will/1 markers. MIT, no dependencies.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"markdown",
|
|
7
|
+
"self-contained",
|
|
8
|
+
"commonmark",
|
|
9
|
+
"gfm",
|
|
10
|
+
"stylesheet",
|
|
11
|
+
"css",
|
|
12
|
+
"layout",
|
|
13
|
+
"text-layout",
|
|
14
|
+
"text-wrap",
|
|
15
|
+
"line-breaking",
|
|
16
|
+
"images",
|
|
17
|
+
"document",
|
|
18
|
+
"will",
|
|
19
|
+
"agent",
|
|
20
|
+
"conformance",
|
|
21
|
+
"rapier"
|
|
22
|
+
],
|
|
5
23
|
"author": "Jack Skipworth",
|
|
6
24
|
"license": "MIT",
|
|
7
25
|
"type": "module",
|