punctilio 5.5.2 → 5.5.4

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 CHANGED
@@ -243,7 +243,7 @@ A `.pre-commit-hooks.yaml` ships in the package, so [pre-commit](https://pre-com
243
243
  # .pre-commit-config.yaml
244
244
  repos:
245
245
  - repo: https://github.com/AlexanderMattTurner/punctilio
246
- rev: v5.5.0
246
+ rev: v5.5.3
247
247
  hooks:
248
248
  - id: punctilio # rewrites *.md / *.html in place
249
249
  - id: punctilio-check # or: fail without writing (CI-friendly)
@@ -146,6 +146,14 @@ export declare const LATIN_OR_DIGIT_RE: RegExp;
146
146
  export declare const WORD_RE: RegExp;
147
147
  /** Matches a single {@link SPACE_CHARS} character (space, tab, NBSP, NNBSP). */
148
148
  export declare const SPACE_CHAR_RE: RegExp;
149
+ /**
150
+ * Glyphs the punctuation-ligature pass folds `?`/`!` runs into. Rules that run
151
+ * before it must treat a folded glyph like the characters it folds from, or a
152
+ * gate decided on `?!` flips once a re-run sees `⁈`.
153
+ */
154
+ export declare const FOLDED_TERMINALS: readonly ["⁇", "⁈", "⁉", "‼", "‽"];
155
+ /** The vulgar fraction glyphs the fraction pass folds digit-led `n/d` pairs into. */
156
+ export declare const FRACTION_GLYPHS: string;
149
157
  /**
150
158
  * Glyphs the symbol passes fold word characters into (multiplication `x` →
151
159
  * `×`, ordinal suffixes → superscripts). Rules that run before those passes
@@ -153,6 +161,11 @@ export declare const SPACE_CHAR_RE: RegExp;
153
161
  * decided on `6x3` flips once a re-run sees `6×3`.
154
162
  */
155
163
  export declare const FOLDED_WORD_CHARS: Set<string>;
164
+ /**
165
+ * Horizontal whitespace around a multiplication operator. An operator across a
166
+ * line break is a list marker (`Step 1\n* 2 cups`), not multiplication.
167
+ */
168
+ export declare const OPERATOR_SPACE = "[^\\S\\n\\v\\f\\r\\u2028\\u2029]*";
156
169
  /** `\w` extended with {@link FOLDED_WORD_CHARS} for fold-stable `\b` checks. */
157
170
  export declare function isWordLike(ch: string | undefined): boolean;
158
171
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FlB,CAAA;AAEV,mGAAmG;AACnG,eAAO,MAAM,oBAAoB,8HAYvB,CAAA;AAqBV,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAA8C,CAAA;AAE5F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAShD,CAAA;AAED,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEnE;AAED,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,QAAkJ,CAAA;AAEjL,8GAA8G;AAC9G,eAAO,MAAM,YAAY,QAA2N,CAAA;AAEpP;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAAgD,CAAA;AAE9F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,qGAAqG,CAAA;AAE/H;;;;;GAKG;AACH,eAAO,MAAM,cAAc,wGAAwB,CAAA;AAEnD,sEAAsE;AACtE,eAAO,MAAM,WAAW,QAAuD,CAAA;AAE/E,qEAAqE;AACrE,eAAO,MAAM,UAAU,QAAoD,CAAA;AAE3E,6FAA6F;AAC7F,eAAO,MAAM,eAAe,QAAwC,CAAA;AAEpE,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,QAAyC,CAAA;AAEvE,+DAA+D;AAC/D,eAAO,MAAM,OAAO,QAAO,CAAA;AAE3B,gFAAgF;AAChF,eAAO,MAAM,aAAa,QAAiC,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAI5B,CAAA;AAEF,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE1D;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC,gFAAgF;AAChF,eAAO,MAAM,mBAAmB,OAAO,CAAA;AAEvC,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAGxC,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASnE;AAED,gBAAgB;AAChB,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED,gBAAgB;AAChB,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FlB,CAAA;AAEV,mGAAmG;AACnG,eAAO,MAAM,oBAAoB,8HAYvB,CAAA;AAqBV,sEAAsE;AACtE,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAA8C,CAAA;AAE5F;;;;;;;;;;GAUG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAShD,CAAA;AAED,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAEnE;AAED,oFAAoF;AACpF,eAAO,MAAM,kBAAkB,QAAkJ,CAAA;AAEjL,8GAA8G;AAC9G,eAAO,MAAM,YAAY,QAA2N,CAAA;AAEpP;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAAS,MAAM,EAAgD,CAAA;AAE9F;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,qGAAqG,CAAA;AAE/H;;;;;GAKG;AACH,eAAO,MAAM,cAAc,wGAAwB,CAAA;AAEnD,sEAAsE;AACtE,eAAO,MAAM,WAAW,QAAuD,CAAA;AAE/E,qEAAqE;AACrE,eAAO,MAAM,UAAU,QAAoD,CAAA;AAE3E,6FAA6F;AAC7F,eAAO,MAAM,eAAe,QAAwC,CAAA;AAEpE,qEAAqE;AACrE,eAAO,MAAM,iBAAiB,QAAyC,CAAA;AAEvE,+DAA+D;AAC/D,eAAO,MAAM,OAAO,QAAO,CAAA;AAE3B,gFAAgF;AAChF,eAAO,MAAM,aAAa,QAAiC,CAAA;AAE3D;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,oCAGnB,CAAA;AAEV,qFAAqF;AACrF,eAAO,MAAM,eAAe,QAGjB,CAAA;AAEX;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,aAI5B,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,cAAc,sCAAsC,CAAA;AAEjE,gFAAgF;AAChF,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE1D;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC,gFAAgF;AAChF,eAAO,MAAM,mBAAmB,OAAO,CAAA;AAEvC,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAGxC,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CASnE;AAED,gBAAgB;AAChB,wBAAgB,gBAAgB,IAAI,MAAM,EAAE,CAE3C;AAED,gBAAgB;AAChB,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
package/dist/constants.js CHANGED
@@ -197,6 +197,20 @@ export const LATIN_OR_DIGIT_RE = new RegExp(`[${LATIN_OR_DIGIT}]`, "u");
197
197
  export const WORD_RE = /\w/;
198
198
  /** Matches a single {@link SPACE_CHARS} character (space, tab, NBSP, NNBSP). */
199
199
  export const SPACE_CHAR_RE = new RegExp(`[${SPACE_CHARS}]`);
200
+ /**
201
+ * Glyphs the punctuation-ligature pass folds `?`/`!` runs into. Rules that run
202
+ * before it must treat a folded glyph like the characters it folds from, or a
203
+ * gate decided on `?!` flips once a re-run sees `⁈`.
204
+ */
205
+ export const FOLDED_TERMINALS = [
206
+ UNICODE_SYMBOLS.DOUBLE_QUESTION, UNICODE_SYMBOLS.QUESTION_EXCLAMATION, UNICODE_SYMBOLS.EXCLAMATION_QUESTION,
207
+ UNICODE_SYMBOLS.DOUBLE_EXCLAMATION, UNICODE_SYMBOLS.INTERROBANG,
208
+ ];
209
+ /** The vulgar fraction glyphs the fraction pass folds digit-led `n/d` pairs into. */
210
+ export const FRACTION_GLYPHS = Object.entries(UNICODE_SYMBOLS)
211
+ .filter(([name]) => name.startsWith("FRACTION_"))
212
+ .map(([, glyph]) => glyph)
213
+ .join("");
200
214
  /**
201
215
  * Glyphs the symbol passes fold word characters into (multiplication `x` →
202
216
  * `×`, ordinal suffixes → superscripts). Rules that run before those passes
@@ -208,6 +222,11 @@ export const FOLDED_WORD_CHARS = new Set([
208
222
  ...UNICODE_SYMBOLS.SUPERSCRIPT_ST, ...UNICODE_SYMBOLS.SUPERSCRIPT_ND,
209
223
  ...UNICODE_SYMBOLS.SUPERSCRIPT_RD, ...UNICODE_SYMBOLS.SUPERSCRIPT_TH,
210
224
  ]);
225
+ /**
226
+ * Horizontal whitespace around a multiplication operator. An operator across a
227
+ * line break is a list marker (`Step 1\n* 2 cups`), not multiplication.
228
+ */
229
+ export const OPERATOR_SPACE = "[^\\S\\n\\v\\f\\r\\u2028\\u2029]*";
211
230
  /** `\w` extended with {@link FOLDED_WORD_CHARS} for fold-stable `\b` checks. */
212
231
  export function isWordLike(ch) {
213
232
  return ch !== undefined && (WORD_RE.test(ch) || FOLDED_WORD_CHARS.has(ch));
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
package/dist/dashes.d.ts CHANGED
@@ -13,6 +13,7 @@ export declare function enDashDateRange(input: string, options?: DashOptions): s
13
13
  export declare function enDashDateRange(input: ProseView, options?: DashOptions): void;
14
14
  /** Convert hyphens to minus signs in numeric contexts (e.g., "-5" → "−5"). */
15
15
  export declare const minusReplace: import("./prose-view.js").ProsePass;
16
+ export declare function isDashChar(ch: string | undefined): boolean;
16
17
  export declare function hyphenReplace(input: string, options?: DashOptions): string;
17
18
  export declare function hyphenReplace(input: ProseView, options?: DashOptions): void;
18
19
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"dashes.d.ts","sourceRoot":"","sources":["../src/dashes.ts"],"names":[],"mappings":"AACA,OAAO,EAA+G,KAAK,SAAS,EAA4C,MAAM,iBAAiB,CAAA;AAEvM,eAAO,MAAM,WAAW,0CAA2C,CAAA;AACnE,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,WAAW;IAC1B,mFAAmF;IACnF,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAQD,eAAO,MAAM,6BAA6B,+BAA0C,CAAA;AA0JpF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,qCAG5B,CAAA;AAsdF,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;AAC7E,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;AAoE9E,8EAA8E;AAC9E,eAAO,MAAM,YAAY,qCAIvB,CAAA;AA0hBF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;AAC3E,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;AAe5E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,cAAc,qCAGzB,CAAA"}
1
+ {"version":3,"file":"dashes.d.ts","sourceRoot":"","sources":["../src/dashes.ts"],"names":[],"mappings":"AACA,OAAO,EAA+G,KAAK,SAAS,EAA4C,MAAM,iBAAiB,CAAA;AAEvM,eAAO,MAAM,WAAW,0CAA2C,CAAA;AACnE,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAA;AAEpD,MAAM,WAAW,WAAW;IAC1B,mFAAmF;IACnF,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAKD,eAAO,MAAM,6BAA6B,+BAA0C,CAAA;AA0JpF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,qCAG5B,CAAA;AAoeF,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;AAC7E,wBAAgB,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;AAoE9E,8EAA8E;AAC9E,eAAO,MAAM,YAAY,qCAIvB,CAAA;AA6IF,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAE1D;AA2YD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAA;AAC3E,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;AAe5E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,cAAc,qCAGzB,CAAA"}
package/dist/dashes.js CHANGED
@@ -1,7 +1,7 @@
1
- import { asCharClassContent, cachedRegExp, FOLDED_WORD_CHARS, isWordLike, LATIN_LETTER_RE, LATIN_LETTERS, LATIN_OR_DIGIT, LATIN_OR_DIGIT_RE, LOCALE_QUOTE_MARKS, MAX_BOUNDARY_SEPARATORS, NBSP_CHARS, OPENING_BRACKETS, QUOTE_GLYPHS, SPACE_CHAR_RE, UNICODE_SYMBOLS } from "./constants.js";
1
+ import { asCharClassContent, cachedRegExp, FOLDED_TERMINALS, FOLDED_WORD_CHARS, FRACTION_GLYPHS, isWordLike, LATIN_LETTER_RE, LATIN_LETTERS, LATIN_OR_DIGIT, LATIN_OR_DIGIT_RE, MAX_BOUNDARY_SEPARATORS, NBSP_CHARS, OPENING_BRACKETS, OPERATOR_SPACE, QUOTE_GLYPHS, SPACE_CHAR_RE, UNICODE_SYMBOLS } from "./constants.js";
2
2
  import { boundaryCountAt, exceedsSingleBoundary, firstInteriorBoundary, lastBoundaryBefore, makeProsePass, overInput, replaceAllInView } from "./prose-view.js";
3
3
  export const DASH_STYLES = ["american", "british", "none"];
4
- const { EN_DASH, EM_DASH, MINUS, MULTIPLICATION, PLUS_MINUS, LEFT_DOUBLE_QUOTE, RIGHT_DOUBLE_QUOTE, LEFT_SINGLE_QUOTE, RIGHT_SINGLE_QUOTE, } = UNICODE_SYMBOLS;
4
+ const { EN_DASH, EM_DASH, MINUS, MULTIPLICATION, PLUS_MINUS } = UNICODE_SYMBOLS;
5
5
  // Prevents false-positive ranges in model names like "Llama-2-7B".
6
6
  export const numberRangeDisallowedPrefixes = ["-", EN_DASH, EM_DASH, MINUS];
7
7
  // Non-ASCII dashes escaped to \uXXXX for safe embedding in [...] classes.
@@ -361,7 +361,7 @@ function readEndRun(view, pos) {
361
361
  function resolvePositiveTail(view, endPos) {
362
362
  const candidates = followingCandidates(view, endPos, true);
363
363
  for (let i = candidates.length - 1; i >= 0; i--) {
364
- const suffixEnd = suffixWbeEnd(view, candidates[i], true);
364
+ const suffixEnd = suffixWbeEnd(view, candidates[i], true, i === 0);
365
365
  if (suffixEnd !== null) {
366
366
  return { followingEmpty: i === 0, consumedEnd: suffixEnd };
367
367
  }
@@ -438,7 +438,7 @@ function matchNegativeRangeAt(view, i) {
438
438
  const endPos = end.firstDigitStart + len;
439
439
  const candidates = followingCandidates(view, endPos, false);
440
440
  for (let c = candidates.length - 1; c >= 0; c--) {
441
- const suffixEnd = suffixWbeEnd(view, candidates[c], false);
441
+ const suffixEnd = suffixWbeEnd(view, candidates[c], false, c === 0);
442
442
  if (suffixEnd === null)
443
443
  continue;
444
444
  if (c === 0) {
@@ -500,8 +500,16 @@ const RANGE_SUFFIX_RE = /[xKBTMCF]/;
500
500
  * The `(?:[AaPp][Mm]|[xKBTMCF])?${wbe}` suffix at `pos`, with one tolerated
501
501
  * boundary before the suffix. Returns the end offset after the optional suffix
502
502
  * when the tail completes (wbe passes), or null when it does not.
503
+ *
504
+ * `allowMultiplier` admits the lowercase `x`. It folds to `×`, which is no
505
+ * suffix, so after a non-empty `following` a re-run reads the tail as failing
506
+ * and converts the leading range: `1-2-3x` must convert like `1-2-3×`. An
507
+ * operator the multiplication pass folds in place (`1-2-3*4`, `1-2-3 x 4`)
508
+ * fails the tail the same way.
503
509
  */
504
- function suffixWbeEnd(view, pos, allowAmPm) {
510
+ function suffixWbeEnd(view, pos, allowAmPm, allowMultiplier) {
511
+ if (!allowMultiplier && foldsToMultiplication(view.text, pos))
512
+ return null;
505
513
  if (wordBoundaryEndOk(view, pos))
506
514
  return pos;
507
515
  // An optional suffix: one tolerated boundary then am/pm or one of
@@ -515,11 +523,17 @@ function suffixWbeEnd(view, pos, allowAmPm) {
515
523
  if (allowAmPm && /[ap]/i.test(text[pos] ?? "") && /m/i.test(text[pos + 1] ?? "") && !view.hasBoundary(pos + 1)) {
516
524
  return wordBoundaryEndOk(view, pos + 2) ? pos + 2 : null;
517
525
  }
518
- if (RANGE_SUFFIX_RE.test(text[pos] ?? "")) {
526
+ if (RANGE_SUFFIX_RE.test(text[pos] ?? "") && (allowMultiplier || text[pos] !== "x")) {
519
527
  return wordBoundaryEndOk(view, pos + 1) ? pos + 1 : null;
520
528
  }
521
529
  return null;
522
530
  }
531
+ /** True iff an `x`, `X` or `*` operator with an operand digit after it starts at `pos`. */
532
+ function foldsToMultiplication(text, pos) {
533
+ const operator = cachedRegExp(`${OPERATOR_SPACE}[xX*]${OPERATOR_SPACE}\\d`, "y");
534
+ operator.lastIndex = pos;
535
+ return operator.test(text);
536
+ }
523
537
  const NOT_AFTER_DASH_RE = new RegExp(`[${DISALLOWED_PREFIX_CLASS_FRAGMENT}${LATIN_LETTERS}${MULTIPLICATION}${PLUS_MINUS}.+]`);
524
538
  /**
525
539
  * Offset of the dot reachable backwards across one inter-dot gap ending at the
@@ -561,15 +575,15 @@ function endsFoldableEllipsisDots(view, dotIndex) {
561
575
  function notAfterDashOk(view, startOffset) {
562
576
  if (startOffset === 0)
563
577
  return true;
564
- if (boundaryCountAt(view, startOffset) > 0)
565
- return true;
566
578
  const prev = view.text[startOffset - 1];
567
579
  // A multiplication sign one space slot further left blocks like the `x` it
568
- // folds from: the multiplication pass renders `5x8` as `5 × 8`, so a range
569
- // blocked at `x8-6` must stay blocked at `× 8-6`.
580
+ // folds from, even across a node boundary: the multiplication pass renders
581
+ // `5x8` as `5 × 8`, so a range blocked at `x8-6` must stay blocked at `× 8-6`.
570
582
  if (prev !== undefined && SPACE_CHAR_RE.test(prev) && view.text[startOffset - 2] === MULTIPLICATION) {
571
583
  return false;
572
584
  }
585
+ if (boundaryCountAt(view, startOffset) > 0)
586
+ return true;
573
587
  if (prev === undefined || !NOT_AFTER_DASH_RE.test(prev))
574
588
  return true;
575
589
  if (prev === "." && endsFoldableEllipsisDots(view, startOffset - 1))
@@ -722,7 +736,7 @@ function minusSubtractionPrefixOk(match, view, prefixLen) {
722
736
  const truncatedEnd = interior >= 0 ? interior : numEnd;
723
737
  return NUM_BODY_RE.test(view.text.slice(numStart, truncatedEnd));
724
738
  }
725
- const MINUS_BEFORE_CLASS_RE = new RegExp(`[\\s${asCharClassContent(OPENING_BRACKETS)}"'${LEFT_DOUBLE_QUOTE}${RIGHT_DOUBLE_QUOTE}${LEFT_SINGLE_QUOTE}${RIGHT_SINGLE_QUOTE}${LOCALE_QUOTE_MARKS}]`);
739
+ const MINUS_BEFORE_CLASS_RE = new RegExp(`[\\s${asCharClassContent(OPENING_BRACKETS)}${QUOTE_GLYPHS}]`);
726
740
  // The folded word glyphs block like the word chars they fold from ("1x|-0"
727
741
  // and "1×|-0" must agree), the folded math operators block like the operator
728
742
  // chars they fold from (the `!=` → `≠` fold consumes the `=` that blocked
@@ -731,10 +745,7 @@ const MINUS_BEFORE_CLASS_RE = new RegExp(`[\\s${asCharClassContent(OPENING_BRACK
731
745
  // ("?|!-0" folds to "⁈|-0" with the hyphen stranded boundary-adjacent).
732
746
  const FOLDED_WORD_CLASS_FRAGMENT = [...FOLDED_WORD_CHARS].join("");
733
747
  const FOLDED_MATH_CLASS_FRAGMENT = [...FOLDED_MATH_OPERATORS].join("");
734
- const FOLDED_TERMINAL_CLASS_FRAGMENT = [
735
- UNICODE_SYMBOLS.ELLIPSIS, UNICODE_SYMBOLS.DOUBLE_QUESTION, UNICODE_SYMBOLS.QUESTION_EXCLAMATION,
736
- UNICODE_SYMBOLS.EXCLAMATION_QUESTION, UNICODE_SYMBOLS.DOUBLE_EXCLAMATION, UNICODE_SYMBOLS.INTERROBANG, "!",
737
- ].join("");
748
+ const FOLDED_TERMINAL_CLASS_FRAGMENT = [UNICODE_SYMBOLS.ELLIPSIS, ...FOLDED_TERMINALS, "!"].join("");
738
749
  const NUM_BEFORE_2B_BLOCK_RE = new RegExp(`[\\d.,${LATIN_LETTERS}${FOLDED_WORD_CLASS_FRAGMENT}${FOLDED_MATH_CLASS_FRAGMENT}${FOLDED_TERMINAL_CLASS_FRAGMENT}]`);
739
750
  /**
740
751
  * Direct negative numbers, in two cases: Pattern 2 converts `-\d` after line
@@ -797,7 +808,7 @@ function convertParentheticalDashes(view, style) {
797
808
  convertUnspacedEmDashes(view, rendered);
798
809
  }
799
810
  const DASH_RUN_CHARS = new Set(["-", EN_DASH, EM_DASH]);
800
- function isDashChar(ch) {
811
+ export function isDashChar(ch) {
801
812
  return ch !== undefined && DASH_RUN_CHARS.has(ch);
802
813
  }
803
814
  /**
@@ -1014,14 +1025,13 @@ function convertBoundaryLedDashes(view, rendered) {
1014
1025
  if (!isDashChar(text[b]))
1015
1026
  continue;
1016
1027
  // Non-space before the boundary: ≥2 stacked boundaries, or a non-space
1017
- // clean char immediately left. A folded math operator there marks the
1018
- // fold-stranded configuration: the math pass consumes one character
1019
- // across this junction (`=` + `~—` folds to `≈` + `—`), so the character
1020
- // that blocked this rule on the source text is gone, and converting now
1021
- // would diverge from that blocked first pass.
1028
+ // clean char immediately left. Blocked there: a folded math operator (the
1029
+ // math pass consumes the `=` that blocked this rule: `=|~—` folds to
1030
+ // `≈|—`), and an en/em dash, the head of an already-converted run whose
1031
+ // tail this is.
1022
1032
  if (stackedHere < 2) {
1023
1033
  const before = text[b - 1];
1024
- if (before === undefined || /\s/.test(before) || FOLDED_MATH_OPERATORS.has(before))
1034
+ if (before === undefined || /\s/.test(before) || FOLDED_MATH_OPERATORS.has(before) || before === EN_DASH || before === EM_DASH)
1025
1035
  continue;
1026
1036
  }
1027
1037
  // Dash run from the boundary, not crossing a further boundary.
@@ -1178,9 +1188,13 @@ function removeSpacesAroundEmDash(view) {
1178
1188
  return null;
1179
1189
  });
1180
1190
  }
1181
- /** Preserve a space after a line-leading em-dash before an uppercase/digit. */
1191
+ /**
1192
+ * Preserve a space after a line-leading em-dash before an uppercase/digit. A
1193
+ * vulgar fraction glyph counts as the digit it folds from (`—2/5` and `—⅖`
1194
+ * must agree).
1195
+ */
1182
1196
  function preserveLineLeadingEmDashSpace(view) {
1183
- pass(view, cachedRegExp(`^${EM_DASH}(?<after>[A-Z0-9])`, "gm"), (match, v) => {
1197
+ pass(view, cachedRegExp(`^${EM_DASH}(?<after>[A-Z0-9${FRACTION_GLYPHS}])`, "gm"), (match, v) => {
1184
1198
  // One boundary is tolerated between the line start and the em-dash; two or
1185
1199
  // more exceed that slot and block the match.
1186
1200
  if (exceedsSingleBoundary(v, match.index))
@@ -1 +1 @@
1
- {"version":3,"file":"dashes.js","sourceRoot":"","sources":["../src/dashes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashes.js","sourceRoot":"","sources":["../src/dashes.ts"],"names":[],"mappings":"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"}
@@ -24,4 +24,10 @@ export interface MarkdownOptions extends RemarkPunctilioOptions {
24
24
  /** @internal */
25
25
  export declare function clearProcessorCache(): void;
26
26
  export declare function transformMarkdown(input: string, options?: MarkdownOptions): Promise<string>;
27
+ /**
28
+ * @internal Parse, then stringify, with no punctilio pass: the output
29
+ * `transformMarkdown` is held to on a second run (remark's own round trip is
30
+ * not always a fixed point).
31
+ */
32
+ export declare function remarkRoundTrip(input: string, options?: MarkdownOptions): Promise<string>;
27
33
  //# sourceMappingURL=markdown.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmB,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAG1E,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAEvF;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,sBAAsB;IAC7D;;;OAGG;IACH,cAAc,CAAC,EAAE,GAAG,GAAG,GAAG,CAAA;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,CAAA;IAExB,yDAAyD;IACzD,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;IAE9B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;CAC7B;AAoCD,gBAAgB;AAChB,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAiDD,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAGjB"}
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmB,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAG1E,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAEvF;;;;GAIG;AACH,MAAM,WAAW,eAAgB,SAAQ,sBAAsB;IAC7D;;;OAGG;IACH,cAAc,CAAC,EAAE,GAAG,GAAG,GAAG,CAAA;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,CAAA;IAExB,yDAAyD;IACzD,YAAY,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;IAE9B,0CAA0C;IAC1C,UAAU,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;CAC7B;AAyCD,gBAAgB;AAChB,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAiDD,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,MAAM,CAAC,CAGjB"}
package/dist/markdown.js CHANGED
@@ -7,13 +7,9 @@ import { MARKDOWN_OPTION_KEYS } from "./sink-option-keys.js";
7
7
  import { remarkPunctilio } from "./remark.js";
8
8
  import { assertKnownOptionKeys, stableStringify, transformPreservingBom } from "./utils.js";
9
9
  export { MARKDOWN_ONLY_OPTION_KEYS, MARKDOWN_OPTION_KEYS } from "./sink-option-keys.js";
10
- function createProcessor(options) {
11
- const { emphasisMarker, strongMarker, bulletMarker, ruleMarker, ...punctilioOptions } = options;
12
- return unified()
13
- .use(remarkParse)
14
- .use(remarkGfm)
15
- .use(remarkPunctilio, punctilioOptions)
16
- .use(remarkStringify, {
10
+ /** Stringify settings shared by {@link createProcessor} and {@link remarkRoundTrip}. */
11
+ function stringifyOptions({ emphasisMarker, strongMarker, bulletMarker, ruleMarker }) {
12
+ return {
17
13
  emphasis: emphasisMarker ?? "*",
18
14
  strong: strongMarker ?? "*",
19
15
  bullet: bulletMarker ?? "-",
@@ -25,7 +21,15 @@ function createProcessor(options) {
25
21
  // producing `\[1]` instead of `\[1\]`. This can cause issues when the
26
22
  // output is re-parsed by markdown renderers.
27
23
  unsafe: [{ character: "]", inConstruct: "phrasing" }],
28
- });
24
+ };
25
+ }
26
+ function createProcessor(options) {
27
+ const { emphasisMarker, strongMarker, bulletMarker, ruleMarker, ...punctilioOptions } = options;
28
+ return unified()
29
+ .use(remarkParse)
30
+ .use(remarkGfm)
31
+ .use(remarkPunctilio, punctilioOptions)
32
+ .use(remarkStringify, stringifyOptions({ emphasisMarker, strongMarker, bulletMarker, ruleMarker }));
29
33
  }
30
34
  const MAX_PROCESSOR_CACHE_SIZE = 8;
31
35
  const processorCache = new QuickLRU({
@@ -80,17 +84,26 @@ async function processMarkdown(input, options) {
80
84
  }
81
85
  export async function transformMarkdown(input, options = {}) {
82
86
  assertKnownOptionKeys(options, MARKDOWN_OPTION_KEYS, "transformMarkdown");
83
- return transformPreservingBom(input, (text) => transformWithFrontmatter(text, options));
87
+ return transformPreservingBom(input, (text) => transformWithFrontmatter(text, (body) => processMarkdown(body, options)));
88
+ }
89
+ /**
90
+ * @internal Parse, then stringify, with no punctilio pass: the output
91
+ * `transformMarkdown` is held to on a second run (remark's own round trip is
92
+ * not always a fixed point).
93
+ */
94
+ export async function remarkRoundTrip(input, options = {}) {
95
+ const processor = unified().use(remarkParse).use(remarkGfm).use(remarkStringify, stringifyOptions(options));
96
+ return transformPreservingBom(input, (text) => transformWithFrontmatter(text, async (body) => String(await processor.process(body))));
84
97
  }
85
- async function transformWithFrontmatter(input, options) {
98
+ async function transformWithFrontmatter(input, processBody) {
86
99
  const frontmatterEnd = frontmatterLength(input);
87
100
  if (frontmatterEnd === 0)
88
- return processMarkdown(input, options);
101
+ return processBody(input);
89
102
  // Front matter is data (YAML/TOML), not prose; remark would parse it as a
90
103
  // thematic break plus a heading and rewrite it.
91
104
  const body = input.slice(frontmatterEnd);
92
105
  const blankLines = LEADING_BLANK_LINES_RE.exec(body)[0];
93
- const transformedBody = await processMarkdown(body.slice(blankLines.length), options);
106
+ const transformedBody = await processBody(body.slice(blankLines.length));
94
107
  return input.slice(0, frontmatterEnd) + blankLines + transformedBody;
95
108
  }
96
109
  //# sourceMappingURL=markdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../src/markdown.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nbsp.d.ts","sourceRoot":"","sources":["../src/nbsp.ts"],"names":[],"mappings":"AACA,OAAO,EAAgH,KAAK,SAAS,EAAoB,MAAM,iBAAiB,CAAA;AAwBhL,wEAAwE;AACxE,eAAO,MAAM,KAAK,EAAE,SAAS,MAAM,EAqClC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EAcvC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EASpD,CAAA;AA+ED,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AA6C7E,eAAO,MAAM,wBAAwB,qCAAkD,CAAA;AA2DvF,eAAO,MAAM,kBAAkB,qCAAuE,CAAA;AAkItG,eAAO,MAAM,+BAA+B,qCAAyD,CAAA;AAErG,eAAO,MAAM,uBAAuB,qCAAiD,CAAA;AAErF,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AAE7E,eAAO,MAAM,yBAAyB,qCAAmD,CAAA;AAEzF,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AAa7E,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;AACpD,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA"}
1
+ {"version":3,"file":"nbsp.d.ts","sourceRoot":"","sources":["../src/nbsp.ts"],"names":[],"mappings":"AACA,OAAO,EAAgH,KAAK,SAAS,EAAoB,MAAM,iBAAiB,CAAA;AAkChL,wEAAwE;AACxE,eAAO,MAAM,KAAK,EAAE,SAAS,MAAM,EAqClC,CAAA;AAED,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EAcvC,CAAA;AAED,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EASpD,CAAA;AA+ED,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AA6C7E,eAAO,MAAM,wBAAwB,qCAAkD,CAAA;AA2DvF,eAAO,MAAM,kBAAkB,qCAAuE,CAAA;AAkItG,eAAO,MAAM,+BAA+B,qCAAyD,CAAA;AAErG,eAAO,MAAM,uBAAuB,qCAAiD,CAAA;AAErF,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AAE7E,eAAO,MAAM,yBAAyB,qCAAmD,CAAA;AAEzF,eAAO,MAAM,mBAAmB,qCAA6C,CAAA;AAa7E,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;AACpD,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAA"}
package/dist/nbsp.js CHANGED
@@ -2,6 +2,16 @@ import { asCharClassContent, cachedRegExp, CLOSING_BRACKETS, LATIN_LETTER_RE, LA
2
2
  import { advanceScanIndex, boundaryCountAt, exceedsSingleBoundary, interiorBoundariesWithin, makeProsePass, overInput, replaceAllInView } from "./prose-view.js";
3
3
  const { NBSP, LEFT_DOUBLE_QUOTE, RIGHT_DOUBLE_QUOTE, LEFT_SINGLE_QUOTE, RIGHT_SINGLE_QUOTE, COPYRIGHT, REGISTERED, TRADEMARK, } = UNICODE_SYMBOLS;
4
4
  const SPACE = `[${SPACE_CHARS}]`;
5
+ /**
6
+ * Glues the space at `offset` with an NBSP. A space that is already
7
+ * non-breaking (NBSP, or the NNBSP French quote padding) stays as written: an
8
+ * NBSP in its place would be re-padded to NNBSP by the next quote pass.
9
+ */
10
+ function glueSpace(view, offset) {
11
+ if (NBSP_CHARS.includes(view.text[offset]))
12
+ return;
13
+ view.replace(offset, offset + 1, NBSP);
14
+ }
5
15
  const UNICODE_UPPERCASE = "\\p{Lu}";
6
16
  // A word-forming character (any Unicode letter or number). Used for the
7
17
  // abbreviation-family word-start guard, which must span the same alphabets the
@@ -173,7 +183,7 @@ function nbspAfterShortWordsOverView(view) {
173
183
  const spaceOffset = offset + match[0].length - 1;
174
184
  if (!NBSP_CHARS.includes(clean[spaceOffset]))
175
185
  insertedGlue.add(spaceOffset);
176
- v.replace(spaceOffset, spaceOffset + 1, NBSP);
186
+ glueSpace(v, spaceOffset);
177
187
  return null;
178
188
  }, {
179
189
  allowBoundaries: (match, v) => boundariesOnlyAtSlots(v, match.index, match.index + match[0].length, [
@@ -191,7 +201,7 @@ function nbspBetweenNumberAndUnitOverView(view) {
191
201
  replaceAllInView(view, pattern, (match, v) => {
192
202
  // Edit only the space (after the single digit) so any boundaries keep
193
203
  // their sides.
194
- v.replace(match.index + 1, match.index + 2, NBSP);
204
+ glueSpace(v, match.index + 1);
195
205
  return null;
196
206
  }, {
197
207
  // Tolerated slots: between digit and space (index+1) and between space
@@ -259,7 +269,7 @@ function nbspBeforeLastWordOverView(view, insertedShortWordGlue) {
259
269
  return null;
260
270
  // Edit only the leading space so the lastWord/ending (and any boundary
261
271
  // before \n\n) keep their positions.
262
- v.replace(start, start + 1, NBSP);
272
+ glueSpace(v, start);
263
273
  return null;
264
274
  }, {
265
275
  // The space-lookbehind boundary (== match.index) is not interior. The
@@ -314,7 +324,7 @@ function nbspBeforeContext(view, thingPattern, contextPattern, flags, thingGroup
314
324
  }
315
325
  // Edit only the trailing space so the slot/lookahead boundaries keep their
316
326
  // sides.
317
- view.replace(end - 1, end, NBSP);
327
+ glueSpace(view, end - 1);
318
328
  }
319
329
  }
320
330
  view.commit();