paperlint 6.3.0 → 7.1.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.
Files changed (185) hide show
  1. package/CONTRIBUTING.md +4 -2
  2. package/README.md +20 -13
  3. package/dist/adapters/latex/conditionals.d.ts +21 -0
  4. package/dist/adapters/latex/conditionals.d.ts.map +1 -0
  5. package/dist/adapters/latex/conditionals.js +75 -0
  6. package/dist/adapters/latex/conditionals.js.map +1 -0
  7. package/dist/adapters/latex/headings.d.ts +10 -0
  8. package/dist/adapters/latex/headings.d.ts.map +1 -0
  9. package/dist/adapters/latex/headings.js +129 -0
  10. package/dist/adapters/latex/headings.js.map +1 -0
  11. package/dist/adapters/latex/index.d.ts +1 -0
  12. package/dist/adapters/latex/index.d.ts.map +1 -1
  13. package/dist/adapters/latex/index.js +3 -0
  14. package/dist/adapters/latex/index.js.map +1 -1
  15. package/dist/adapters/latex/parse.d.ts +1 -1
  16. package/dist/adapters/latex/parse.d.ts.map +1 -1
  17. package/dist/adapters/latex/parse.js +3 -2
  18. package/dist/adapters/latex/parse.js.map +1 -1
  19. package/dist/build.d.ts +1 -1
  20. package/dist/build.d.ts.map +1 -1
  21. package/dist/build.js +1 -1
  22. package/dist/build.js.map +1 -1
  23. package/dist/cli.d.ts +1 -1
  24. package/dist/cli.d.ts.map +1 -1
  25. package/dist/cli.js +19 -5
  26. package/dist/cli.js.map +1 -1
  27. package/dist/domain/body-pages.d.ts +29 -0
  28. package/dist/domain/body-pages.d.ts.map +1 -1
  29. package/dist/domain/body-pages.js +25 -0
  30. package/dist/domain/body-pages.js.map +1 -1
  31. package/dist/domain/heading-case.d.ts +100 -0
  32. package/dist/domain/heading-case.d.ts.map +1 -0
  33. package/dist/domain/heading-case.js +365 -0
  34. package/dist/domain/heading-case.js.map +1 -0
  35. package/dist/domain/tex-document.d.ts +32 -0
  36. package/dist/domain/tex-document.d.ts.map +1 -1
  37. package/dist/domain/tex-document.js +11 -0
  38. package/dist/domain/tex-document.js.map +1 -1
  39. package/dist/eslint-rules/latex-language.d.ts.map +1 -1
  40. package/dist/eslint-rules/latex-language.js +16 -3
  41. package/dist/eslint-rules/latex-language.js.map +1 -1
  42. package/dist/facts-file.d.ts +3 -3
  43. package/dist/facts-file.d.ts.map +1 -1
  44. package/dist/facts-file.js +3 -3
  45. package/dist/facts-file.js.map +1 -1
  46. package/dist/folder-venue-rule.js +6 -6
  47. package/dist/folder-venue-rule.js.map +1 -1
  48. package/dist/heading-case.d.ts +48 -0
  49. package/dist/heading-case.d.ts.map +1 -0
  50. package/dist/heading-case.js +191 -0
  51. package/dist/heading-case.js.map +1 -0
  52. package/dist/paper-includes.d.ts +3 -0
  53. package/dist/paper-includes.d.ts.map +1 -1
  54. package/dist/paper-includes.js +17 -2
  55. package/dist/paper-includes.js.map +1 -1
  56. package/dist/ports/latex.d.ts +7 -1
  57. package/dist/ports/latex.d.ts.map +1 -1
  58. package/dist/preset-card-rule.d.ts +100 -0
  59. package/dist/preset-card-rule.d.ts.map +1 -0
  60. package/dist/preset-card-rule.js +221 -0
  61. package/dist/preset-card-rule.js.map +1 -0
  62. package/dist/presets.d.ts +29 -5
  63. package/dist/presets.d.ts.map +1 -1
  64. package/dist/presets.js +104 -68
  65. package/dist/presets.js.map +1 -1
  66. package/dist/submission.d.ts +8 -0
  67. package/dist/submission.d.ts.map +1 -1
  68. package/dist/submission.js +19 -7
  69. package/dist/submission.js.map +1 -1
  70. package/dist/tex-requirements.d.ts +42 -3
  71. package/dist/tex-requirements.d.ts.map +1 -1
  72. package/dist/tex-requirements.js +34 -5
  73. package/dist/tex-requirements.js.map +1 -1
  74. package/dist/tex-venue-rules.d.ts +6 -3
  75. package/dist/tex-venue-rules.d.ts.map +1 -1
  76. package/dist/tex-venue-rules.js +29 -10
  77. package/dist/tex-venue-rules.js.map +1 -1
  78. package/dist/venue-rules.d.ts +2 -1
  79. package/dist/venue-rules.d.ts.map +1 -1
  80. package/dist/venue-rules.js +55 -7
  81. package/dist/venue-rules.js.map +1 -1
  82. package/docs/configuration.md +13 -1
  83. package/docs/e2e.md +14 -12
  84. package/docs/optional-rules.md +4 -3
  85. package/docs/rules/format/page-limit.md +19 -2
  86. package/docs/rules/paper/folder-venue-leftover.md +1 -1
  87. package/docs/rules/talk/profile.md +1 -1
  88. package/docs/rules/tex/heading-case.md +424 -0
  89. package/docs/rules/tex/template.md +25 -5
  90. package/docs/rules/tex/venue-leftover.md +13 -0
  91. package/docs/rules.md +74 -57
  92. package/docs/submission.md +5 -1
  93. package/eslint-rules/latex-language.test.mjs +12 -0
  94. package/eslint-rules/latex-language.ts +17 -4
  95. package/eslint-rules/paper-typography.test.mjs +12 -0
  96. package/eslint.config.mjs +59 -1
  97. package/fixtures/build-e2e/acmart/paper.tex +1 -1
  98. package/fixtures/build-e2e/fallback/expect.json +3 -3
  99. package/fixtures/build-e2e/msr/PIPELINE-STATUS.md +3 -0
  100. package/fixtures/build-e2e/msr/expect.json +18 -0
  101. package/fixtures/build-e2e/msr/paper.tex +49 -0
  102. package/fixtures/build-e2e/msr/paperlint.json +1 -0
  103. package/fixtures/build-e2e/msr-appendix-after/PIPELINE-STATUS.md +3 -0
  104. package/fixtures/build-e2e/msr-appendix-after/expect.json +20 -0
  105. package/fixtures/build-e2e/msr-appendix-after/paper.tex +48 -0
  106. package/fixtures/build-e2e/msr-appendix-after/paperlint.json +1 -0
  107. package/lib/skill-checks.mjs +31 -0
  108. package/package.json +7 -1
  109. package/presets/acm-sigconf.jsonc +5 -0
  110. package/presets/acm-sigconf.md +43 -0
  111. package/presets/agenticdev.jsonc +27 -6
  112. package/presets/agenticdev.md +151 -0
  113. package/presets/aidc.jsonc +6 -0
  114. package/presets/aidc.md +75 -0
  115. package/presets/aisec.jsonc +5 -1
  116. package/presets/aisec.md +117 -0
  117. package/presets/ieee-conference.jsonc +5 -0
  118. package/presets/ieee-conference.md +38 -0
  119. package/presets/msr.jsonc +71 -0
  120. package/presets/msr.md +94 -0
  121. package/presets/realm.jsonc +7 -2
  122. package/presets/realm.md +166 -0
  123. package/presets/tex/agenticdev.tex +1 -1
  124. package/presets/tex-base.jsonc +6 -0
  125. package/presets/tex-base.md +30 -0
  126. package/presets/venue-profile.schema.json +65 -1
  127. package/skills/camera-ready/SKILL.md +8 -1
  128. package/skills/camera-ready/SKILL.md.spec.ts +7 -0
  129. package/skills/find-venue/SKILL.md +6 -5
  130. package/skills/find-venue/SKILL.md.spec.ts +5 -4
  131. package/skills/paper-pipeline/SKILL.md +5 -6
  132. package/skills/paper-pipeline/SKILL.md.spec.ts +4 -5
  133. package/skills/paper-pipeline/references/acl-venue-rules.md +1 -1
  134. package/skills/study-accepted-papers/SKILL.md +3 -3
  135. package/skills/study-accepted-papers/SKILL.md.spec.ts +2 -2
  136. package/skills/submission-portal/SKILL.md +2 -2
  137. package/skills/submission-portal/SKILL.md.spec.ts +1 -1
  138. package/skills/submit-paper/SKILL.md +34 -22
  139. package/skills/submit-paper/SKILL.md.spec.ts +33 -21
  140. package/skills/submit-paper/references/publishers/acm.md +1 -1
  141. package/src/adapters/latex/conditionals.ts +130 -0
  142. package/src/adapters/latex/headings.ts +163 -0
  143. package/src/adapters/latex/index.test.ts +65 -0
  144. package/src/adapters/latex/index.ts +3 -0
  145. package/src/adapters/latex/parse.ts +3 -2
  146. package/src/build.ts +2 -2
  147. package/src/cli.test.ts +50 -7
  148. package/src/cli.ts +28 -6
  149. package/src/domain/body-pages.test.ts +144 -0
  150. package/src/domain/body-pages.ts +61 -1
  151. package/src/domain/heading-case.test.ts +660 -0
  152. package/src/domain/heading-case.ts +538 -0
  153. package/src/domain/tex-document.ts +36 -0
  154. package/src/domain/venue-name.test.ts +13 -7
  155. package/src/facts-file.test.ts +4 -4
  156. package/src/facts-file.ts +6 -6
  157. package/src/folder-venue-rule.test.ts +10 -10
  158. package/src/folder-venue-rule.ts +6 -6
  159. package/src/heading-case.test.ts +500 -0
  160. package/src/heading-case.ts +275 -0
  161. package/src/init.test.ts +1 -1
  162. package/src/new-paper.test.ts +37 -6
  163. package/src/paper-includes.test.ts +26 -0
  164. package/src/paper-includes.ts +20 -2
  165. package/src/paper-settings-commands.test.ts +26 -11
  166. package/src/ports/latex.ts +7 -0
  167. package/src/preset-card-rule.test.ts +267 -0
  168. package/src/preset-card-rule.ts +384 -0
  169. package/src/presets.test.ts +259 -41
  170. package/src/presets.ts +161 -75
  171. package/src/rule-cases.test.ts +136 -50
  172. package/src/submission.test.ts +44 -4
  173. package/src/submission.ts +28 -7
  174. package/src/talk-rules.test.ts +6 -3
  175. package/src/tex-requirements.harness.ts +25 -11
  176. package/src/tex-requirements.test.ts +127 -1
  177. package/src/tex-requirements.ts +91 -12
  178. package/src/tex-venue-rules.test.ts +196 -21
  179. package/src/tex-venue-rules.ts +47 -16
  180. package/src/venue-rules.test.ts +180 -8
  181. package/src/venue-rules.ts +71 -10
  182. package/templates/paper/paper.tex +1 -1
  183. package/skills/submit-paper/references/venues/agenticdev.md +0 -171
  184. package/skills/submit-paper/references/venues/aisec.md +0 -105
  185. package/skills/submit-paper/references/venues/realm.md +0 -155
@@ -0,0 +1,365 @@
1
+ /**
2
+ * HEADING CASE — what a venue's capitalization style asks of the words of the paper's title and of
3
+ * its headings, decided on the text the LaTeX adapter hands over (`TitledHeading`), never on the
4
+ * source.
5
+ *
6
+ * ── A STYLE IS NAMED AFTER THE TEXT THAT DEFINES IT ──────────────────────────────
7
+ * Venues name the authority precisely and the scope loosely: «headline-style capitalization
8
+ * (according to the Chicago Manual of Style …)» for «the title and all headings». Headline variants
9
+ * disagree on real words — Chicago lowercases `With`, `Between` and `From` «regardless of length»,
10
+ * APA title case and IEEE's manual capitalize them — so there is no style called just «headline»:
11
+ * one word would let a preset apply Chicago where a venue asks APA. A new variant is a new member of
12
+ * `CaseStyle`, added with the venue text that defines it and its own word table.
13
+ *
14
+ * ── CHICAGO-HEADLINE, THE PUBLISHER'S WORDS ──────────────────────────────────────
15
+ * Conference Publishing Consulting's quote of the Chicago Manual of Style 8.157–8.159 (the text is
16
+ * quoted on the rule's page): capitalize the first and the last word, the first word after a colon,
17
+ * and every major word (nouns, pronouns, verbs, adjectives, adverbs); lowercase articles,
18
+ * prepositions «regardless of length», the conjunctions and, but, for, or, nor, and «to» and «as»; in
19
+ * a hyphenated compound always capitalize the first element and lowercase the others when they are
20
+ * an article, a preposition or a conjunction, or when the first is a prefix that cannot stand by
21
+ * itself.
22
+ *
23
+ * ── SILENCE IS THE DEFAULT ───────────────────────────────────────────────────────
24
+ * A finding here is an error at a venue that rejects on it, and a wrong one costs more than a miss.
25
+ * So every word gets one of four classes, and only two of them can be wrong:
26
+ *
27
+ * lower what the publisher lists, and prepositions that are nothing else: lowercase between the
28
+ * first and the last word, capitalized at either end and after a colon
29
+ * major every word not in a list — nouns, verbs, adjectives, adverbs, pronouns: capitalized
30
+ * either a word that is a preposition in one sentence and a particle, an adverb or a subordinating
31
+ * conjunction in another (`up`, `down`, `over`, `out`, `off`, `on`, `in`, `through`, `if`,
32
+ * `while`, `that`…): capitalized at the ends and after a colon, whatever it is; anywhere
33
+ * else not read, in either case, and never fixed
34
+ * name the particle of a surname (`von`, `de`): never read
35
+ *
36
+ * What the rule cannot tell from a word is not read at all: a word with a capital inside (`LLM`,
37
+ * `GitHub`, `iOS`), a single letter, anything with a digit, a dot, a slash or an accent in it, a
38
+ * piece followed by a full stop before the title ends (`al.`, `etc.`, `vs.`), the abbreviations
39
+ * `et al etc cf eg ie approx viz`, a word whose capital is not one letter (a ligature, `fi`), and
40
+ * everything `OPAQUE` in the title (math, code, citations). A word right beside such a thing is
41
+ * not known to be first or last, so a minor word there is left as it is.
42
+ *
43
+ * A title comes in parts — a subtitle after a colon, a question mark, a dash or a line break
44
+ * (`LINE_BREAK`). The first word of a part is a start: a minor word there is not asked either way.
45
+ * The last word of a part is capitalized by Chicago and may be a particle (_What Is It Good For:_),
46
+ * so a minor word there is not asked either way either.
47
+ */
48
+ import { LINE_BREAK, runText, } from "./tex-document.js";
49
+ /** Every style, in the order a message lists them. */
50
+ export const CASE_STYLES = [
51
+ "chicago-headline",
52
+ "sentence",
53
+ "any",
54
+ ];
55
+ /** Every heading level, in the order of the outline. */
56
+ export const HEADING_LEVELS = [
57
+ "section",
58
+ "subsection",
59
+ "subsubsection",
60
+ "paragraph",
61
+ "subparagraph",
62
+ ];
63
+ /** The style a title is judged by: the title's own, or its level's, else every heading's. */
64
+ export function styleFor(options, command) {
65
+ switch (command.kind) {
66
+ case "title":
67
+ return options.title;
68
+ case "heading":
69
+ return options.levels?.[command.level] ?? options.headings;
70
+ }
71
+ }
72
+ const kinds = (kind, words) => words.split(" ").map((w) => [w, kind]);
73
+ /**
74
+ * The words that are not «major». Articles, the conjunctions the publisher names, «to» and «as»,
75
+ * and prepositions that are used as nothing else in a title. A word on the `either` list may be
76
+ * an adverb or a particle («break through», «scale up») and is never read mid-title.
77
+ */
78
+ const KINDS = new Map([
79
+ ...kinds("lower", "the a an and but for or nor to as"),
80
+ ...kinds("lower", "of at by from into onto upon via per with within without during among amongst against between across throughout toward towards amid despite versus beneath beside"),
81
+ ...kinds("either", "up down over out off on in through under around about above below along after before behind near past inside outside beyond like than since until till vs"),
82
+ ...kinds("either", "if because while when where whether although though whereas unless once so yet that how"),
83
+ ...kinds("either", "using following including regarding concerning given excluding considering besides"),
84
+ ...kinds("name", "von van de der den da di du del della la le el"),
85
+ // Abbreviations a title borrows from running text: never words of it, in any place.
86
+ ...kinds("name", "et al etc cf eg ie approx viz"),
87
+ ]);
88
+ /**
89
+ * Prefixes that cannot stand by themselves: after one, the second element of a compound is not
90
+ * read (`Multi-turn` and `Multi-Turn` both pass). Not `self`, `cross`, `meta`, `over`, `under`,
91
+ * `mini`, `micro`, `super`, `mid`, `counter`, `pro`: each stands alone, or is not certain to.
92
+ */
93
+ export const BOUND_PREFIXES = new Set([
94
+ "anti",
95
+ "co",
96
+ "de",
97
+ "inter",
98
+ "intra",
99
+ "multi",
100
+ "non",
101
+ "post",
102
+ "pre",
103
+ "pseudo",
104
+ "quasi",
105
+ "re",
106
+ "semi",
107
+ "sub",
108
+ "trans",
109
+ "ultra",
110
+ "un",
111
+ ]);
112
+ const isNonEmpty = (a) => a.length > 0;
113
+ /**
114
+ * A piece of the title: up to a space, a dash or a line break. A lone hyphen is a piece; two or more
115
+ * are a dash. A dash and a line break each break the title into parts.
116
+ */
117
+ const PIECES = new RegExp(`(?:[^\\s—–${LINE_BREAK}-]|-(?!-))+|-{2,}|[—–${LINE_BREAK}]`, "gu");
118
+ const BREAK = new RegExp(`^(?:-+|[—–${LINE_BREAK}])$`, "u");
119
+ const LEADING = /^[("'“‘`[{¿¡]+/u;
120
+ const TRAILING = /[.,;:!?)"'”’\]}»]+$/u;
121
+ const READABLE = /^\p{L}[\p{L}'’]*(?:-\p{L}[\p{L}'’]*)*$/u;
122
+ /**
123
+ * An element whose capital is not one letter (a ligature: `fi` → `FI`): capitalizing it would
124
+ * rewrite the word, so it is not read.
125
+ */
126
+ const hasPlainCapital = (el) => el.charAt(0).toUpperCase().length === 1;
127
+ /**
128
+ * One piece → what it is: a break, a word the rule reads, or something it does not. A piece followed
129
+ * by a full stop that does not end the title is an abbreviation (`al.`, `etc.`, `vs.`), not a word.
130
+ */
131
+ function tokenOf(piece, index, final) {
132
+ if (BREAK.test(piece))
133
+ return { kind: "break" };
134
+ const unopened = piece.replace(LEADING, "");
135
+ const core = unopened.replace(TRAILING, "");
136
+ const trail = unopened.slice(core.length);
137
+ const elements = core.split("-");
138
+ const abbreviated = trail.startsWith(".") && !final;
139
+ if (!READABLE.test(core) ||
140
+ !isNonEmpty(elements) ||
141
+ abbreviated ||
142
+ !elements.every(hasPlainCapital))
143
+ return { kind: "opaque", trail };
144
+ const from = index + piece.length - unopened.length;
145
+ return {
146
+ kind: "word",
147
+ word: { elements, from, to: from + core.length },
148
+ trail,
149
+ };
150
+ }
151
+ const tokensOf = (text) => {
152
+ const pieces = [...text.matchAll(PIECES)];
153
+ return pieces.map((m, k) => tokenOf(m[0], m.index, k === pieces.length - 1));
154
+ };
155
+ const isWord = (t) => t.kind === "word";
156
+ const trailOf = (t) => t === undefined || t.kind === "break" ? "" : t.trail;
157
+ function placeOf(tokens, i) {
158
+ const prev = tokens[i - 1];
159
+ const next = tokens[i + 1];
160
+ return {
161
+ first: i === 0,
162
+ last: i === tokens.length - 1,
163
+ afterColon: trailOf(prev).includes(":"),
164
+ mayBeFirst: !tokens.slice(0, i).some(isWord),
165
+ mayBeLast: !tokens.slice(i + 1).some(isWord),
166
+ afterBreak: prev?.kind === "break" || /[.?!]/u.test(trailOf(prev)),
167
+ beforeBreak: next?.kind === "break" || /[:?!]/u.test(trailOf(tokens[i])),
168
+ besideOpaque: prev?.kind === "opaque" || next?.kind === "opaque",
169
+ };
170
+ }
171
+ const kindOf = (element) => KINDS.get(element.toLowerCase()) ?? "major";
172
+ /** A word with a capital anywhere but its first letter (`LLM`, `GitHub`, `iOS`): a name, not read. */
173
+ const isMixed = (el) => el.slice(1) !== el.slice(1).toLowerCase();
174
+ /**
175
+ * A single letter other than a lowercase article: a symbol, not a word. A capital «A» in the middle
176
+ * of a title is a label (_Module A_, _Appendix A_, _Vitamin A_), never an article set wrong.
177
+ */
178
+ const isSymbol = (el) => el.length === 1 && el !== "a";
179
+ const capitalized = (el) => el.charAt(0).toUpperCase() + el.slice(1);
180
+ /** A word of the `lower` class: capitalized at either end and after a colon, else lowercase unless unsure. */
181
+ function wantOfMinor(edge, p) {
182
+ if (edge)
183
+ return "upper";
184
+ const unsure = p.mayBeFirst ||
185
+ p.mayBeLast ||
186
+ p.afterBreak ||
187
+ p.beforeBreak ||
188
+ p.besideOpaque;
189
+ return unsure ? "any" : "lower";
190
+ }
191
+ /** What chicago-headline asks of a whole word standing alone. */
192
+ function wantOfWord(el, p) {
193
+ if (isSymbol(el))
194
+ return "any";
195
+ const edge = p.first || p.last || p.afterColon;
196
+ switch (kindOf(el)) {
197
+ case "name":
198
+ return "any";
199
+ case "major":
200
+ return "upper";
201
+ case "either":
202
+ return edge ? "upper" : "any";
203
+ case "lower":
204
+ return wantOfMinor(edge, p);
205
+ }
206
+ }
207
+ /** What chicago-headline asks of the `k`-th element (k > 0) of a compound whose first element is `first`. */
208
+ function wantOfLater(el, k, first) {
209
+ switch (kindOf(el)) {
210
+ case "lower":
211
+ return "lower";
212
+ case "major":
213
+ return k === 1 && BOUND_PREFIXES.has(first.toLowerCase())
214
+ ? "any"
215
+ : "upper";
216
+ case "either":
217
+ case "name":
218
+ return "any";
219
+ }
220
+ }
221
+ /** An element as `want` asks, or as it is when it is a name or the want is open. */
222
+ function applied(el, want) {
223
+ if (want === "any" || isMixed(el))
224
+ return el;
225
+ return want === "upper" ? capitalized(el) : el.toLowerCase();
226
+ }
227
+ /**
228
+ * What chicago-headline asks of each element of a word. A compound with a single-letter element
229
+ * (`k-means`, `e-mail`) is not read; otherwise the first element is capitalized always and the rest
230
+ * follow `wantOfLater`.
231
+ */
232
+ function judgedElements(word, p) {
233
+ const [first] = word.elements;
234
+ const wantOf = (el, k) => {
235
+ if (word.elements.length === 1)
236
+ return wantOfWord(el, p);
237
+ if (word.elements.some(isSymbol))
238
+ return "any";
239
+ return k === 0 ? "upper" : wantOfLater(el, k, first);
240
+ };
241
+ return word.elements.map((got, k) => {
242
+ const want = wantOf(got, k);
243
+ return { k, want, got, expected: applied(got, want) };
244
+ });
245
+ }
246
+ /** What a message calls the thing a word stands in. */
247
+ function nounOf(c) {
248
+ switch (c.kind) {
249
+ case "title":
250
+ return "title";
251
+ case "heading":
252
+ return "heading";
253
+ }
254
+ }
255
+ /** Why an element is wanted the way it is, as the message says it. */
256
+ function whyOf(j, p, h) {
257
+ if (j.want === "lower")
258
+ return "an article, preposition or conjunction is lowercase";
259
+ if (j.k > 0)
260
+ return "the elements of a hyphenated compound are capitalized unless one is an article, a preposition or a conjunction, or follows a prefix such as «non-»";
261
+ if (p.first)
262
+ return `the first word of a ${nounOf(h.command)} is capitalized`;
263
+ if (p.last)
264
+ return `the last word of a ${nounOf(h.command)} is capitalized`;
265
+ if (p.afterColon)
266
+ return "the first word after a colon is capitalized";
267
+ return "nouns, pronouns, verbs, adjectives and adverbs are capitalized";
268
+ }
269
+ /** The letters of a word, as the title says them. */
270
+ const wordText = (h, w) => runText(h.title).slice(w.from, w.to);
271
+ /**
272
+ * Where the letters `[from, to)` of a title stand in the source: from its first character to past its
273
+ * last. Total, no null: the title's characters are the source's, each at its own offset.
274
+ */
275
+ function spanOf(h, from, to) {
276
+ const offsets = h.title.segments
277
+ .flatMap((s) => s.text.split("").map((_, k) => s.at + k))
278
+ .slice(from, to);
279
+ return { start: Math.min(...offsets), end: Math.max(...offsets) + 1 };
280
+ }
281
+ /** The fix for a word, only where the source holds exactly the letters read, side by side. */
282
+ function fixOf(h, w, expected, source) {
283
+ const span = spanOf(h, w.from, w.to);
284
+ const contiguous = span.end - span.start === w.to - w.from;
285
+ if (!contiguous || source.slice(span.start, span.end) !== wordText(h, w))
286
+ return null;
287
+ return { span, text: expected };
288
+ }
289
+ /** The macro a title is the argument of. */
290
+ function macroOf(c) {
291
+ switch (c.kind) {
292
+ case "title":
293
+ return "title";
294
+ case "heading":
295
+ return c.level;
296
+ }
297
+ }
298
+ /** `\section` for a title, `\section[…]` for the optional short one: how a message names the heading. */
299
+ const whereOf = (h) => h.argument === "short"
300
+ ? `\\${macroOf(h.command)}[…]`
301
+ : `\\${macroOf(h.command)}`;
302
+ /** One word against chicago-headline: nothing, or a finding with the fix where it is certain. */
303
+ function judgeHeadlineWord(h, word, p, source) {
304
+ const [changed] = judgedElements(word, p).filter((j) => j.expected !== j.got);
305
+ if (changed === undefined)
306
+ return [];
307
+ const expected = judgedElements(word, p)
308
+ .map((j) => j.expected)
309
+ .join("-");
310
+ return [
311
+ {
312
+ messageId: changed.want === "upper" ? "capitalize" : "lowercase",
313
+ data: {
314
+ word: wordText(h, word),
315
+ expected,
316
+ why: whyOf(changed, p, h),
317
+ where: whereOf(h),
318
+ },
319
+ at: spanOf(h, word.from, word.to),
320
+ fix: fixOf(h, word, expected, source),
321
+ },
322
+ ];
323
+ }
324
+ /** Sentence: the first word of a title is capitalized, and nothing else is read. */
325
+ function judgeSentenceWord(h, word, p) {
326
+ const [first] = word.elements;
327
+ const got = wordText(h, word);
328
+ const readable = kindOf(first) !== "name" && !isSymbol(first) && !isMixed(first);
329
+ const expected = p.first && readable ? capitalized(got) : got;
330
+ if (expected === got)
331
+ return [];
332
+ return [
333
+ {
334
+ messageId: "sentenceFirst",
335
+ data: { word: got, expected, where: whereOf(h) },
336
+ at: spanOf(h, word.from, word.to),
337
+ fix: null,
338
+ },
339
+ ];
340
+ }
341
+ /** The findings of one title, each word judged where it stands by `judge`. */
342
+ function judgeWords(h, judge) {
343
+ const tokens = tokensOf(runText(h.title));
344
+ return tokens.flatMap((t, i) => t.kind === "word" ? judge(t.word, placeOf(tokens, i)) : []);
345
+ }
346
+ /** The findings of one title under the style its scope asks. */
347
+ function judgeTitle(h, style, source) {
348
+ switch (style) {
349
+ case "any":
350
+ return [];
351
+ case "chicago-headline":
352
+ return judgeWords(h, (w, p) => judgeHeadlineWord(h, w, p, source));
353
+ case "sentence":
354
+ return judgeWords(h, (w, p) => judgeSentenceWord(h, w, p));
355
+ }
356
+ }
357
+ /**
358
+ * The paper's title and every heading, each against the style its scope asks (`styleFor`), in
359
+ * document order. `source` is the text the titles were read from: a fix is offered only where it
360
+ * holds the very letters the judge read.
361
+ */
362
+ export function judgeHeadingCase(headings, options, source) {
363
+ return headings.flatMap((h) => judgeTitle(h, styleFor(options, h.command), source));
364
+ }
365
+ //# sourceMappingURL=heading-case.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heading-case.js","sourceRoot":"","sources":["../../src/domain/heading-case.ts"],"names":[],"mappings":"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"}
@@ -144,4 +144,36 @@ export interface LayoutOverride {
144
144
  readonly command: string;
145
145
  readonly place: Place;
146
146
  }
147
+ /**
148
+ * What stands in a heading's text for something the reader sees and the case judge does not read —
149
+ * math, code, a citation, any command whose text is not plain: one character no title contains.
150
+ */
151
+ export declare const OPAQUE = "\uFFFC";
152
+ /**
153
+ * What stands in a heading's text for a forced line break (`\\`, `\newline`, `\linebreak`): one
154
+ * character no title contains. A title broken over two lines is two parts — a title and its
155
+ * subtitle — so the case judge reads the word after it as a start, like the word after a dash.
156
+ */
157
+ export declare const LINE_BREAK = "\u2028";
158
+ /** The headings whose title a venue sets in a case style. */
159
+ export type HeadingLevel = "section" | "subsection" | "subsubsection" | "paragraph" | "subparagraph";
160
+ /** Which command a title belongs to: the paper's own `\title`, or a heading at its level. */
161
+ export type TitledCommand = {
162
+ readonly kind: "title";
163
+ } | {
164
+ readonly kind: "heading";
165
+ readonly level: HeadingLevel;
166
+ };
167
+ /** Which argument of the command: the title, or the optional short title in brackets. */
168
+ export type TitleArgument = "title" | "short";
169
+ /**
170
+ * One title as the case judge reads it — the paper's or a heading's: its text, each character with
171
+ * the source offset it came from, and `OPAQUE` where something it does not read stands. A label, a
172
+ * footnote and a comment are not in it; a title with nothing else has no `TitledHeading`.
173
+ */
174
+ export interface TitledHeading {
175
+ readonly command: TitledCommand;
176
+ readonly argument: TitleArgument;
177
+ readonly title: TextRun;
178
+ }
147
179
  //# sourceMappingURL=tex-document.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tex-document.d.ts","sourceRoot":"","sources":["../../src/domain/tex-document.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oDAAoD;AACpD,MAAM,WAAW,IAAI;IACnB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,oFAAoF;AACpF,MAAM,MAAM,KAAK,GACf;IAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC;AAE/E,mGAAmG;AACnG,eAAO,MAAM,QAAQ,GAAI,GAAG,MAAM,KAAG,MACM,CAAC;AAE5C,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,uFAAuF;AACvF,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GACjD,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAAG,aAAa,CAAC,CAAC;AAExE;;;;GAIG;AACH,MAAM,MAAM,SAAS,GACjB;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B,cAAc,GACd;IACE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,SAAS;QAC5B,cAAc;QACd,cAAc;QACd,GAAG,cAAc,EAAE;KACpB,CAAC;CACH,CAAC;AAEN,sFAAsF;AACtF,eAAO,MAAM,cAAc,GACzB,KAAK,aAAa,EAClB,MAAM,aAAa,KAClB,SAAS,MAAM,EAA0D,CAAC;AAE7E,uGAAuG;AACvG,MAAM,MAAM,WAAW,GACnB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAC7D;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,aAAa,CAAA;CAAE,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,aAAa,EACnB,IAAI,EAAE,aAAa,GAClB,WAAW,CAMb;AAED,iGAAiG;AACjG,eAAO,MAAM,iBAAiB,GAAI,GAAG,aAAa,KAAG,MACiC,CAAC;AAEvF,iFAAiF;AACjF,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAED,gGAAgG;AAChG,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,0FAA0F;IAC1F,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,oFAAoF;IACpF,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,6FAA6F;AAC7F,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;CACrB;AAED,gEAAgE;AAChE,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;CACrD;AAED,sBAAsB;AACtB,eAAO,MAAM,OAAO,GAAI,KAAK,OAAO,KAAG,MACG,CAAC;AAqB3C;;;GAGG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAI1E;AAED,4GAA4G;AAC5G,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG,WAAW,CAAC;AAE7C;;;GAGG;AACH,MAAM,MAAM,UAAU,GAClB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACpD;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GACtE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;CAAE,CAAC;AAEzE,uGAAuG;AACvG,MAAM,WAAW,OAAO;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,UAAU,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;CACzD;AAED,iFAAiF;AACjF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB"}
1
+ {"version":3,"file":"tex-document.d.ts","sourceRoot":"","sources":["../../src/domain/tex-document.ts"],"names":[],"mappings":"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"}
@@ -45,4 +45,15 @@ export function spanIn(run, from, to) {
45
45
  const last = to > from ? offsetIn(run.segments, to - 1) : null;
46
46
  return start === null || last === null ? null : { start, end: last + 1 };
47
47
  }
48
+ /**
49
+ * What stands in a heading's text for something the reader sees and the case judge does not read —
50
+ * math, code, a citation, any command whose text is not plain: one character no title contains.
51
+ */
52
+ export const OPAQUE = "";
53
+ /**
54
+ * What stands in a heading's text for a forced line break (`\\`, `\newline`, `\linebreak`): one
55
+ * character no title contains. A title broken over two lines is two parts — a title and its
56
+ * subtitle — so the case judge reads the word after it as a start, like the word after a dash.
57
+ */
58
+ export const LINE_BREAK = "\u2028";
48
59
  //# sourceMappingURL=tex-document.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tex-document.js","sourceRoot":"","sources":["../../src/domain/tex-document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tex-document.js","sourceRoot":"","sources":["../../src/domain/tex-document.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"latex-language.d.ts","sourceRoot":"","sources":["../../eslint-rules/latex-language.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"latex-language.d.ts","sourceRoot":"","sources":["../../eslint-rules/latex-language.ts"],"names":[],"mappings":"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"}
@@ -423,9 +423,22 @@ export function texToMdast(src, { parse = (s) => getParser().parse(s), } = {}) {
423
423
  blank(pos.start.offset, end.offset + 1);
424
424
  for (let i = 0; i < depth; i++)
425
425
  chars[pos.start.offset + i] = "#";
426
- const tStart = end.offset - title.length;
427
- title.split("").forEach((ch, i) => {
428
- chars[tStart + i] = ch;
426
+ // 🔴 The title is written right-aligned against the closing `}`, into the cells that are
427
+ // not a newline: a heading written over several lines keeps every `\n` where it was. The
428
+ // projection's lines must be the source's — ESLint turns an offset into a line on this
429
+ // text (`getLocFromIndex`), and a rule that reports a raw offset after a two-line heading
430
+ // was reported one line up, outside the reach of a disable directive. Measured 2026-10-04.
431
+ const cells = [...Array(end.offset - pos.start.offset - depth).keys()]
432
+ .map((k) => end.offset - 1 - k)
433
+ .filter((o) => src[o] !== "\n")
434
+ .slice(0, title.length)
435
+ .reverse();
436
+ const tStart = cells[0] ?? end.offset;
437
+ title
438
+ .slice(title.length - cells.length)
439
+ .split("")
440
+ .forEach((ch, i) => {
441
+ chars[nth(cells, i)] = ch;
429
442
  });
430
443
  const tPos = { start: loc(tStart), end: loc(end.offset) };
431
444
  children.push({
@@ -1 +1 @@
1
- {"version":3,"file":"latex-language.js","sourceRoot":"","sources":["../../eslint-rules/latex-language.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"latex-language.js","sourceRoot":"","sources":["../../eslint-rules/latex-language.ts"],"names":[],"mappings":"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"}
@@ -10,10 +10,10 @@ export declare const FACTS_DIR = "_build";
10
10
  export declare const FACTS_FILE = "paper.facts.json";
11
11
  /** Where a paper's facts live. */
12
12
  export declare const factsPath: (paperDir: string) => string;
13
- /** What the facts need from a paper's `paperlint.json`: its venue's label, its kind, where its PDF is. */
13
+ /** What the facts need from a paper's `paperlint.json`: its venue's preset id, its kind, where its PDF is. */
14
14
  export interface VenueDecl {
15
- /** The venue preset's display label (`agenticdev`), or null when the paper extends none. */
16
- readonly label: string | null;
15
+ /** The venue preset's id (`agenticdev`, never its display name), or null when the paper extends none. */
16
+ readonly id: string | null;
17
17
  readonly kind: string | null;
18
18
  readonly pdf: string | null;
19
19
  }