aontu 0.60.0 → 0.61.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/dist/template.js CHANGED
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.DEFAULT_MARKER = void 0;
5
5
  exports.desugarTemplate = desugarTemplate;
6
6
  exports.resugarTemplate = resugarTemplate;
7
+ exports.templateOutputs = templateOutputs;
7
8
  exports.markerFor = markerFor;
8
9
  // THE TEMPLATE SURFACE (docs/design/TEMPLATE.0.md; RENDER.0.md P8).
9
10
  // A generator written in the TARGET's own syntax: a marked line is
@@ -28,12 +29,22 @@ exports.markerFor = markerFor;
28
29
  // comment, and derives for a language this table has never seen: the
29
30
  // caller passes the token.
30
31
  //
31
- // A MARKER IS RECOGNISED AFTER LEADING WHITESPACE AND KEEPS ITS OWN
32
- // INDENTATION (D2). That is what lets a template be written exactly
33
- // where its output appears (D7): a body line is verbatim, so a line
34
- // indented two spaces in the template is indented two spaces in the
35
- // generated file, and the marker lines around it are indented to match
36
- // the code they sit in rather than to the aontu they carry.
32
+ // A MARKER IS RECOGNISED AFTER LEADING WHITESPACE, AND THE INDENTATION
33
+ // THE RESUGARING WRITES IS THE AONTU'S (D2, amended 2026-09-07). An
34
+ // output line is verbatim -- a line indented two spaces in the template
35
+ // is indented two spaces in the generated file (D7) -- and that is the
36
+ // half a reader of the TARGET needs. The other half is the document:
37
+ // the marker lines carry a tree, and a tree nobody can see the shape of
38
+ // is the one thing this surface took away. So the marker stands at the
39
+ // left margin and the aontu is indented AFTER it, which `aontu fmt`
40
+ // (FMT.0.md M-BM-'3.14) is what writes.
41
+ //
42
+ // Reading is unchanged and stays generous: a marker after leading
43
+ // whitespace is a marker, and its own indentation still counts toward
44
+ // the aontu it carries, so a template written the other way desugars to
45
+ // the same document. What changes is the spelling the round trip
46
+ // answers, and `template --check` names the difference as the drift it
47
+ // is.
37
48
  //
38
49
  // THE SUGAR IS THE FIXPOINT OF THE TWO TRANSFORMS (D6), and that is
39
50
  // the whole of the resugaring's safety. A canonical line that looks
@@ -121,13 +132,17 @@ function indentOf(line) {
121
132
  }
122
133
  return i;
123
134
  }
124
- // The line without its indentation or its trailing spaces and tabs.
125
- function trimLine(line) {
135
+ // The line without its trailing spaces and tabs.
136
+ function trimEnd(line) {
126
137
  let end = line.length;
127
138
  while (0 < end && (' ' === line[end - 1] || '\t' === line[end - 1])) {
128
139
  end--;
129
140
  }
130
- return line.slice(indentOf(line), end);
141
+ return line.slice(0, end);
142
+ }
143
+ // The line without its indentation or its trailing spaces and tabs.
144
+ function trimLine(line) {
145
+ return trimEnd(line).slice(indentOf(line));
131
146
  }
132
147
  function readLine(line, marker) {
133
148
  const cut = indentOf(line);
@@ -140,12 +155,15 @@ function readLine(line, marker) {
140
155
  // The block form's closer is part of the marker, not of the aontu.
141
156
  // A block marker line that never closes is not a marker line: the
142
157
  // language's own parser would not read it as a comment either.
158
+ // Only the TRAILING space goes: what stands between the opener and
159
+ // the aontu is the aontu's indentation, exactly as it is for a line
160
+ // marker, and the one-space rule below takes the marker's own.
143
161
  if (isBlock(marker)) {
144
162
  const end = body.lastIndexOf(BLOCK_CLOSE);
145
163
  if (end < 0) {
146
164
  return { marker: false, indent: '', text: line };
147
165
  }
148
- body = trimLine(body.slice(0, end));
166
+ body = trimEnd(body.slice(0, end));
149
167
  }
150
168
  // ONE SPACE AFTER THE MARKER IS THE MARKER'S, so `//- x: 1` carries
151
169
  // `x: 1` and the resugaring writes the space back. A marker written
@@ -246,12 +264,30 @@ function resugarTemplate(src, marker) {
246
264
  if (undefined !== target && desugarTemplate(target, mark) === trimLine(line)) {
247
265
  return target;
248
266
  }
249
- const cut = indentOf(line);
250
- const text = line.slice(cut);
251
- const open = line.slice(0, cut) + mark;
267
+ // THE MARKER STANDS AT THE LEFT MARGIN and the line's indentation
268
+ // is written after it, so the aontu's own shape is on the page.
269
+ // The one space is the marker's, which the reading takes back.
270
+ const text = trimEnd(line);
252
271
  const close = isBlock(mark) ? ' ' + BLOCK_CLOSE : '';
253
- return '' === text ? open + close : open + ' ' + text + close;
272
+ return '' === text ? mark + close : mark + ' ' + text + close;
254
273
  });
255
274
  return out.join('\n') + (tail ? '\n' : '');
256
- } /* node:coverage ignore next 8 */
275
+ }
276
+ // WHICH LINES OF THE DESUGARED DOCUMENT ARE THE TARGET'S. The
277
+ // desugaring is line for line, so this is one flag per line of what
278
+ // `desugarTemplate` returns: true where the template's line was not a
279
+ // marker, and so where the document's line is one quoted line of the
280
+ // generated file.
281
+ //
282
+ // `aontu fmt` reads it (FMT.0.md M-BM-'3.14) to hold those lines on lines of
283
+ // their own. A body element is a string like any other, and the packing
284
+ // budget would put three of them on one line -- which is aontu where
285
+ // three lines of output were, and a generator that writes them as one.
286
+ function templateOutputs(src, marker) {
287
+ const lines = src.split('\n');
288
+ if (1 < lines.length && '' === lines[lines.length - 1]) {
289
+ lines.pop();
290
+ }
291
+ return lines.map((line) => !readLine(line, marker).marker);
292
+ } /* node:coverage ignore next 9 */
257
293
  //# sourceMappingURL=template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../src/template.ts"],"names":[],"mappings":"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"}