chaffjs 0.17.0 → 0.19.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 (1236) hide show
  1. package/README.md +52 -56
  2. package/bin/chaff.js +17 -2
  3. package/dist/acronym-expansions.d.ts +26 -0
  4. package/dist/acronym-expansions.d.ts.map +1 -0
  5. package/dist/acronym-expansions.js +88 -0
  6. package/dist/acronym-expansions.js.map +1 -0
  7. package/dist/announced-count.d.ts +26 -0
  8. package/dist/announced-count.d.ts.map +1 -0
  9. package/dist/announced-count.js +138 -0
  10. package/dist/announced-count.js.map +1 -0
  11. package/dist/announced-list.d.ts +30 -0
  12. package/dist/announced-list.d.ts.map +1 -0
  13. package/dist/announced-list.js +95 -0
  14. package/dist/announced-list.js.map +1 -0
  15. package/dist/api.d.ts +168 -0
  16. package/dist/api.d.ts.map +1 -0
  17. package/dist/api.js +10 -0
  18. package/dist/api.js.map +1 -0
  19. package/dist/bare-url.d.ts +14 -0
  20. package/dist/bare-url.d.ts.map +1 -0
  21. package/dist/bare-url.js +28 -0
  22. package/dist/bare-url.js.map +1 -0
  23. package/dist/baseline.d.ts +5 -0
  24. package/dist/baseline.d.ts.map +1 -1
  25. package/dist/baseline.js +16 -1
  26. package/dist/baseline.js.map +1 -1
  27. package/dist/body-section.d.ts +7 -0
  28. package/dist/body-section.d.ts.map +1 -0
  29. package/dist/body-section.js +6 -0
  30. package/dist/body-section.js.map +1 -0
  31. package/dist/calendar-number.d.ts +2 -0
  32. package/dist/calendar-number.d.ts.map +1 -1
  33. package/dist/calendar-number.js +9 -2
  34. package/dist/calendar-number.js.map +1 -1
  35. package/dist/cli-args.d.ts +4 -0
  36. package/dist/cli-args.d.ts.map +1 -1
  37. package/dist/cli-args.js +5 -0
  38. package/dist/cli-args.js.map +1 -1
  39. package/dist/cli-text.d.ts +0 -1
  40. package/dist/cli-text.d.ts.map +1 -1
  41. package/dist/cli-text.js +14 -18
  42. package/dist/cli-text.js.map +1 -1
  43. package/dist/cli.d.ts.map +1 -1
  44. package/dist/cli.js +83 -84
  45. package/dist/cli.js.map +1 -1
  46. package/dist/closing-paragraph.d.ts +7 -0
  47. package/dist/closing-paragraph.d.ts.map +1 -0
  48. package/dist/closing-paragraph.js +22 -0
  49. package/dist/closing-paragraph.js.map +1 -0
  50. package/dist/commands/compare.d.ts +15 -0
  51. package/dist/commands/compare.d.ts.map +1 -0
  52. package/dist/commands/compare.js +64 -0
  53. package/dist/commands/compare.js.map +1 -0
  54. package/dist/commands/document-commands.d.ts +9 -0
  55. package/dist/commands/document-commands.d.ts.map +1 -0
  56. package/dist/commands/document-commands.js +17 -0
  57. package/dist/commands/document-commands.js.map +1 -0
  58. package/dist/commands/eval.d.ts.map +1 -1
  59. package/dist/commands/eval.js +19 -10
  60. package/dist/commands/eval.js.map +1 -1
  61. package/dist/commands/facts.d.ts +8 -0
  62. package/dist/commands/facts.d.ts.map +1 -0
  63. package/dist/commands/facts.js +30 -0
  64. package/dist/commands/facts.js.map +1 -0
  65. package/dist/commands/feedback.d.ts +15 -2
  66. package/dist/commands/feedback.d.ts.map +1 -1
  67. package/dist/commands/feedback.js +36 -6
  68. package/dist/commands/feedback.js.map +1 -1
  69. package/dist/commands/fix-plan.d.ts +13 -0
  70. package/dist/commands/fix-plan.d.ts.map +1 -0
  71. package/dist/commands/fix-plan.js +44 -0
  72. package/dist/commands/fix-plan.js.map +1 -0
  73. package/dist/commands/outline.d.ts +8 -0
  74. package/dist/commands/outline.d.ts.map +1 -0
  75. package/dist/commands/outline.js +43 -0
  76. package/dist/commands/outline.js.map +1 -0
  77. package/dist/commands/read-document.d.ts +14 -0
  78. package/dist/commands/read-document.d.ts.map +1 -0
  79. package/dist/commands/read-document.js +21 -0
  80. package/dist/commands/read-document.js.map +1 -0
  81. package/dist/commands/suppressions.d.ts +7 -0
  82. package/dist/commands/suppressions.d.ts.map +1 -0
  83. package/dist/commands/suppressions.js +9 -0
  84. package/dist/commands/suppressions.js.map +1 -0
  85. package/dist/commands/test.d.ts.map +1 -1
  86. package/dist/commands/test.js +3 -5
  87. package/dist/commands/test.js.map +1 -1
  88. package/dist/commands/tree.d.ts +13 -0
  89. package/dist/commands/tree.d.ts.map +1 -1
  90. package/dist/commands/tree.js +35 -5
  91. package/dist/commands/tree.js.map +1 -1
  92. package/dist/compare/atom.d.ts +31 -0
  93. package/dist/compare/atom.d.ts.map +1 -0
  94. package/dist/compare/atom.js +4 -0
  95. package/dist/compare/atom.js.map +1 -0
  96. package/dist/compare/clock-time.d.ts +8 -0
  97. package/dist/compare/clock-time.d.ts.map +1 -0
  98. package/dist/compare/clock-time.js +68 -0
  99. package/dist/compare/clock-time.js.map +1 -0
  100. package/dist/compare/distinct.d.ts +9 -0
  101. package/dist/compare/distinct.d.ts.map +1 -0
  102. package/dist/compare/distinct.js +12 -0
  103. package/dist/compare/distinct.js.map +1 -0
  104. package/dist/compare/extract.d.ts +15 -0
  105. package/dist/compare/extract.d.ts.map +1 -0
  106. package/dist/compare/extract.js +60 -0
  107. package/dist/compare/extract.js.map +1 -0
  108. package/dist/compare/fact-key.d.ts +17 -0
  109. package/dist/compare/fact-key.d.ts.map +1 -0
  110. package/dist/compare/fact-key.js +25 -0
  111. package/dist/compare/fact-key.js.map +1 -0
  112. package/dist/compare/fact-text.d.ts +28 -0
  113. package/dist/compare/fact-text.d.ts.map +1 -0
  114. package/dist/compare/fact-text.js +61 -0
  115. package/dist/compare/fact-text.js.map +1 -0
  116. package/dist/compare/facts-render.d.ts +17 -0
  117. package/dist/compare/facts-render.d.ts.map +1 -0
  118. package/dist/compare/facts-render.js +43 -0
  119. package/dist/compare/facts-render.js.map +1 -0
  120. package/dist/compare/facts-text.d.ts +15 -0
  121. package/dist/compare/facts-text.d.ts.map +1 -0
  122. package/dist/compare/facts-text.js +27 -0
  123. package/dist/compare/facts-text.js.map +1 -0
  124. package/dist/compare/markup-atoms.d.ts +11 -0
  125. package/dist/compare/markup-atoms.d.ts.map +1 -0
  126. package/dist/compare/markup-atoms.js +23 -0
  127. package/dist/compare/markup-atoms.js.map +1 -0
  128. package/dist/compare/match.d.ts +20 -0
  129. package/dist/compare/match.d.ts.map +1 -0
  130. package/dist/compare/match.js +84 -0
  131. package/dist/compare/match.js.map +1 -0
  132. package/dist/compare/outcome.d.ts +36 -0
  133. package/dist/compare/outcome.d.ts.map +1 -0
  134. package/dist/compare/outcome.js +46 -0
  135. package/dist/compare/outcome.js.map +1 -0
  136. package/dist/compare/proper-nouns.d.ts +19 -0
  137. package/dist/compare/proper-nouns.d.ts.map +1 -0
  138. package/dist/compare/proper-nouns.js +43 -0
  139. package/dist/compare/proper-nouns.js.map +1 -0
  140. package/dist/compare/render.d.ts +13 -0
  141. package/dist/compare/render.d.ts.map +1 -0
  142. package/dist/compare/render.js +64 -0
  143. package/dist/compare/render.js.map +1 -0
  144. package/dist/compare/spans.d.ts +9 -0
  145. package/dist/compare/spans.d.ts.map +1 -0
  146. package/dist/compare/spans.js +11 -0
  147. package/dist/compare/spans.js.map +1 -0
  148. package/dist/compare/text-atoms.d.ts +27 -0
  149. package/dist/compare/text-atoms.d.ts.map +1 -0
  150. package/dist/compare/text-atoms.js +69 -0
  151. package/dist/compare/text-atoms.js.map +1 -0
  152. package/dist/compare/text.d.ts +24 -0
  153. package/dist/compare/text.d.ts.map +1 -0
  154. package/dist/compare/text.js +90 -0
  155. package/dist/compare/text.js.map +1 -0
  156. package/dist/compare/tree-atoms.d.ts +20 -0
  157. package/dist/compare/tree-atoms.d.ts.map +1 -0
  158. package/dist/compare/tree-atoms.js +58 -0
  159. package/dist/compare/tree-atoms.js.map +1 -0
  160. package/dist/compare/written-names.d.ts +8 -0
  161. package/dist/compare/written-names.d.ts.map +1 -0
  162. package/dist/compare/written-names.js +24 -0
  163. package/dist/compare/written-names.js.map +1 -0
  164. package/dist/config/load.d.ts +23 -0
  165. package/dist/config/load.d.ts.map +1 -1
  166. package/dist/config/load.js +6 -0
  167. package/dist/config/load.js.map +1 -1
  168. package/dist/config/option-problems.d.ts +17 -0
  169. package/dist/config/option-problems.d.ts.map +1 -0
  170. package/dist/config/option-problems.js +59 -0
  171. package/dist/config/option-problems.js.map +1 -0
  172. package/dist/config/read.d.ts +4 -0
  173. package/dist/config/read.d.ts.map +1 -0
  174. package/dist/config/read.js +8 -0
  175. package/dist/config/read.js.map +1 -0
  176. package/dist/config/rule-problems.d.ts +2 -4
  177. package/dist/config/rule-problems.d.ts.map +1 -1
  178. package/dist/config/rule-problems.js +7 -1
  179. package/dist/config/rule-problems.js.map +1 -1
  180. package/dist/config/style.d.ts +21 -0
  181. package/dist/config/style.d.ts.map +1 -0
  182. package/dist/config/style.js +48 -0
  183. package/dist/config/style.js.map +1 -0
  184. package/dist/config/warnings.d.ts +6 -0
  185. package/dist/config/warnings.d.ts.map +1 -0
  186. package/dist/config/warnings.js +10 -0
  187. package/dist/config/warnings.js.map +1 -0
  188. package/dist/config/write.d.ts.map +1 -1
  189. package/dist/config/write.js +17 -4
  190. package/dist/config/write.js.map +1 -1
  191. package/dist/custom/bounded-match.d.ts +15 -0
  192. package/dist/custom/bounded-match.d.ts.map +1 -0
  193. package/dist/custom/bounded-match.js +43 -0
  194. package/dist/custom/bounded-match.js.map +1 -0
  195. package/dist/custom/load.d.ts +11 -0
  196. package/dist/custom/load.d.ts.map +1 -0
  197. package/dist/custom/load.js +19 -0
  198. package/dist/custom/load.js.map +1 -0
  199. package/dist/custom/module-path.d.ts +11 -0
  200. package/dist/custom/module-path.d.ts.map +1 -0
  201. package/dist/custom/module-path.js +15 -0
  202. package/dist/custom/module-path.js.map +1 -0
  203. package/dist/custom/parse.d.ts +84 -0
  204. package/dist/custom/parse.d.ts.map +1 -0
  205. package/dist/custom/parse.js +258 -0
  206. package/dist/custom/parse.js.map +1 -0
  207. package/dist/custom/problems.d.ts +8 -0
  208. package/dist/custom/problems.d.ts.map +1 -0
  209. package/dist/custom/problems.js +95 -0
  210. package/dist/custom/problems.js.map +1 -0
  211. package/dist/custom/regex-safety.d.ts +11 -0
  212. package/dist/custom/regex-safety.d.ts.map +1 -0
  213. package/dist/custom/regex-safety.js +110 -0
  214. package/dist/custom/regex-safety.js.map +1 -0
  215. package/dist/custom/token-pattern.d.ts +8 -0
  216. package/dist/custom/token-pattern.d.ts.map +1 -0
  217. package/dist/custom/token-pattern.js +75 -0
  218. package/dist/custom/token-pattern.js.map +1 -0
  219. package/dist/detect-language.js +1 -1
  220. package/dist/detect.d.ts.map +1 -1
  221. package/dist/detect.js +30 -2
  222. package/dist/detect.js.map +1 -1
  223. package/dist/detectors/acronym-context.d.ts +2 -0
  224. package/dist/detectors/acronym-context.d.ts.map +1 -1
  225. package/dist/detectors/acronym-context.js +12 -4
  226. package/dist/detectors/acronym-context.js.map +1 -1
  227. package/dist/detectors/ai-phrasing.d.ts +23 -0
  228. package/dist/detectors/ai-phrasing.d.ts.map +1 -0
  229. package/dist/detectors/ai-phrasing.js +116 -0
  230. package/dist/detectors/ai-phrasing.js.map +1 -0
  231. package/dist/detectors/announced-count.d.ts +4 -0
  232. package/dist/detectors/announced-count.d.ts.map +1 -0
  233. package/dist/detectors/announced-count.js +20 -0
  234. package/dist/detectors/announced-count.js.map +1 -0
  235. package/dist/detectors/bold-label.d.ts +10 -0
  236. package/dist/detectors/bold-label.d.ts.map +1 -0
  237. package/dist/detectors/bold-label.js +44 -0
  238. package/dist/detectors/bold-label.js.map +1 -0
  239. package/dist/detectors/broken-link.d.ts +17 -0
  240. package/dist/detectors/broken-link.d.ts.map +1 -0
  241. package/dist/detectors/broken-link.js +66 -0
  242. package/dist/detectors/broken-link.js.map +1 -0
  243. package/dist/detectors/cited-name.d.ts.map +1 -1
  244. package/dist/detectors/cited-name.js +4 -4
  245. package/dist/detectors/cited-name.js.map +1 -1
  246. package/dist/detectors/cited-title.d.ts +11 -0
  247. package/dist/detectors/cited-title.d.ts.map +1 -0
  248. package/dist/detectors/cited-title.js +75 -0
  249. package/dist/detectors/cited-title.js.map +1 -0
  250. package/dist/detectors/concrete-evidence.d.ts +1 -1
  251. package/dist/detectors/concrete-evidence.d.ts.map +1 -1
  252. package/dist/detectors/concrete-evidence.js +2 -1
  253. package/dist/detectors/concrete-evidence.js.map +1 -1
  254. package/dist/detectors/contrast-frame.d.ts +17 -0
  255. package/dist/detectors/contrast-frame.d.ts.map +1 -0
  256. package/dist/detectors/contrast-frame.js +32 -0
  257. package/dist/detectors/contrast-frame.js.map +1 -0
  258. package/dist/detectors/custom.d.ts +8 -0
  259. package/dist/detectors/custom.d.ts.map +1 -0
  260. package/dist/detectors/custom.js +71 -0
  261. package/dist/detectors/custom.js.map +1 -0
  262. package/dist/detectors/dangling-figure.d.ts +7 -0
  263. package/dist/detectors/dangling-figure.d.ts.map +1 -0
  264. package/dist/detectors/dangling-figure.js +20 -0
  265. package/dist/detectors/dangling-figure.js.map +1 -0
  266. package/dist/detectors/definition-use.d.ts +8 -0
  267. package/dist/detectors/definition-use.d.ts.map +1 -0
  268. package/dist/detectors/definition-use.js +32 -0
  269. package/dist/detectors/definition-use.js.map +1 -0
  270. package/dist/detectors/doubled-punctuation.d.ts +9 -0
  271. package/dist/detectors/doubled-punctuation.d.ts.map +1 -0
  272. package/dist/detectors/doubled-punctuation.js +35 -0
  273. package/dist/detectors/doubled-punctuation.js.map +1 -0
  274. package/dist/detectors/doubled-word.d.ts +5 -0
  275. package/dist/detectors/doubled-word.d.ts.map +1 -1
  276. package/dist/detectors/doubled-word.js +24 -11
  277. package/dist/detectors/doubled-word.js.map +1 -1
  278. package/dist/detectors/duplicate-heading.d.ts +14 -0
  279. package/dist/detectors/duplicate-heading.d.ts.map +1 -0
  280. package/dist/detectors/duplicate-heading.js +39 -0
  281. package/dist/detectors/duplicate-heading.js.map +1 -0
  282. package/dist/detectors/empty-section.d.ts +8 -0
  283. package/dist/detectors/empty-section.d.ts.map +1 -0
  284. package/dist/detectors/empty-section.js +16 -0
  285. package/dist/detectors/empty-section.js.map +1 -0
  286. package/dist/detectors/enumerated-runs.d.ts +1 -1
  287. package/dist/detectors/enumerated-runs.d.ts.map +1 -1
  288. package/dist/detectors/enumerated-runs.js +15 -4
  289. package/dist/detectors/enumerated-runs.js.map +1 -1
  290. package/dist/detectors/fullwidth-alnum.d.ts +24 -0
  291. package/dist/detectors/fullwidth-alnum.d.ts.map +1 -0
  292. package/dist/detectors/fullwidth-alnum.js +88 -0
  293. package/dist/detectors/fullwidth-alnum.js.map +1 -0
  294. package/dist/detectors/gram-furniture.d.ts +6 -0
  295. package/dist/detectors/gram-furniture.d.ts.map +1 -0
  296. package/dist/detectors/gram-furniture.js +21 -0
  297. package/dist/detectors/gram-furniture.js.map +1 -0
  298. package/dist/detectors/gram-place.d.ts +2 -0
  299. package/dist/detectors/gram-place.d.ts.map +1 -1
  300. package/dist/detectors/gram-place.js +9 -7
  301. package/dist/detectors/gram-place.js.map +1 -1
  302. package/dist/detectors/gram-windows.d.ts +9 -0
  303. package/dist/detectors/gram-windows.d.ts.map +1 -0
  304. package/dist/detectors/gram-windows.js +27 -0
  305. package/dist/detectors/gram-windows.js.map +1 -0
  306. package/dist/detectors/hankaku-kana.d.ts +9 -0
  307. package/dist/detectors/hankaku-kana.d.ts.map +1 -0
  308. package/dist/detectors/hankaku-kana.js +27 -0
  309. package/dist/detectors/hankaku-kana.js.map +1 -0
  310. package/dist/detectors/heading-case.d.ts +2 -0
  311. package/dist/detectors/heading-case.d.ts.map +1 -1
  312. package/dist/detectors/heading-case.js +29 -2
  313. package/dist/detectors/heading-case.js.map +1 -1
  314. package/dist/detectors/heading-code-words.d.ts +6 -0
  315. package/dist/detectors/heading-code-words.d.ts.map +1 -0
  316. package/dist/detectors/heading-code-words.js +29 -0
  317. package/dist/detectors/heading-code-words.js.map +1 -0
  318. package/dist/detectors/heading-echo.d.ts.map +1 -1
  319. package/dist/detectors/heading-echo.js +7 -4
  320. package/dist/detectors/heading-echo.js.map +1 -1
  321. package/dist/detectors/heading-level-skip.d.ts +12 -0
  322. package/dist/detectors/heading-level-skip.d.ts.map +1 -0
  323. package/dist/detectors/heading-level-skip.js +11 -0
  324. package/dist/detectors/heading-level-skip.js.map +1 -0
  325. package/dist/detectors/image-alt-text.d.ts +3 -0
  326. package/dist/detectors/image-alt-text.d.ts.map +1 -0
  327. package/dist/detectors/image-alt-text.js +9 -0
  328. package/dist/detectors/image-alt-text.js.map +1 -0
  329. package/dist/detectors/index.d.ts.map +1 -1
  330. package/dist/detectors/index.js +70 -1
  331. package/dist/detectors/index.js.map +1 -1
  332. package/dist/detectors/invisible-character.d.ts +20 -0
  333. package/dist/detectors/invisible-character.d.ts.map +1 -0
  334. package/dist/detectors/invisible-character.js +143 -0
  335. package/dist/detectors/invisible-character.js.map +1 -0
  336. package/dist/detectors/kutoten-consistency.d.ts +24 -0
  337. package/dist/detectors/kutoten-consistency.d.ts.map +1 -0
  338. package/dist/detectors/kutoten-consistency.js +77 -0
  339. package/dist/detectors/kutoten-consistency.js.map +1 -0
  340. package/dist/detectors/lead-in.d.ts +1 -0
  341. package/dist/detectors/lead-in.d.ts.map +1 -1
  342. package/dist/detectors/lead-in.js +2 -1
  343. package/dist/detectors/lead-in.js.map +1 -1
  344. package/dist/detectors/lexicon-match.d.ts +14 -1
  345. package/dist/detectors/lexicon-match.d.ts.map +1 -1
  346. package/dist/detectors/lexicon-match.js +32 -2
  347. package/dist/detectors/lexicon-match.js.map +1 -1
  348. package/dist/detectors/lexicon.d.ts +6 -1
  349. package/dist/detectors/lexicon.d.ts.map +1 -1
  350. package/dist/detectors/lexicon.js +31 -13
  351. package/dist/detectors/lexicon.js.map +1 -1
  352. package/dist/detectors/list-item.d.ts +45 -0
  353. package/dist/detectors/list-item.d.ts.map +1 -0
  354. package/dist/detectors/list-item.js +88 -0
  355. package/dist/detectors/list-item.js.map +1 -0
  356. package/dist/detectors/list-items.d.ts +31 -0
  357. package/dist/detectors/list-items.d.ts.map +1 -0
  358. package/dist/detectors/list-items.js +113 -0
  359. package/dist/detectors/list-items.js.map +1 -0
  360. package/dist/detectors/list-lead-in.d.ts +7 -0
  361. package/dist/detectors/list-lead-in.d.ts.map +1 -0
  362. package/dist/detectors/list-lead-in.js +28 -0
  363. package/dist/detectors/list-lead-in.js.map +1 -0
  364. package/dist/detectors/list-sentence.d.ts +67 -0
  365. package/dist/detectors/list-sentence.d.ts.map +1 -0
  366. package/dist/detectors/list-sentence.js +130 -0
  367. package/dist/detectors/list-sentence.js.map +1 -0
  368. package/dist/detectors/list-view.d.ts +34 -0
  369. package/dist/detectors/list-view.d.ts.map +1 -0
  370. package/dist/detectors/list-view.js +137 -0
  371. package/dist/detectors/list-view.js.map +1 -0
  372. package/dist/detectors/long-vowel.d.ts +7 -0
  373. package/dist/detectors/long-vowel.d.ts.map +1 -0
  374. package/dist/detectors/long-vowel.js +71 -0
  375. package/dist/detectors/long-vowel.js.map +1 -0
  376. package/dist/detectors/markup-finding.d.ts +8 -0
  377. package/dist/detectors/markup-finding.d.ts.map +1 -0
  378. package/dist/detectors/markup-finding.js +29 -0
  379. package/dist/detectors/markup-finding.js.map +1 -0
  380. package/dist/detectors/modal-conflict.d.ts +4 -0
  381. package/dist/detectors/modal-conflict.d.ts.map +1 -0
  382. package/dist/detectors/modal-conflict.js +22 -0
  383. package/dist/detectors/modal-conflict.js.map +1 -0
  384. package/dist/detectors/name-numeral.d.ts +1 -1
  385. package/dist/detectors/name-numeral.d.ts.map +1 -1
  386. package/dist/detectors/name-numeral.js +2 -7
  387. package/dist/detectors/name-numeral.js.map +1 -1
  388. package/dist/detectors/name-variant.d.ts +4 -0
  389. package/dist/detectors/name-variant.d.ts.map +1 -0
  390. package/dist/detectors/name-variant.js +13 -0
  391. package/dist/detectors/name-variant.js.map +1 -0
  392. package/dist/detectors/nominalization.d.ts +11 -0
  393. package/dist/detectors/nominalization.d.ts.map +1 -0
  394. package/dist/detectors/nominalization.js +56 -0
  395. package/dist/detectors/nominalization.js.map +1 -0
  396. package/dist/detectors/orthography.d.ts.map +1 -1
  397. package/dist/detectors/orthography.js +72 -37
  398. package/dist/detectors/orthography.js.map +1 -1
  399. package/dist/detectors/outside-announced-list.d.ts +4 -0
  400. package/dist/detectors/outside-announced-list.d.ts.map +1 -0
  401. package/dist/detectors/outside-announced-list.js +24 -0
  402. package/dist/detectors/outside-announced-list.js.map +1 -0
  403. package/dist/detectors/oxford-comma.d.ts +7 -1
  404. package/dist/detectors/oxford-comma.d.ts.map +1 -1
  405. package/dist/detectors/oxford-comma.js +136 -229
  406. package/dist/detectors/oxford-comma.js.map +1 -1
  407. package/dist/detectors/phrase-match.d.ts +4 -1
  408. package/dist/detectors/phrase-match.d.ts.map +1 -1
  409. package/dist/detectors/phrase-match.js +26 -7
  410. package/dist/detectors/phrase-match.js.map +1 -1
  411. package/dist/detectors/place-run.d.ts.map +1 -1
  412. package/dist/detectors/place-run.js +10 -6
  413. package/dist/detectors/place-run.js.map +1 -1
  414. package/dist/detectors/placeholder-text.d.ts +9 -0
  415. package/dist/detectors/placeholder-text.d.ts.map +1 -0
  416. package/dist/detectors/placeholder-text.js +18 -0
  417. package/dist/detectors/placeholder-text.js.map +1 -0
  418. package/dist/detectors/quote-around.d.ts +3 -0
  419. package/dist/detectors/quote-around.d.ts.map +1 -0
  420. package/dist/detectors/quote-around.js +8 -0
  421. package/dist/detectors/quote-around.js.map +1 -0
  422. package/dist/detectors/ra-nuki.d.ts +9 -0
  423. package/dist/detectors/ra-nuki.d.ts.map +1 -0
  424. package/dist/detectors/ra-nuki.js +30 -0
  425. package/dist/detectors/ra-nuki.js.map +1 -0
  426. package/dist/detectors/register.d.ts +11 -3
  427. package/dist/detectors/register.d.ts.map +1 -1
  428. package/dist/detectors/register.js +28 -9
  429. package/dist/detectors/register.js.map +1 -1
  430. package/dist/detectors/requirement-modal.d.ts +5 -0
  431. package/dist/detectors/requirement-modal.d.ts.map +1 -0
  432. package/dist/detectors/requirement-modal.js +54 -0
  433. package/dist/detectors/requirement-modal.js.map +1 -0
  434. package/dist/detectors/requirement-smell.d.ts +4 -0
  435. package/dist/detectors/requirement-smell.d.ts.map +1 -0
  436. package/dist/detectors/requirement-smell.js +41 -0
  437. package/dist/detectors/requirement-smell.js.map +1 -0
  438. package/dist/detectors/roman-numeral.d.ts +2 -0
  439. package/dist/detectors/roman-numeral.d.ts.map +1 -1
  440. package/dist/detectors/roman-numeral.js +2 -0
  441. package/dist/detectors/roman-numeral.js.map +1 -1
  442. package/dist/detectors/sentence-ending.d.ts +17 -1
  443. package/dist/detectors/sentence-ending.d.ts.map +1 -1
  444. package/dist/detectors/sentence-ending.js +13 -7
  445. package/dist/detectors/sentence-ending.js.map +1 -1
  446. package/dist/detectors/sentence-length.d.ts.map +1 -1
  447. package/dist/detectors/sentence-length.js +13 -4
  448. package/dist/detectors/sentence-length.js.map +1 -1
  449. package/dist/detectors/signals.d.ts +8 -0
  450. package/dist/detectors/signals.d.ts.map +1 -1
  451. package/dist/detectors/signals.js +67 -46
  452. package/dist/detectors/signals.js.map +1 -1
  453. package/dist/detectors/space-before-punctuation.d.ts +8 -0
  454. package/dist/detectors/space-before-punctuation.d.ts.map +1 -0
  455. package/dist/detectors/space-before-punctuation.js +24 -0
  456. package/dist/detectors/space-before-punctuation.js.map +1 -0
  457. package/dist/detectors/spelling-variety.d.ts +23 -0
  458. package/dist/detectors/spelling-variety.d.ts.map +1 -0
  459. package/dist/detectors/spelling-variety.js +59 -0
  460. package/dist/detectors/spelling-variety.js.map +1 -0
  461. package/dist/detectors/structure-tree.d.ts +6 -0
  462. package/dist/detectors/structure-tree.d.ts.map +1 -1
  463. package/dist/detectors/structure-tree.js +39 -1
  464. package/dist/detectors/structure-tree.js.map +1 -1
  465. package/dist/detectors/structure.d.ts +1 -3
  466. package/dist/detectors/structure.d.ts.map +1 -1
  467. package/dist/detectors/structure.js +19 -6
  468. package/dist/detectors/structure.js.map +1 -1
  469. package/dist/detectors/superlative-comparison.d.ts +20 -0
  470. package/dist/detectors/superlative-comparison.d.ts.map +1 -0
  471. package/dist/detectors/superlative-comparison.js +32 -0
  472. package/dist/detectors/superlative-comparison.js.map +1 -0
  473. package/dist/detectors/superlative-name.d.ts.map +1 -1
  474. package/dist/detectors/superlative-name.js +8 -5
  475. package/dist/detectors/superlative-name.js.map +1 -1
  476. package/dist/detectors/superlative-scope.d.ts.map +1 -1
  477. package/dist/detectors/superlative-scope.js +9 -4
  478. package/dist/detectors/superlative-scope.js.map +1 -1
  479. package/dist/detectors/token-column.d.ts +46 -0
  480. package/dist/detectors/token-column.d.ts.map +1 -0
  481. package/dist/detectors/token-column.js +95 -0
  482. package/dist/detectors/token-column.js.map +1 -0
  483. package/dist/detectors/unbalanced-bracket.d.ts +22 -0
  484. package/dist/detectors/unbalanced-bracket.d.ts.map +1 -0
  485. package/dist/detectors/unbalanced-bracket.js +119 -0
  486. package/dist/detectors/unbalanced-bracket.js.map +1 -0
  487. package/dist/detectors/url-run-on.d.ts +9 -0
  488. package/dist/detectors/url-run-on.d.ts.map +1 -0
  489. package/dist/detectors/url-run-on.js +24 -0
  490. package/dist/detectors/url-run-on.js.map +1 -0
  491. package/dist/detectors/vague-figure-pointer.d.ts +10 -0
  492. package/dist/detectors/vague-figure-pointer.d.ts.map +1 -0
  493. package/dist/detectors/vague-figure-pointer.js +46 -0
  494. package/dist/detectors/vague-figure-pointer.js.map +1 -0
  495. package/dist/detectors/word-list.d.ts +2 -0
  496. package/dist/detectors/word-list.d.ts.map +1 -1
  497. package/dist/detectors/word-list.js +4 -1
  498. package/dist/detectors/word-list.js.map +1 -1
  499. package/dist/document-sections.d.ts +13 -0
  500. package/dist/document-sections.d.ts.map +1 -0
  501. package/dist/document-sections.js +32 -0
  502. package/dist/document-sections.js.map +1 -0
  503. package/dist/document.d.ts +20 -7
  504. package/dist/document.d.ts.map +1 -1
  505. package/dist/document.js +140 -125
  506. package/dist/document.js.map +1 -1
  507. package/dist/email-parts.d.ts +28 -0
  508. package/dist/email-parts.d.ts.map +1 -0
  509. package/dist/email-parts.js +230 -0
  510. package/dist/email-parts.js.map +1 -0
  511. package/dist/eval.d.ts +2 -1
  512. package/dist/eval.d.ts.map +1 -1
  513. package/dist/eval.js +16 -4
  514. package/dist/eval.js.map +1 -1
  515. package/dist/extension/document-view.d.ts +7 -0
  516. package/dist/extension/document-view.d.ts.map +1 -0
  517. package/dist/extension/document-view.js +91 -0
  518. package/dist/extension/document-view.js.map +1 -0
  519. package/dist/extension/failure-text.d.ts +5 -0
  520. package/dist/extension/failure-text.d.ts.map +1 -0
  521. package/dist/extension/failure-text.js +33 -0
  522. package/dist/extension/failure-text.js.map +1 -0
  523. package/dist/extension/import-default.d.ts +7 -0
  524. package/dist/extension/import-default.d.ts.map +1 -0
  525. package/dist/extension/import-default.js +21 -0
  526. package/dist/extension/import-default.js.map +1 -0
  527. package/dist/extension/load.d.ts +28 -0
  528. package/dist/extension/load.d.ts.map +1 -0
  529. package/dist/extension/load.js +51 -0
  530. package/dist/extension/load.js.map +1 -0
  531. package/dist/extension/module-detector.d.ts +21 -0
  532. package/dist/extension/module-detector.d.ts.map +1 -0
  533. package/dist/extension/module-detector.js +49 -0
  534. package/dist/extension/module-detector.js.map +1 -0
  535. package/dist/extension/plugin-load.d.ts +9 -0
  536. package/dist/extension/plugin-load.d.ts.map +1 -0
  537. package/dist/extension/plugin-load.js +68 -0
  538. package/dist/extension/plugin-load.js.map +1 -0
  539. package/dist/extension/plugin-name.d.ts +8 -0
  540. package/dist/extension/plugin-name.d.ts.map +1 -0
  541. package/dist/extension/plugin-name.js +22 -0
  542. package/dist/extension/plugin-name.js.map +1 -0
  543. package/dist/extension/plugin-parse.d.ts +41 -0
  544. package/dist/extension/plugin-parse.d.ts.map +1 -0
  545. package/dist/extension/plugin-parse.js +156 -0
  546. package/dist/extension/plugin-parse.js.map +1 -0
  547. package/dist/extension/problem-text.d.ts +5 -0
  548. package/dist/extension/problem-text.d.ts.map +1 -0
  549. package/dist/extension/problem-text.js +74 -0
  550. package/dist/extension/problem-text.js.map +1 -0
  551. package/dist/extension/real-path.d.ts +3 -0
  552. package/dist/extension/real-path.d.ts.map +1 -0
  553. package/dist/extension/real-path.js +8 -0
  554. package/dist/extension/real-path.js.map +1 -0
  555. package/dist/extension/returned-findings.d.ts +17 -0
  556. package/dist/extension/returned-findings.d.ts.map +1 -0
  557. package/dist/extension/returned-findings.js +48 -0
  558. package/dist/extension/returned-findings.js.map +1 -0
  559. package/dist/extension/rule-export.d.ts +13 -0
  560. package/dist/extension/rule-export.d.ts.map +1 -0
  561. package/dist/extension/rule-export.js +16 -0
  562. package/dist/extension/rule-export.js.map +1 -0
  563. package/dist/feedback/draft.d.ts +2 -0
  564. package/dist/feedback/draft.d.ts.map +1 -1
  565. package/dist/feedback/draft.js +3 -0
  566. package/dist/feedback/draft.js.map +1 -1
  567. package/dist/figure-references.d.ts +39 -0
  568. package/dist/figure-references.d.ts.map +1 -0
  569. package/dist/figure-references.js +113 -0
  570. package/dist/figure-references.js.map +1 -0
  571. package/dist/files.d.ts +2 -0
  572. package/dist/files.d.ts.map +1 -1
  573. package/dist/files.js +4 -0
  574. package/dist/files.js.map +1 -1
  575. package/dist/finding-order.d.ts +9 -0
  576. package/dist/finding-order.d.ts.map +1 -0
  577. package/dist/finding-order.js +3 -0
  578. package/dist/finding-order.js.map +1 -0
  579. package/dist/fix-plan/mode.d.ts +21 -0
  580. package/dist/fix-plan/mode.d.ts.map +1 -0
  581. package/dist/fix-plan/mode.js +16 -0
  582. package/dist/fix-plan/mode.js.map +1 -0
  583. package/dist/fix-plan/plan.d.ts +77 -0
  584. package/dist/fix-plan/plan.d.ts.map +1 -0
  585. package/dist/fix-plan/plan.js +100 -0
  586. package/dist/fix-plan/plan.js.map +1 -0
  587. package/dist/fix-plan/render.d.ts +6 -0
  588. package/dist/fix-plan/render.d.ts.map +1 -0
  589. package/dist/fix-plan/render.js +101 -0
  590. package/dist/fix-plan/render.js.map +1 -0
  591. package/dist/fix-plan/text.d.ts +35 -0
  592. package/dist/fix-plan/text.d.ts.map +1 -0
  593. package/dist/fix-plan/text.js +95 -0
  594. package/dist/fix-plan/text.js.map +1 -0
  595. package/dist/heading-label.d.ts +22 -0
  596. package/dist/heading-label.d.ts.map +1 -0
  597. package/dist/heading-label.js +50 -0
  598. package/dist/heading-label.js.map +1 -0
  599. package/dist/in-page-nav.d.ts +4 -1
  600. package/dist/in-page-nav.d.ts.map +1 -1
  601. package/dist/in-page-nav.js +53 -18
  602. package/dist/in-page-nav.js.map +1 -1
  603. package/dist/joined-view.d.ts.map +1 -1
  604. package/dist/joined-view.js +1 -0
  605. package/dist/joined-view.js.map +1 -1
  606. package/dist/language-sample.d.ts +2 -0
  607. package/dist/language-sample.d.ts.map +1 -0
  608. package/dist/language-sample.js +41 -0
  609. package/dist/language-sample.js.map +1 -0
  610. package/dist/levels.d.ts +5 -1
  611. package/dist/levels.d.ts.map +1 -1
  612. package/dist/levels.js +9 -0
  613. package/dist/levels.js.map +1 -1
  614. package/dist/line-paragraphs.d.ts +8 -0
  615. package/dist/line-paragraphs.d.ts.map +1 -1
  616. package/dist/line-paragraphs.js +33 -10
  617. package/dist/line-paragraphs.js.map +1 -1
  618. package/dist/link-line.d.ts +8 -0
  619. package/dist/link-line.d.ts.map +1 -0
  620. package/dist/link-line.js +12 -0
  621. package/dist/link-line.js.map +1 -0
  622. package/dist/long-vowel.d.ts +38 -0
  623. package/dist/long-vowel.d.ts.map +1 -0
  624. package/dist/long-vowel.js +78 -0
  625. package/dist/long-vowel.js.map +1 -0
  626. package/dist/markdown-node.d.ts +19 -0
  627. package/dist/markdown-node.d.ts.map +1 -0
  628. package/dist/markdown-node.js +6 -0
  629. package/dist/markdown-node.js.map +1 -0
  630. package/dist/markdown-read.d.ts +17 -0
  631. package/dist/markdown-read.d.ts.map +1 -0
  632. package/dist/markdown-read.js +37 -0
  633. package/dist/markdown-read.js.map +1 -0
  634. package/dist/markup.d.ts +22 -0
  635. package/dist/markup.d.ts.map +1 -0
  636. package/dist/markup.js +182 -0
  637. package/dist/markup.js.map +1 -0
  638. package/dist/mask.js +8 -5
  639. package/dist/mask.js.map +1 -1
  640. package/dist/name-variants.d.ts +25 -0
  641. package/dist/name-variants.d.ts.map +1 -0
  642. package/dist/name-variants.js +181 -0
  643. package/dist/name-variants.js.map +1 -0
  644. package/dist/node-version.d.ts +7 -0
  645. package/dist/node-version.d.ts.map +1 -0
  646. package/dist/node-version.js +19 -0
  647. package/dist/node-version.js.map +1 -0
  648. package/dist/not-run.d.ts +14 -0
  649. package/dist/not-run.d.ts.map +1 -0
  650. package/dist/not-run.js +12 -0
  651. package/dist/not-run.js.map +1 -0
  652. package/dist/number-name.d.ts +21 -5
  653. package/dist/number-name.d.ts.map +1 -1
  654. package/dist/number-name.js +119 -17
  655. package/dist/number-name.js.map +1 -1
  656. package/dist/orthography.d.ts +10 -1
  657. package/dist/orthography.d.ts.map +1 -1
  658. package/dist/orthography.js +42 -16
  659. package/dist/orthography.js.map +1 -1
  660. package/dist/outline/render.d.ts +18 -0
  661. package/dist/outline/render.d.ts.map +1 -0
  662. package/dist/outline/render.js +60 -0
  663. package/dist/outline/render.js.map +1 -0
  664. package/dist/outline/shape.d.ts +26 -0
  665. package/dist/outline/shape.d.ts.map +1 -0
  666. package/dist/outline/shape.js +37 -0
  667. package/dist/outline/shape.js.map +1 -0
  668. package/dist/outline/text.d.ts +21 -0
  669. package/dist/outline/text.d.ts.map +1 -0
  670. package/dist/outline/text.js +30 -0
  671. package/dist/outline/text.js.map +1 -0
  672. package/dist/page-furniture.d.ts +5 -2
  673. package/dist/page-furniture.d.ts.map +1 -1
  674. package/dist/page-furniture.js +8 -2
  675. package/dist/page-furniture.js.map +1 -1
  676. package/dist/plain-source.d.ts +1 -0
  677. package/dist/plain-source.d.ts.map +1 -1
  678. package/dist/plain-source.js +2 -1
  679. package/dist/plain-source.js.map +1 -1
  680. package/dist/plugin.d.ts +138 -1
  681. package/dist/plugin.d.ts.map +1 -1
  682. package/dist/profile/for-file.d.ts.map +1 -1
  683. package/dist/profile/for-file.js +3 -1
  684. package/dist/profile/for-file.js.map +1 -1
  685. package/dist/quoted-span.d.ts.map +1 -1
  686. package/dist/quoted-span.js +8 -3
  687. package/dist/quoted-span.js.map +1 -1
  688. package/dist/reasons.d.ts +4 -0
  689. package/dist/reasons.d.ts.map +1 -1
  690. package/dist/reasons.js +8 -0
  691. package/dist/reasons.js.map +1 -1
  692. package/dist/reference-lists.d.ts +3 -0
  693. package/dist/reference-lists.d.ts.map +1 -0
  694. package/dist/reference-lists.js +75 -0
  695. package/dist/reference-lists.js.map +1 -0
  696. package/dist/render/compact.d.ts +3 -1
  697. package/dist/render/compact.d.ts.map +1 -1
  698. package/dist/render/compact.js +8 -2
  699. package/dist/render/compact.js.map +1 -1
  700. package/dist/render/explain.d.ts +9 -1
  701. package/dist/render/explain.d.ts.map +1 -1
  702. package/dist/render/explain.js +54 -13
  703. package/dist/render/explain.js.map +1 -1
  704. package/dist/render/friendly.d.ts.map +1 -1
  705. package/dist/render/friendly.js +19 -9
  706. package/dist/render/friendly.js.map +1 -1
  707. package/dist/render/options.d.ts +7 -0
  708. package/dist/render/options.d.ts.map +1 -0
  709. package/dist/render/options.js +50 -0
  710. package/dist/render/options.js.map +1 -0
  711. package/dist/render/rules-json.d.ts +4 -1
  712. package/dist/render/rules-json.d.ts.map +1 -1
  713. package/dist/render/rules-json.js +110 -16
  714. package/dist/render/rules-json.js.map +1 -1
  715. package/dist/render/rules-table.d.ts +4 -0
  716. package/dist/render/rules-table.d.ts.map +1 -0
  717. package/dist/render/rules-table.js +70 -0
  718. package/dist/render/rules-table.js.map +1 -0
  719. package/dist/render/sarif.js +4 -4
  720. package/dist/render/sarif.js.map +1 -1
  721. package/dist/render/semantic.js +3 -3
  722. package/dist/render/semantic.js.map +1 -1
  723. package/dist/render/severity-name.d.ts +6 -0
  724. package/dist/render/severity-name.d.ts.map +1 -0
  725. package/dist/render/severity-name.js +7 -0
  726. package/dist/render/severity-name.js.map +1 -0
  727. package/dist/render/suppressions.d.ts +3 -0
  728. package/dist/render/suppressions.d.ts.map +1 -1
  729. package/dist/render/suppressions.js +20 -1
  730. package/dist/render/suppressions.js.map +1 -1
  731. package/dist/render/text.d.ts +7 -2
  732. package/dist/render/text.d.ts.map +1 -1
  733. package/dist/render/text.js +15 -4
  734. package/dist/render/text.js.map +1 -1
  735. package/dist/resolve-genre.d.ts +1 -1
  736. package/dist/resolve-genre.d.ts.map +1 -1
  737. package/dist/resolve-genre.js +4 -1
  738. package/dist/resolve-genre.js.map +1 -1
  739. package/dist/rule-genres.d.ts +24 -0
  740. package/dist/rule-genres.d.ts.map +1 -0
  741. package/dist/rule-genres.js +11 -0
  742. package/dist/rule-genres.js.map +1 -0
  743. package/dist/rule-guide.d.ts +73 -0
  744. package/dist/rule-guide.d.ts.map +1 -0
  745. package/dist/rule-guide.js +95 -0
  746. package/dist/rule-guide.js.map +1 -0
  747. package/dist/rule-load.d.ts.map +1 -1
  748. package/dist/rule-load.js +87 -33
  749. package/dist/rule-load.js.map +1 -1
  750. package/dist/rule-options.d.ts +50 -0
  751. package/dist/rule-options.d.ts.map +1 -0
  752. package/dist/rule-options.js +106 -0
  753. package/dist/rule-options.js.map +1 -0
  754. package/dist/run-semantic.d.ts.map +1 -1
  755. package/dist/run-semantic.js +2 -1
  756. package/dist/run-semantic.js.map +1 -1
  757. package/dist/run.d.ts +18 -1
  758. package/dist/run.d.ts.map +1 -1
  759. package/dist/run.js +80 -19
  760. package/dist/run.js.map +1 -1
  761. package/dist/sentence-shape.d.ts.map +1 -1
  762. package/dist/sentence-shape.js +4 -4
  763. package/dist/sentence-shape.js.map +1 -1
  764. package/dist/setting-problems.d.ts +2 -1
  765. package/dist/setting-problems.d.ts.map +1 -1
  766. package/dist/setting-problems.js +8 -1
  767. package/dist/setting-problems.js.map +1 -1
  768. package/dist/spacing-minority.d.ts +16 -0
  769. package/dist/spacing-minority.d.ts.map +1 -0
  770. package/dist/spacing-minority.js +23 -0
  771. package/dist/spacing-minority.js.map +1 -0
  772. package/dist/span-cut.d.ts +6 -0
  773. package/dist/span-cut.d.ts.map +1 -0
  774. package/dist/span-cut.js +22 -0
  775. package/dist/span-cut.js.map +1 -0
  776. package/dist/stet-block.d.ts +5 -0
  777. package/dist/stet-block.d.ts.map +1 -0
  778. package/dist/stet-block.js +59 -0
  779. package/dist/stet-block.js.map +1 -0
  780. package/dist/stet.d.ts +4 -0
  781. package/dist/stet.d.ts.map +1 -1
  782. package/dist/stet.js +31 -11
  783. package/dist/stet.js.map +1 -1
  784. package/dist/structure/aside-depth.d.ts +21 -0
  785. package/dist/structure/aside-depth.d.ts.map +1 -0
  786. package/dist/structure/aside-depth.js +65 -0
  787. package/dist/structure/aside-depth.js.map +1 -0
  788. package/dist/structure/build.d.ts +5 -1
  789. package/dist/structure/build.d.ts.map +1 -1
  790. package/dist/structure/build.js +29 -17
  791. package/dist/structure/build.js.map +1 -1
  792. package/dist/structure/closed-pairs.d.ts +8 -0
  793. package/dist/structure/closed-pairs.d.ts.map +1 -0
  794. package/dist/structure/closed-pairs.js +22 -0
  795. package/dist/structure/closed-pairs.js.map +1 -0
  796. package/dist/structure/date-range.d.ts +31 -0
  797. package/dist/structure/date-range.d.ts.map +1 -0
  798. package/dist/structure/date-range.js +77 -0
  799. package/dist/structure/date-range.js.map +1 -0
  800. package/dist/structure/definition-use.d.ts +32 -0
  801. package/dist/structure/definition-use.d.ts.map +1 -0
  802. package/dist/structure/definition-use.js +102 -0
  803. package/dist/structure/definition-use.js.map +1 -0
  804. package/dist/structure/known-mentions.d.ts +18 -0
  805. package/dist/structure/known-mentions.d.ts.map +1 -0
  806. package/dist/structure/known-mentions.js +78 -0
  807. package/dist/structure/known-mentions.js.map +1 -0
  808. package/dist/structure/lazy-tree.d.ts +8 -0
  809. package/dist/structure/lazy-tree.d.ts.map +1 -0
  810. package/dist/structure/lazy-tree.js +14 -0
  811. package/dist/structure/lazy-tree.js.map +1 -0
  812. package/dist/structure/modal-conflict.d.ts +28 -0
  813. package/dist/structure/modal-conflict.d.ts.map +1 -0
  814. package/dist/structure/modal-conflict.js +74 -0
  815. package/dist/structure/modal-conflict.js.map +1 -0
  816. package/dist/structure/numbered-clauses.d.ts +4 -0
  817. package/dist/structure/numbered-clauses.d.ts.map +1 -0
  818. package/dist/structure/numbered-clauses.js +9 -0
  819. package/dist/structure/numbered-clauses.js.map +1 -0
  820. package/dist/structure/numbering.d.ts +1 -0
  821. package/dist/structure/numbering.d.ts.map +1 -1
  822. package/dist/structure/numbering.js +11 -6
  823. package/dist/structure/numbering.js.map +1 -1
  824. package/dist/structure/of.d.ts +3 -1
  825. package/dist/structure/of.d.ts.map +1 -1
  826. package/dist/structure/of.js +5 -1
  827. package/dist/structure/of.js.map +1 -1
  828. package/dist/structure/percent-sum.d.ts +16 -0
  829. package/dist/structure/percent-sum.d.ts.map +1 -0
  830. package/dist/structure/percent-sum.js +104 -0
  831. package/dist/structure/percent-sum.js.map +1 -0
  832. package/dist/structure/quoted-number.d.ts +8 -0
  833. package/dist/structure/quoted-number.d.ts.map +1 -0
  834. package/dist/structure/quoted-number.js +34 -0
  835. package/dist/structure/quoted-number.js.map +1 -0
  836. package/dist/structure/relative-find.d.ts.map +1 -1
  837. package/dist/structure/relative-find.js +34 -46
  838. package/dist/structure/relative-find.js.map +1 -1
  839. package/dist/structure/relative-resolve.d.ts.map +1 -1
  840. package/dist/structure/relative-resolve.js +76 -30
  841. package/dist/structure/relative-resolve.js.map +1 -1
  842. package/dist/structure/runs.d.ts +2 -0
  843. package/dist/structure/runs.d.ts.map +1 -1
  844. package/dist/structure/runs.js +2 -2
  845. package/dist/structure/runs.js.map +1 -1
  846. package/dist/structure/sexp.d.ts +1 -1
  847. package/dist/structure/sexp.d.ts.map +1 -1
  848. package/dist/structure/sexp.js +18 -6
  849. package/dist/structure/sexp.js.map +1 -1
  850. package/dist/structure/total.d.ts +3 -0
  851. package/dist/structure/total.d.ts.map +1 -1
  852. package/dist/structure/total.js +2 -2
  853. package/dist/structure/total.js.map +1 -1
  854. package/dist/structure/universal.d.ts +14 -2
  855. package/dist/structure/universal.d.ts.map +1 -1
  856. package/dist/structure/universal.js +24 -3
  857. package/dist/structure/universal.js.map +1 -1
  858. package/dist/structure/wrapped-tail.d.ts +14 -7
  859. package/dist/structure/wrapped-tail.d.ts.map +1 -1
  860. package/dist/structure/wrapped-tail.js +33 -8
  861. package/dist/structure/wrapped-tail.js.map +1 -1
  862. package/dist/style-load.d.ts +4 -0
  863. package/dist/style-load.d.ts.map +1 -0
  864. package/dist/style-load.js +28 -0
  865. package/dist/style-load.js.map +1 -0
  866. package/dist/style-parse.d.ts +25 -0
  867. package/dist/style-parse.d.ts.map +1 -0
  868. package/dist/style-parse.js +88 -0
  869. package/dist/style-parse.js.map +1 -0
  870. package/dist/subheading-line.d.ts +23 -0
  871. package/dist/subheading-line.d.ts.map +1 -0
  872. package/dist/subheading-line.js +85 -0
  873. package/dist/subheading-line.js.map +1 -0
  874. package/dist/tag-coverage.d.ts +8 -0
  875. package/dist/tag-coverage.d.ts.map +1 -0
  876. package/dist/tag-coverage.js +7 -0
  877. package/dist/tag-coverage.js.map +1 -0
  878. package/dist/template-syntax.d.ts +17 -0
  879. package/dist/template-syntax.d.ts.map +1 -0
  880. package/dist/template-syntax.js +140 -0
  881. package/dist/template-syntax.js.map +1 -0
  882. package/dist/text-above.d.ts +19 -0
  883. package/dist/text-above.d.ts.map +1 -0
  884. package/dist/text-above.js +43 -0
  885. package/dist/text-above.js.map +1 -0
  886. package/dist/text-figures.d.ts +10 -0
  887. package/dist/text-figures.d.ts.map +1 -0
  888. package/dist/text-figures.js +131 -0
  889. package/dist/text-figures.js.map +1 -0
  890. package/dist/trailing-aside.d.ts +2 -0
  891. package/dist/trailing-aside.d.ts.map +1 -0
  892. package/dist/trailing-aside.js +53 -0
  893. package/dist/trailing-aside.js.map +1 -0
  894. package/dist/tree-walk.d.ts +18 -0
  895. package/dist/tree-walk.d.ts.map +1 -0
  896. package/dist/tree-walk.js +45 -0
  897. package/dist/tree-walk.js.map +1 -0
  898. package/genres.yaml +68 -0
  899. package/package.json +9 -3
  900. package/reference-headings.yaml +17 -0
  901. package/rules/acronym-expansion-conflict.yaml +82 -0
  902. package/rules/adverb-overuse.yaml +19 -0
  903. package/rules/agentless-passive.yaml +47 -0
  904. package/rules/agreement-slip.yaml +14 -1
  905. package/rules/ai-generated-composite.yaml +102 -0
  906. package/rules/ai-tell.yaml +57 -0
  907. package/rules/announced-count-mismatch.yaml +57 -0
  908. package/rules/announcing-opener.yaml +82 -0
  909. package/rules/assistant-residue.yaml +82 -0
  910. package/rules/bold-density.yaml +59 -0
  911. package/rules/bold-label-list.yaml +81 -0
  912. package/rules/broken-link.yaml +65 -0
  913. package/rules/closing-cliche.yaml +58 -0
  914. package/rules/colon-lead-in.yaml +83 -0
  915. package/rules/concrete-evidence-density.yaml +41 -0
  916. package/rules/contraction-consistency.yaml +18 -0
  917. package/rules/contrast-framing.yaml +88 -0
  918. package/rules/cushion-phrase-density.yaml +53 -1
  919. package/rules/dangling-figure-reference.yaml +61 -0
  920. package/rules/dangling-reference.yaml +54 -1
  921. package/rules/date-order.yaml +34 -1
  922. package/rules/date-range-reversed.yaml +46 -0
  923. package/rules/date-weekday-mismatch.yaml +17 -1
  924. package/rules/double-keigo.yaml +16 -0
  925. package/rules/double-negative.yaml +51 -0
  926. package/rules/doubled-punctuation.yaml +45 -0
  927. package/rules/doubled-word.yaml +18 -2
  928. package/rules/duplicate-definition.yaml +59 -1
  929. package/rules/duplicate-heading.yaml +78 -0
  930. package/rules/emoji-density.yaml +28 -2
  931. package/rules/empty-conclusion.yaml +28 -0
  932. package/rules/empty-intensifier.yaml +44 -0
  933. package/rules/empty-section.yaml +74 -0
  934. package/rules/excessive-hedging.yaml +49 -2
  935. package/rules/expletive-construction.yaml +19 -0
  936. package/rules/fullwidth-alnum-consistency.yaml +53 -0
  937. package/rules/hankaku-kana.yaml +41 -0
  938. package/rules/heading-echo.yaml +31 -0
  939. package/rules/heading-level-skip.yaml +78 -0
  940. package/rules/hiragana-fukushi.yaml +16 -0
  941. package/rules/image-alt-text.yaml +54 -0
  942. package/rules/internal-jargon.yaml +21 -0
  943. package/rules/invisible-character.yaml +63 -0
  944. package/rules/katakana-long-vowel.yaml +99 -0
  945. package/rules/kutoten-consistency.yaml +53 -0
  946. package/rules/latin-spacing.yaml +30 -4
  947. package/rules/max-kanji-continuous.yaml +17 -0
  948. package/rules/max-paragraph-length.yaml +34 -0
  949. package/rules/max-sentence-length.yaml +58 -0
  950. package/rules/modal-conflict.yaml +106 -0
  951. package/rules/name-variant.yaml +88 -0
  952. package/rules/ngram-repetition.yaml +29 -2
  953. package/rules/no-doubled-joshi.yaml +17 -0
  954. package/rules/no-em-dash.yaml +49 -0
  955. package/rules/no-mixed-desumasu.yaml +28 -2
  956. package/rules/no-nakaguro-parallel.yaml +20 -0
  957. package/rules/nominalization.yaml +89 -0
  958. package/rules/numbering-gap.yaml +53 -1
  959. package/rules/outside-announced-list.yaml +80 -0
  960. package/rules/oxford-comma-consistency.yaml +18 -0
  961. package/rules/padded-intro.yaml +44 -0
  962. package/rules/paragraph-length-variance.yaml +73 -0
  963. package/rules/percent-sum-mismatch.yaml +58 -0
  964. package/rules/preamble-length.yaml +56 -0
  965. package/rules/preferred-term.yaml +28 -0
  966. package/rules/proper-noun-density.yaml +37 -2
  967. package/rules/ra-nuki.yaml +43 -0
  968. package/rules/repeated-conjunction.yaml +47 -0
  969. package/rules/repeated-sentence-head.yaml +23 -0
  970. package/rules/required-sections.yaml +49 -0
  971. package/rules/requirement-modal.yaml +94 -0
  972. package/rules/requirement-smell.yaml +70 -0
  973. package/rules/risk-disclosure.yaml +22 -0
  974. package/rules/rule-of-three.yaml +143 -0
  975. package/rules/sasete-itadaku.yaml +18 -0
  976. package/rules/section-length-uniformity.yaml +113 -0
  977. package/rules/sentence-initial-conjunction-run.yaml +18 -0
  978. package/rules/sentence-rhythm.yaml +51 -0
  979. package/rules/space-before-punctuation.yaml +41 -0
  980. package/rules/spelling-consistency.yaml +47 -0
  981. package/rules/stock-transition.yaml +86 -0
  982. package/rules/stray-space.yaml +18 -0
  983. package/rules/taigen-dome-in-prose.yaml +33 -0
  984. package/rules/title-case-consistency.yaml +42 -0
  985. package/rules/total-mismatch.yaml +38 -1
  986. package/rules/unbalanced-bracket.yaml +56 -0
  987. package/rules/undefined-acronym.yaml +23 -0
  988. package/rules/unfilled-placeholder.yaml +50 -0
  989. package/rules/unqualified-superlative.yaml +20 -0
  990. package/rules/unsourced-number.yaml +16 -0
  991. package/rules/unused-definition.yaml +75 -0
  992. package/rules/url-run-on.yaml +45 -0
  993. package/rules/use-before-definition.yaml +77 -0
  994. package/rules/vague-figure-reference.yaml +66 -0
  995. package/skills/chaff/SKILL.md +171 -1
  996. package/src/acronym-expansions.ts +106 -0
  997. package/src/announced-count.ts +190 -0
  998. package/src/announced-list.ts +120 -0
  999. package/src/api.ts +154 -0
  1000. package/src/bare-url.ts +35 -0
  1001. package/src/baseline.ts +17 -1
  1002. package/src/body-section.ts +7 -0
  1003. package/src/calendar-number.ts +18 -4
  1004. package/src/cli-args.ts +6 -0
  1005. package/src/cli-text.ts +14 -15
  1006. package/src/cli.ts +93 -92
  1007. package/src/closing-paragraph.ts +24 -0
  1008. package/src/commands/compare.ts +73 -0
  1009. package/src/commands/document-commands.ts +19 -0
  1010. package/src/commands/eval.ts +22 -10
  1011. package/src/commands/facts.ts +33 -0
  1012. package/src/commands/feedback.ts +45 -7
  1013. package/src/commands/fix-plan.ts +53 -0
  1014. package/src/commands/outline.ts +49 -0
  1015. package/src/commands/read-document.ts +24 -0
  1016. package/src/commands/suppressions.ts +19 -0
  1017. package/src/commands/test.ts +3 -5
  1018. package/src/commands/tree.ts +41 -5
  1019. package/src/compare/atom.ts +33 -0
  1020. package/src/compare/clock-time.ts +89 -0
  1021. package/src/compare/distinct.ts +13 -0
  1022. package/src/compare/extract.ts +80 -0
  1023. package/src/compare/fact-key.ts +31 -0
  1024. package/src/compare/fact-text.ts +87 -0
  1025. package/src/compare/facts-render.ts +63 -0
  1026. package/src/compare/facts-text.ts +41 -0
  1027. package/src/compare/markup-atoms.ts +29 -0
  1028. package/src/compare/match.ts +105 -0
  1029. package/src/compare/outcome.ts +80 -0
  1030. package/src/compare/proper-nouns.ts +65 -0
  1031. package/src/compare/render.ts +102 -0
  1032. package/src/compare/spans.ts +17 -0
  1033. package/src/compare/text-atoms.ts +96 -0
  1034. package/src/compare/text.ts +121 -0
  1035. package/src/compare/tree-atoms.ts +80 -0
  1036. package/src/compare/written-names.ts +26 -0
  1037. package/src/config/load.ts +30 -0
  1038. package/src/config/option-problems.ts +72 -0
  1039. package/src/config/read.ts +8 -0
  1040. package/src/config/rule-problems.ts +12 -2
  1041. package/src/config/style.ts +55 -0
  1042. package/src/config/warnings.ts +13 -0
  1043. package/src/config/write.ts +18 -4
  1044. package/src/custom/bounded-match.ts +58 -0
  1045. package/src/custom/load.ts +23 -0
  1046. package/src/custom/module-path.ts +23 -0
  1047. package/src/custom/parse.ts +323 -0
  1048. package/src/custom/problems.ts +111 -0
  1049. package/src/custom/regex-safety.ts +118 -0
  1050. package/src/custom/token-pattern.ts +84 -0
  1051. package/src/detect-language.ts +1 -1
  1052. package/src/detect.ts +35 -2
  1053. package/src/detectors/acronym-context.ts +16 -4
  1054. package/src/detectors/ai-phrasing.ts +141 -0
  1055. package/src/detectors/announced-count.ts +25 -0
  1056. package/src/detectors/bold-label.ts +55 -0
  1057. package/src/detectors/broken-link.ts +90 -0
  1058. package/src/detectors/cited-name.ts +6 -5
  1059. package/src/detectors/cited-title.ts +96 -0
  1060. package/src/detectors/concrete-evidence.ts +3 -2
  1061. package/src/detectors/contrast-frame.ts +54 -0
  1062. package/src/detectors/custom.ts +89 -0
  1063. package/src/detectors/dangling-figure.ts +26 -0
  1064. package/src/detectors/definition-use.ts +41 -0
  1065. package/src/detectors/doubled-punctuation.ts +52 -0
  1066. package/src/detectors/doubled-word.ts +19 -4
  1067. package/src/detectors/duplicate-heading.ts +47 -0
  1068. package/src/detectors/empty-section.ts +21 -0
  1069. package/src/detectors/enumerated-runs.ts +13 -4
  1070. package/src/detectors/fullwidth-alnum.ts +118 -0
  1071. package/src/detectors/gram-furniture.ts +30 -0
  1072. package/src/detectors/gram-place.ts +9 -5
  1073. package/src/detectors/gram-windows.ts +31 -0
  1074. package/src/detectors/hankaku-kana.ts +38 -0
  1075. package/src/detectors/heading-case.ts +30 -2
  1076. package/src/detectors/heading-code-words.ts +35 -0
  1077. package/src/detectors/heading-echo.ts +8 -4
  1078. package/src/detectors/heading-level-skip.ts +19 -0
  1079. package/src/detectors/image-alt-text.ts +11 -0
  1080. package/src/detectors/index.ts +79 -1
  1081. package/src/detectors/invisible-character.ts +190 -0
  1082. package/src/detectors/kutoten-consistency.ts +96 -0
  1083. package/src/detectors/lead-in.ts +3 -1
  1084. package/src/detectors/lexicon-match.ts +41 -2
  1085. package/src/detectors/lexicon.ts +40 -13
  1086. package/src/detectors/list-item.ts +122 -0
  1087. package/src/detectors/list-items.ts +163 -0
  1088. package/src/detectors/list-lead-in.ts +33 -0
  1089. package/src/detectors/list-sentence.ts +198 -0
  1090. package/src/detectors/list-view.ts +157 -0
  1091. package/src/detectors/long-vowel.ts +82 -0
  1092. package/src/detectors/markup-finding.ts +39 -0
  1093. package/src/detectors/modal-conflict.ts +26 -0
  1094. package/src/detectors/name-numeral.ts +4 -2
  1095. package/src/detectors/name-variant.ts +15 -0
  1096. package/src/detectors/nominalization.ts +73 -0
  1097. package/src/detectors/orthography.ts +97 -41
  1098. package/src/detectors/outside-announced-list.ts +25 -0
  1099. package/src/detectors/oxford-comma.ts +179 -283
  1100. package/src/detectors/phrase-match.ts +27 -7
  1101. package/src/detectors/place-run.ts +7 -4
  1102. package/src/detectors/placeholder-text.ts +27 -0
  1103. package/src/detectors/quote-around.ts +9 -0
  1104. package/src/detectors/ra-nuki.ts +38 -0
  1105. package/src/detectors/register.ts +37 -10
  1106. package/src/detectors/requirement-modal.ts +67 -0
  1107. package/src/detectors/requirement-smell.ts +52 -0
  1108. package/src/detectors/roman-numeral.ts +3 -0
  1109. package/src/detectors/sentence-ending.ts +14 -7
  1110. package/src/detectors/sentence-length.ts +16 -5
  1111. package/src/detectors/signals.ts +80 -46
  1112. package/src/detectors/space-before-punctuation.ts +32 -0
  1113. package/src/detectors/spelling-variety.ts +81 -0
  1114. package/src/detectors/structure-tree.ts +47 -1
  1115. package/src/detectors/structure.ts +20 -7
  1116. package/src/detectors/superlative-comparison.ts +47 -0
  1117. package/src/detectors/superlative-name.ts +7 -4
  1118. package/src/detectors/superlative-scope.ts +8 -3
  1119. package/src/detectors/token-column.ts +149 -0
  1120. package/src/detectors/unbalanced-bracket.ts +153 -0
  1121. package/src/detectors/url-run-on.ts +33 -0
  1122. package/src/detectors/vague-figure-pointer.ts +58 -0
  1123. package/src/detectors/word-list.ts +6 -1
  1124. package/src/document-sections.ts +46 -0
  1125. package/src/document.ts +188 -173
  1126. package/src/email-parts.ts +269 -0
  1127. package/src/eval.ts +14 -4
  1128. package/src/extension/document-view.ts +109 -0
  1129. package/src/extension/failure-text.ts +46 -0
  1130. package/src/extension/import-default.ts +13 -0
  1131. package/src/extension/load.ts +97 -0
  1132. package/src/extension/module-detector.ts +61 -0
  1133. package/src/extension/plugin-load.ts +82 -0
  1134. package/src/extension/plugin-name.ts +26 -0
  1135. package/src/extension/plugin-parse.ts +229 -0
  1136. package/src/extension/problem-text.ts +103 -0
  1137. package/src/extension/real-path.ts +10 -0
  1138. package/src/extension/returned-findings.ts +62 -0
  1139. package/src/extension/rule-export.ts +23 -0
  1140. package/src/feedback/draft.ts +6 -0
  1141. package/src/figure-references.ts +173 -0
  1142. package/src/files.ts +5 -0
  1143. package/src/finding-order.ts +3 -0
  1144. package/src/fix-plan/mode.ts +34 -0
  1145. package/src/fix-plan/plan.ts +181 -0
  1146. package/src/fix-plan/render.ts +128 -0
  1147. package/src/fix-plan/text.ts +133 -0
  1148. package/src/heading-label.ts +55 -0
  1149. package/src/in-page-nav.ts +48 -19
  1150. package/src/joined-view.ts +1 -0
  1151. package/src/language-sample.ts +48 -0
  1152. package/src/levels.ts +14 -1
  1153. package/src/line-paragraphs.ts +52 -9
  1154. package/src/link-line.ts +13 -0
  1155. package/src/long-vowel.ts +109 -0
  1156. package/src/markdown-node.ts +19 -0
  1157. package/src/markdown-read.ts +44 -0
  1158. package/src/markup.ts +212 -0
  1159. package/src/mask.ts +8 -8
  1160. package/src/name-variants.ts +217 -0
  1161. package/src/node-version.ts +22 -0
  1162. package/src/not-run.ts +16 -0
  1163. package/src/number-name.ts +151 -24
  1164. package/src/orthography.ts +50 -14
  1165. package/src/outline/render.ts +85 -0
  1166. package/src/outline/shape.ts +72 -0
  1167. package/src/outline/text.ts +50 -0
  1168. package/src/page-furniture.ts +11 -2
  1169. package/src/plain-source.ts +2 -1
  1170. package/src/plugin.ts +120 -3
  1171. package/src/profile/for-file.ts +3 -1
  1172. package/src/quoted-span.ts +9 -3
  1173. package/src/reasons.ts +12 -0
  1174. package/src/reference-lists.ts +91 -0
  1175. package/src/render/compact.ts +13 -3
  1176. package/src/render/explain.ts +75 -14
  1177. package/src/render/friendly.ts +20 -9
  1178. package/src/render/options.ts +58 -0
  1179. package/src/render/rules-json.ts +140 -18
  1180. package/src/render/rules-table.ts +91 -0
  1181. package/src/render/sarif.ts +4 -4
  1182. package/src/render/semantic.ts +3 -3
  1183. package/src/render/severity-name.ts +10 -0
  1184. package/src/render/suppressions.ts +30 -2
  1185. package/src/render/text.ts +21 -7
  1186. package/src/resolve-genre.ts +4 -1
  1187. package/src/rule-genres.ts +25 -0
  1188. package/src/rule-guide.ts +173 -0
  1189. package/src/rule-load.ts +91 -34
  1190. package/src/rule-options.ts +131 -0
  1191. package/src/run-semantic.ts +2 -1
  1192. package/src/run.ts +105 -22
  1193. package/src/sentence-shape.ts +4 -5
  1194. package/src/setting-problems.ts +9 -1
  1195. package/src/spacing-minority.ts +27 -0
  1196. package/src/span-cut.ts +28 -0
  1197. package/src/stet-block.ts +60 -0
  1198. package/src/stet.ts +41 -15
  1199. package/src/structure/aside-depth.ts +67 -0
  1200. package/src/structure/build.ts +38 -19
  1201. package/src/structure/closed-pairs.ts +20 -0
  1202. package/src/structure/date-range.ts +117 -0
  1203. package/src/structure/definition-use.ts +130 -0
  1204. package/src/structure/known-mentions.ts +96 -0
  1205. package/src/structure/lazy-tree.ts +15 -0
  1206. package/src/structure/modal-conflict.ts +86 -0
  1207. package/src/structure/numbered-clauses.ts +11 -0
  1208. package/src/structure/numbering.ts +9 -5
  1209. package/src/structure/of.ts +11 -3
  1210. package/src/structure/percent-sum.ts +135 -0
  1211. package/src/structure/quoted-number.ts +36 -0
  1212. package/src/structure/relative-find.ts +34 -47
  1213. package/src/structure/relative-resolve.ts +77 -30
  1214. package/src/structure/runs.ts +2 -2
  1215. package/src/structure/sexp.ts +17 -5
  1216. package/src/structure/total.ts +2 -2
  1217. package/src/structure/universal.ts +33 -5
  1218. package/src/structure/wrapped-tail.ts +38 -13
  1219. package/src/style-load.ts +28 -0
  1220. package/src/style-parse.ts +112 -0
  1221. package/src/subheading-line.ts +106 -0
  1222. package/src/tag-coverage.ts +13 -0
  1223. package/src/template-syntax.ts +164 -0
  1224. package/src/text-above.ts +49 -0
  1225. package/src/text-figures.ts +147 -0
  1226. package/src/trailing-aside.ts +50 -0
  1227. package/src/tree-walk.ts +48 -0
  1228. package/styles/bunkacho.yaml +25 -0
  1229. package/styles/ieice.yaml +30 -0
  1230. package/styles/jis-z8301-2011.yaml +28 -0
  1231. package/styles/jis-z8301-2019.yaml +31 -0
  1232. package/styles/koyobun.yaml +35 -0
  1233. package/dist/legal-address.d.ts +0 -2
  1234. package/dist/legal-address.d.ts.map +0 -1
  1235. package/dist/legal-address.js +0 -16
  1236. package/dist/legal-address.js.map +0 -1
@@ -37,3 +37,37 @@ by_genre:
37
37
  academic: { strict: 5, normal: 9, relaxed: 12 }
38
38
 
39
39
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
40
+ sources: [gov-uk-clear-language]
41
+
42
+ group: readability
43
+ summary:
44
+ ja: 文を詰めこみすぎて、息をつく場所がない段落
45
+ en: A paragraph packed with so many sentences that the reader has nowhere to pause
46
+ example:
47
+ ja:
48
+ config: { rules: { max-paragraph-length: strict } }
49
+ before: |
50
+ 今期の売上は前年より一割増えましたが、その多くは春に新しく始めた定期購入の申し込みによるもので、店頭での買い物が増えたわけではありませんでした。一方で、店頭での販売は三か月続けて前年を下回り、特に平日の夕方の客数が大きく減っています。原因として、駅の反対側に開いた競合店と、夕方の品ぞろえの薄さが考えられるという声が、先月の店長会議で何人もの店長から出ました。来期は夕方の品ぞろえを見直し、定期購入の案内を店頭でも配ることで、両方の数字を同時に上げることを目指します。
51
+ after: |
52
+ 今期の売上は前年より一割増えました。その多くは、新しく始めた定期購入の申し込みによるものです。
53
+
54
+ 一方で、店頭での販売は三か月続けて前年を下回りました。特に平日の夕方の客数が大きく減っています。
55
+
56
+ 来期は夕方の品ぞろえを見直し、定期購入の案内を店頭でも配ります。
57
+ en:
58
+ config: { rules: { max-paragraph-length: strict } }
59
+ before: |
60
+ Sales this term rose by a tenth over last year, and most of the growth came from the new subscription plan that we launched in the spring. In-store sales, on the other hand, fell below last year's level for three months in a row, with weekday evenings down the most. At the store managers' meeting, several people pointed to the competitor that opened nearby and to the thin evening range as likely causes. Next term we will review the evening range and hand out subscription leaflets in store, so that both numbers go up together.
61
+ after: |
62
+ Sales this term rose by a tenth over last year. Most of the growth came from the new subscription plan.
63
+
64
+ In-store sales fell for three months in a row. Weekday evenings fell the most.
65
+
66
+ Next term we will review the evening range and hand out subscription leaflets in store.
67
+
68
+ not_flagged:
69
+ ja: 文の数が多くても、短い文を重ねただけの段落(普通の長さの文を上限の数だけ並べたより短いもの)は指しません。
70
+ en: A paragraph of many short sentences is not reported, as long as it is shorter than that many sentences of ordinary length.
71
+ level_meaning:
72
+ ja: 一つの段落に {limit} 文まで
73
+ en: up to {limit} sentences in a paragraph
@@ -16,6 +16,15 @@ message:
16
16
  ja: この文は {count} 文字あります({limit} 文字まで)
17
17
  en: "This sentence runs {count} {count|word|words} (limit {limit})"
18
18
 
19
+ # 文書と違う言語で書いた文。和文の中の英文は語で、英文の中の和文は文字で数え、その言語の段と比べる。
20
+ messages:
21
+ embedded-en:
22
+ ja: この英文は {count} 語あります({limit} 語まで)
23
+ en: "This English sentence runs {count} {count|word|words} (limit {limit})"
24
+ embedded-ja:
25
+ ja: この和文は {count} 文字あります({limit} 文字まで)
26
+ en: "This Japanese sentence runs {count} {count|character|characters} (limit {limit})"
27
+
19
28
  how_to_fix:
20
29
  ja: 接続助詞のところで 2 文に割ってください。それだけで読めるようになります。
21
30
  en: Split it in two at the conjunction.
@@ -64,3 +73,52 @@ by_genre:
64
73
  en: { strict: 35, normal: 50, relaxed: 65 }
65
74
 
66
75
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
76
+ sources: [shibasaki-tamaoka-2010, yasashii-nihongo-2020, koyobun-2022, gov-uk-clear-language]
77
+
78
+ group: readability
79
+ summary:
80
+ ja: 読み終える前に主語を見失うほど長い一文
81
+ en: A sentence so long that the reader loses the subject before the verb
82
+ example:
83
+ ja:
84
+ before: |
85
+ 新しい料金体系は先週の会議で営業部から提案があったもので来月から試験的に導入することになりましたが、既存の顧客への説明のしかたと請求システムを直す時期がまだ決まっていないため、担当者を決めたうえで今週中に進め方を相談したいと考えています。
86
+ after: |
87
+ 新しい料金体系を、来月から試験的に導入します。既存の顧客への説明のしかたと、請求システムを直す時期はまだ決まっていません。今週中に担当者を決め、進め方を相談します。
88
+ en:
89
+ before: |
90
+ The new pricing, which the sales team proposed at last week's meeting, will be trialled from next month, but because we have not yet decided how to explain it to existing customers or when to change the billing system, we would like to agree on a plan this week.
91
+ after: |
92
+ The new pricing will be trialled from next month. We have not yet decided how to explain it to existing customers, or when to change the billing system. We will agree on a plan this week.
93
+
94
+ not_flagged:
95
+ ja: 見出し、表のセル、コードは数えません。法令や論文のように長い一文が普通の種類では、ジャンルが上限を長くします。
96
+ en: Headings, table cells and code are not counted. Genres where long sentences are normal (statutes, papers) raise the limit.
97
+ level_meaning:
98
+ ja: 一文 {limit} 字まで
99
+ en: up to {limit} words in a sentence
100
+ rewrite:
101
+ ja:
102
+ direction: 接続助詞(〜が、〜ので、〜し)か「、そして」の所で二文に割り、二文目にも主語を書いてください。
103
+ pairs:
104
+ - before: 申請書は総務部に提出しますが、期限を過ぎた場合は翌月の扱いになり、その場合は再申請が必要になります。
105
+ after: 申請書は総務部に提出します。期限を過ぎた申請は翌月の扱いになり、再申請が必要です。
106
+ - before: 新しい端末は来週届く予定なので、それまでは今の端末を使い、届いたら情報システム部が設定します。
107
+ after: 新しい端末は来週届く予定です。それまでは今の端末を使います。届いた端末は情報システム部が設定します。
108
+ keep:
109
+ - 条件と例外(「〜の場合」)と、それが掛かる先
110
+ avoid:
111
+ - 割るときに条件を別の文へ移して、掛かる先を変える
112
+ - 長い修飾を削って中身を落とす
113
+ en:
114
+ direction: Split the sentence at a conjunction (and, but, so, which) and give the second sentence its own subject.
115
+ pairs:
116
+ - before: Submit the form to the office, but if you miss the deadline it moves to the next month, in which case you have to apply again.
117
+ after: Submit the form to the office. A form that misses the deadline moves to the next month and has to be submitted again.
118
+ - before: The new laptops arrive next week, so keep using the old ones until then, and IT will set the new ones up when they come.
119
+ after: The new laptops arrive next week. Keep using the old ones until then. IT will set the new ones up when they come.
120
+ keep:
121
+ - conditions and exceptions ("if", "unless") and what they apply to
122
+ avoid:
123
+ - moving a condition into another sentence so that it applies to something else
124
+ - dropping content to make the sentence shorter
@@ -0,0 +1,106 @@
1
+ id: modal-conflict
2
+ layer: L3
3
+ status: experimental
4
+ how_to_find: modal-conflict
5
+ requires: [structure, pos]
6
+ severity: warning
7
+
8
+ name:
9
+ ja: 同じ行為への逆の決まり
10
+ en: Opposite obligations on the same act
11
+
12
+ why:
13
+ ja: 同じ人の同じ行為を、ある文では「しなければならない」「することができる」と、別の文では「してはならない」と書くと、読み手はどちらに従えばよいか分かりません。後から足した条や、別の文書から写した文で起きます。条件や例外を書き分けていれば、二つの文の中身の語が違うので、ここには出ません。
14
+ en: The same act by the same party written as "must" or "may" in one sentence and "must not" in another leaves the reader unable to tell which to follow. It happens when a clause is added later or copied from another document. A condition or an exception changes the sentence's words, so a carefully scoped pair is not reported.
15
+
16
+ message:
17
+ ja: 「{marker}」と書いていますが、{otherLine} 行目では同じ行為を「{other}」と書いています
18
+ en: 'This says "{marker}", but line {otherLine} says "{other}" about the same act'
19
+
20
+ how_to_fix:
21
+ ja: どちらが正しいかを決め、もう一方を消すか、条件や例外(「書面で承諾を得た場合を除き」)を書き足して二つの範囲を分けてください。
22
+ en: Decide which one holds and delete the other, or add the condition or exception ("unless the Customer agrees in writing") that separates them.
23
+
24
+ placeholders:
25
+ marker:
26
+ ja: してはならない
27
+ en: must not
28
+ other:
29
+ ja: することができる
30
+ en: may
31
+ otherLine:
32
+ ja: 〇
33
+ en: N
34
+
35
+ levels: { strict: error, normal: warning, relaxed: info }
36
+
37
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
38
+
39
+ group: structure
40
+ summary:
41
+ ja: 同じ主語の同じ行為を、ある文では義務や許可に、別の文では禁止にしている所
42
+ en: The same act by the same party required or allowed in one sentence and forbidden in another
43
+ example:
44
+ ja:
45
+ before: |
46
+ ## 第5条(再委託)
47
+
48
+ 受託者は、本件業務を第三者に委託してはならない。
49
+
50
+ ## 第9条(体制)
51
+
52
+ 受託者は、本件業務を第三者に委託することができる。
53
+ after: |
54
+ ## 第5条(再委託)
55
+
56
+ 受託者は、委託者の書面による承諾を得た場合を除き、本件業務を第三者に委託してはならない。
57
+
58
+ ## 第9条(体制)
59
+
60
+ 受託者は、委託者の書面による承諾を得て、本件業務を第三者に委託することができる。
61
+ en:
62
+ before: |
63
+ ## 5. Confidentiality
64
+
65
+ The Supplier must not disclose Confidential Information to third parties.
66
+
67
+ ## 9. Advisers
68
+
69
+ The Supplier may disclose Confidential Information to third parties.
70
+ after: |
71
+ ## 5. Confidentiality
72
+
73
+ The Supplier must not disclose Confidential Information to third parties.
74
+
75
+ ## 9. Advisers
76
+
77
+ The Supplier may disclose Confidential Information to its legal advisers.
78
+
79
+ not_flagged:
80
+ ja: 中身の語(名詞・動詞・形容詞)がまったく同じ二つの文だけを比べます。様相の語を二つ以上持つ文と、中身の語が一つしか無い文は見ません。「しなければならない」と「することができる」は食い違いと見ません。
81
+ en: Only two sentences with exactly the same content words (nouns, verbs, adjectives) are compared. A sentence with two or more modal markers, or with fewer than two content words, is not checked. "Must" and "may" are not counted as a conflict.
82
+ rewrite:
83
+ ja:
84
+ direction: どちらの文が正しいかを書き手に確かめてください。両方が正しいなら、それぞれの条件や例外を本文から書き足して範囲を分けます。本文に条件が無ければ作らず、書き手に聞きます。
85
+ pairs:
86
+ - before: 受託者は、本件業務を第三者に委託してはならない。(第9条)受託者は、本件業務を第三者に委託することができる。
87
+ after: 受託者は、委託者の書面による承諾を得た場合を除き、本件業務を第三者に委託してはならない。(第9条)受託者は、委託者の書面による承諾を得て、本件業務を第三者に委託することができる。(承諾の条件が本文にあるとき)
88
+ - before: 利用者は、本サービスを商用に使ってはならない。(第12条)利用者は、本サービスを商用に使うことができる。
89
+ after: 利用者は、本サービスを商用に使ってはならない。(第12条を消す。書き手が禁止を正しいとしたとき)
90
+ keep:
91
+ - 正しいとされた方の決まりの中身
92
+ avoid:
93
+ - 本文に無い条件や例外を作る
94
+ - どちらが正しいかを書き手に聞かずに決める
95
+ en:
96
+ direction: Ask the writer which sentence holds. If both do, separate them with the condition or exception the text gives; if the text gives none, ask rather than invent one.
97
+ pairs:
98
+ - before: The Supplier must not disclose Confidential Information to third parties. (Section 9) The Supplier may disclose Confidential Information to third parties.
99
+ after: The Supplier must not disclose Confidential Information to third parties. (Section 9) The Supplier may disclose Confidential Information to its legal advisers. (when Section 9 is about advisers)
100
+ - before: Users must not resell the Service. (Section 12) Users may resell the Service.
101
+ after: Users must not resell the Service. (Section 12 deleted, when the writer confirms the ban)
102
+ keep:
103
+ - what the rule that holds says
104
+ avoid:
105
+ - inventing a condition or exception
106
+ - picking a side without asking the writer
@@ -0,0 +1,88 @@
1
+ id: name-variant
2
+ layer: L3
3
+ status: experimental
4
+ how_to_find: name-variant
5
+ requires: [pos]
6
+ severity: warning
7
+
8
+ name:
9
+ ja: 同じ名前の書き分け
10
+ en: One name written two ways
11
+
12
+ why:
13
+ ja: 人や会社や製品の名前を、ある所では「山田太郎」、別の所では「山田太朗」と書くと、読み手は同じ人か別の人か分かりません。契約書なら当事者の特定が揺らぎます。多いのは打ち間違いと、別の文書から写した段落です。どちらの形が正しいかは決めず、文書の中で少ないほうを指します。
14
+ en: A person, company or product written as "GitHub" in one place and "Github" in another leaves the reader unsure whether they are the same. In a contract it blurs who the party is. The usual causes are a typo and a paragraph pasted from another document. chaff does not decide which form is right; it points at the one the document uses less.
15
+
16
+ message:
17
+ ja: 「{name}」は、ほかの所では「{usual}」と書いています
18
+ en: '"{name}" is written "{usual}" elsewhere in the document'
19
+
20
+ messages:
21
+ spelling:
22
+ ja: 「{name}」は、ほかの所では「{usual}」と書いています(字の大小・幅・記号の違い)
23
+ en: '"{name}" is written "{usual}" elsewhere in the document (case, width or punctuation)'
24
+ reading:
25
+ ja: 「{name}」は、ほかの所では同じ読みの「{usual}」と書いています
26
+ en: '"{name}" is written "{usual}", read the same, elsewhere in the document'
27
+ near:
28
+ ja: 「{name}」は、ほかの所で何度も書いた「{usual}」と一字違いです
29
+ en: '"{name}" is one letter away from "{usual}", which the document uses more than once'
30
+
31
+ how_to_fix:
32
+ ja: 正しい形を確かめ、一つに揃えてください。本当に別の人や会社なら、そのままで構いません。
33
+ en: Check the right form and use it throughout. If they really are different people or companies, leave them.
34
+
35
+ placeholders:
36
+ name:
37
+ ja: 名前
38
+ en: the name
39
+ usual:
40
+ ja: 別の形
41
+ en: another form
42
+
43
+ levels: { strict: error, normal: warning, relaxed: info }
44
+
45
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
46
+
47
+ group: consistency
48
+ summary:
49
+ ja: 同じ人・会社・製品の名前を、少しだけ違う形で書いている所(山田太郎 と 山田太朗、GitHub と Github)
50
+ en: The same person, company or product written in slightly different forms (GitHub and Github, Acme, Inc. and Acme Inc.)
51
+ example:
52
+ ja:
53
+ before: |
54
+ 担当は山田太郎です。見積もりは山田太郎が作り、請求書は山田太朗が送ります。
55
+ after: |
56
+ 担当は山田太郎です。見積もりは山田太郎が作り、請求書も山田太郎が送ります。
57
+ en:
58
+ before: |
59
+ The code lives on GitHub. Reviews happen on GitHub, and releases are tagged on Github.
60
+ after: |
61
+ The code lives on GitHub. Reviews happen on GitHub, and releases are tagged on GitHub.
62
+
63
+ not_flagged:
64
+ ja: 品詞解析が固有名詞と読んだ語だけを見ます。大文字だけの名前(ACME INC、NASA)は見ません。一字違いの英字の名前は、6 字以上で、多いほうが二度以上、少ないほうが一度だけのときに限ります(Iran と Iraq は別の名前)。
65
+ en: Only words the tagger reads as proper nouns are checked. Names in capitals only (ACME INC, NASA) are left out. Names one letter apart are reported only when six letters or longer, with the usual form used at least twice and the other once (Iran and Iraq are different names).
66
+ rewrite:
67
+ ja:
68
+ direction: 少ないほうの形を、多いほうの形に替えてください。どちらが正しいか本文から分からなければ、書き手に聞きます。別の人や会社なら替えません。
69
+ pairs:
70
+ - before: 見積もりは山田太郎が作り、請求書は山田太朗が送ります。
71
+ after: 見積もりは山田太郎が作り、請求書も山田太郎が送ります。
72
+ - before: 発注先は株式会社ミナト商事です。納品はミナト商時が行います。
73
+ after: 発注先は株式会社ミナト商事です。納品はミナト商事が行います。
74
+ keep:
75
+ - 名前の正しい形
76
+ avoid:
77
+ - 別の人や会社の名前を一つにまとめる
78
+ en:
79
+ direction: Replace the less frequent form with the usual one. If the text does not show which is right, ask the writer. Leave names that belong to different people or companies.
80
+ pairs:
81
+ - before: Reviews happen on GitHub, and releases are tagged on Github.
82
+ after: Reviews happen on GitHub, and releases are tagged on GitHub.
83
+ - before: Acme Inc. signs the order. Payment goes to Acme, Inc. within thirty days.
84
+ after: Acme Inc. signs the order. Payment goes to Acme Inc. within thirty days.
85
+ keep:
86
+ - the name's right form
87
+ avoid:
88
+ - merging the names of two different people or companies
@@ -11,8 +11,8 @@ name:
11
11
  en: Repeated phrasing
12
12
 
13
13
  why:
14
- ja: 同じ言い回しが何度も出ると、読み手は新しいことが書かれていないと感じます。文字の並びで見ているので、どの言語でも同じように効きます。
15
- en: The same phrasing again and again reads as nothing new being said. Measured on character n-grams, so it works the same in any language.
14
+ ja: 同じ言い回しが何度も出ると、読み手は新しいことが書かれていないと感じます。日本語は文字の並びで、英語は語の切れ目にそろえた並びで数えます。一覧の項目ごとに付く括弧の札・リンクの文字・記号は、書き手の言い回しではないので数えません。
15
+ en: The same phrasing again and again reads as nothing new being said. Counted on runs of whole words in English and of characters in Japanese. Bracketed tags, link text and symbols that a listing repeats on every entry are not the writer's phrasing, and are not counted.
16
16
 
17
17
  message:
18
18
  ja: 「{word}」が {count} 回出てきます({limit} 回まで)
@@ -25,3 +25,30 @@ how_to_fix:
25
25
  levels: { strict: 3, normal: 5, relaxed: 9 }
26
26
 
27
27
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
28
+
29
+ group: readability
30
+ summary:
31
+ ja: 同じ言い回しが何度も出てきて、新しいことを言っていないように読める所
32
+ en: The same phrase used over and over, so nothing new seems to be said
33
+ example:
34
+ ja:
35
+ pad: true
36
+ config: { rules: { ngram-repetition: strict } }
37
+ before: |
38
+ お客様の声を大切にしています。商品開発でもお客様の声を大切にしています。店頭でもお客様の声を大切にしています。電話の窓口でもお客様の声を大切にしています。
39
+ after: |
40
+ お客様の声を大切にしています。商品開発では試作品を常連の方に使ってもらい、店頭では買い物のあとに感想を聞いています。
41
+ en:
42
+ pad: true
43
+ config: { rules: { ngram-repetition: strict } }
44
+ before: |
45
+ We listen to our customers. In product design we listen to our customers. In our stores we listen to our customers. On the phone we listen to our customers.
46
+ after: |
47
+ We listen to our customers. Regulars try every prototype, and store staff ask shoppers what they thought.
48
+
49
+ not_flagged:
50
+ ja: 一覧の飾り(各項目に付くタグやリンクの文字)と、名前にかかる語句は数えません。短い文書は測りません。
51
+ en: Tags, link text and symbols that a listing repeats on every entry, and the words around a repeated name, are not counted. Short documents are not measured.
52
+ level_meaning:
53
+ ja: 同じ言い回し {limit} 回まで
54
+ en: up to {limit} uses of the same phrase
@@ -26,3 +26,20 @@ how_to_fix:
26
26
  levels: { strict: 1, normal: 2, relaxed: 3 }
27
27
 
28
28
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
29
+ sources: [yamamoto-cheng-2015]
30
+
31
+ group: readability
32
+ summary:
33
+ ja: 「会社の部の課の方針」のように、同じ助詞が区切りなしに続く所
34
+ en: The same Japanese particle repeated with no break, so the reader cannot tell what attaches to what
35
+ example:
36
+ ja:
37
+ before: 本社の営業部の第二課の方針を確認しました。
38
+ after: 本社営業部にある第二課の方針を確認しました。
39
+
40
+ not_flagged:
41
+ ja: 読点で区切った並び、「」や『』の中の題名や引用は数えません。
42
+ en: Items separated by commas, and titles or quotations inside 「」 or 『』, are not counted.
43
+ level_meaning:
44
+ ja: 同じ助詞の連続 {limit} 回まで
45
+ en: up to {limit} of the same particle in a row
@@ -30,3 +30,52 @@ levels:
30
30
  en: { strict: 3, normal: 8, relaxed: 20 }
31
31
 
32
32
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
33
+ sources: [freeburg-2026]
34
+
35
+ group: ai-tells
36
+ summary:
37
+ ja: ダッシュ(——)が多すぎる所。英語では、生成された文章のよく知られた印の一つでもあります
38
+ en: Too many dashes, which is also one of the better-known marks of generated text
39
+ example:
40
+ ja:
41
+ pad: true
42
+ before: |
43
+ 新しい料金——来月から始まります——は、請求書にも反映されます。支払いの期限——月末です——にご注意ください。
44
+ after: |
45
+ 新しい料金は来月から始まり、請求書にも反映されます。支払いの期限は月末です。
46
+ en:
47
+ pad: true
48
+ before: |
49
+ The new prices — which start next month — will show on invoices. Payment is due — as before — at the end of the month.
50
+ after: |
51
+ The new prices start next month and will show on invoices. Payment is due at the end of the month, as before.
52
+
53
+ not_flagged:
54
+ ja: 短い文書は測りません。英語では、ダッシュそのものを誤りとは言いません。
55
+ en: Short documents are not measured. In English a dash is not called wrong; only a heavy hand is.
56
+ level_meaning:
57
+ ja: 1000 字あたりダッシュ {limit} 個まで
58
+ en: up to {limit} dashes per 1000 words
59
+ rewrite:
60
+ ja:
61
+ direction: 挟み込みのダッシュは括弧に、言い換えや補足のダッシュは読点に替えるか、二文に分けてください。
62
+ pairs:
63
+ - before: この設定——とくに保存期間——は慎重に決めてください。
64
+ after: この設定(とくに保存期間)は慎重に決めてください。
65
+ - before: 答えは一つ——締め切りを守ることです。
66
+ after: 答えは一つ、締め切りを守ることです。
67
+ keep:
68
+ - 挟み込んだ中身と、それが掛かる語
69
+ avoid:
70
+ - ダッシュを全角コロンや別の線の記号に替えるだけで済ませる
71
+ en:
72
+ direction: Turn an aside between dashes into commas or brackets, and a dash before an explanation into a comma, a colon or a new sentence.
73
+ pairs:
74
+ - before: The setting — especially retention — needs care.
75
+ after: The setting, especially retention, needs care.
76
+ - before: There is one answer — meet the deadline.
77
+ after: There is one answer. Meet the deadline.
78
+ keep:
79
+ - the aside and what it belongs to
80
+ avoid:
81
+ - swapping every dash for a colon or a semicolon
@@ -3,6 +3,7 @@ layer: L3
3
3
  status: experimental
4
4
  how_to_find: sentence-ending
5
5
  word_list: polite-ending
6
+ extra_word_lists: [neutral-ending]
6
7
  requires: [pos]
7
8
  languages: [ja]
8
9
  severity: warning
@@ -16,8 +17,14 @@ why:
16
17
  en: Mixing polite and plain endings leaves the reader unsure who the document addresses. Neither register is wrong; consistency within one document is the point.
17
18
 
18
19
  message:
19
- ja: この文だけ他と文末の調子が違います(文書の中で {count} 文)
20
- en: "This sentence's ending register differs from the rest ({count} in this document)"
20
+ ja: この文だけ他と文末の調子が違います(本文の中で {count} 文)
21
+ en: "This sentence's ending register differs from the rest ({count} in the body text)"
22
+
23
+ # 数えるのは、文が属するまとまりの中。message は本文、list は箇条書き 1 つ(番号で始まる段落の並びも)。
24
+ messages:
25
+ list:
26
+ ja: この文だけ他と文末の調子が違います(この箇条書きの中で {count} 文)
27
+ en: "This sentence's ending register differs from the rest ({count} in this list)"
21
28
 
22
29
  how_to_fix:
23
30
  ja: 多いほうに揃えてください。少数派のほうを直すのが、いちばん手数が少なくて済みます。
@@ -27,3 +34,22 @@ how_to_fix:
27
34
  levels: { strict: 5, normal: 3, relaxed: 1 }
28
35
 
29
36
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
37
+ sources: [yasashii-nihongo-2020, koyobun-2022, jtf-style-guide]
38
+
39
+ group: consistency
40
+ summary:
41
+ ja: 「です・ます」の中に「だ・である」が混ざった文
42
+ en: A Japanese sentence whose ending (polite or plain) differs from the rest of the document
43
+ example:
44
+ ja:
45
+ before: |
46
+ 新しい料金は来月から始まります。請求書の形式も変わります。支払いの期限は月末です。古い料金は三月で終わる。
47
+ after: |
48
+ 新しい料金は来月から始まります。請求書の形式も変わります。支払いの期限は月末です。古い料金は三月で終わります。
49
+
50
+ not_flagged:
51
+ ja: どちらの調子が正しいかは決めません。多いほうに揃っていない、少ないほうの文だけを指します。本文と箇条書きは別々に数えます。箇条書きの中の少ないほうが文書全体では多いほうなら、その文は指しません。
52
+ en: Neither register is called right; only the sentences in the minority are pointed at. The body and each list are counted apart, and a sentence in a list's minority is left alone when its register is the document's majority.
53
+ level_meaning:
54
+ ja: 少ないほうの調子の文が {limit} 文以下のとき、それを指摘
55
+ en: reported when the minority register has {limit} sentences or fewer
@@ -25,3 +25,23 @@ how_to_fix:
25
25
  levels: { strict: 3, normal: 5, relaxed: 8 }
26
26
 
27
27
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
28
+
29
+ group: readability
30
+ summary:
31
+ ja: 一つの文に「・」で並べた語が多すぎて、どれとどれが組なのか分からない所
32
+ en: So many items joined by middle dots (・) in one Japanese sentence that the groups blur
33
+ example:
34
+ ja:
35
+ before: 対象は営業・企画・総務・経理・人事・法務の各部と、東京・大阪・名古屋の各拠点です。
36
+ after: |
37
+ 対象は次の部と拠点です。
38
+
39
+ - 部: 営業、企画、総務、経理、人事、法務
40
+ - 拠点: 東京、大阪、名古屋
41
+
42
+ not_flagged:
43
+ ja: 行の頭の「・」は箇条書きの印なので数えません。
44
+ en: A 「・」 at the start of a line is a bullet and is not counted.
45
+ level_meaning:
46
+ ja: 一文に中黒 {limit} 個まで
47
+ en: up to {limit} middle dots in a sentence
@@ -0,0 +1,89 @@
1
+ id: nominalization
2
+ layer: L3
3
+ status: experimental
4
+ how_to_find: nominalization
5
+ # 動詞を名詞にして別の動詞に運ばせる言い方。英語は語の並び(nominalization-phrase)、日本語はサ変名詞(品詞の VerbForm=Vnoun)と、
6
+ # その後ろの「を実施する」(nominalization-light-verb)で見る。片方しか持たない言語があるので word_list には書かない(書くと、無い言語で動かなくなる)。
7
+ requires: [pos]
8
+ severity: info
9
+
10
+ name:
11
+ ja: 動詞を名詞にして回りくどく書いている
12
+ en: Verbs hidden in nouns
13
+
14
+ why:
15
+ ja: 「調査を実施した」は「調査した」で、「確認を行う」は「確認する」で足ります。動詞を名詞にして別の動詞に運ばせると、文が長くなり、誰が何をしたのかが遠くなります。在留支援のためのやさしい日本語ガイドラインが「調査を実施した」を「調査した」に直す例を挙げ、米国連邦政府の Plain Language Guidelines と英国政府(GOV.UK)の書き方の手引きも、"make a decision" ではなく "decide" と書くよう求めています。一つ二つは普通の言い方なので、文書の長さに対して多いときだけ指します。
16
+ en: '"Make a decision" says in three words what "decide" says in one. A verb turned into a noun and carried by another verb makes the sentence longer and the action harder to see. The Federal Plain Language Guidelines call these hidden verbs, and GOV.UK asks for the verb; the Japanese guideline for plain Japanese rewrites 調査を実施した as 調査した. One or two are ordinary, so chaff speaks only when they are dense for the document''s length.'
17
+
18
+ message:
19
+ ja: 「{matched}」は「{preferred}」で足ります(動詞を名詞にした言い方が 1000 字あたり {density} 個、{limit} 個まで)
20
+ en: '"{matched}" can be "{preferred}" ({density} hidden verbs per 1000 words, limit {limit})'
21
+
22
+ how_to_fix:
23
+ ja: 名詞を動詞に戻してください。「調査を実施した」は「調査した」、「確認を行います」は「確認します」に。
24
+ en: 'Use the verb: "made a decision" becomes "decided", "conduct an analysis" becomes "analyze".'
25
+
26
+ placeholders:
27
+ matched:
28
+ ja: 見つけた言い方
29
+ en: the phrase found
30
+ preferred:
31
+ ja: 動詞にした形
32
+ en: the verb
33
+
34
+ levels: { strict: 1, normal: 2, relaxed: 4 }
35
+
36
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
37
+ sources: [yasashii-nihongo-2020, plain-2011, gov-uk-clear-language, reinhart-2025]
38
+
39
+ group: wording
40
+ summary:
41
+ ja: 「調査を実施した」「確認を行う」のように、動詞を名詞にして別の動詞に運ばせた言い方が、文書の長さに対して多い所
42
+ en: Verbs hidden in nouns ("make a decision", "conduct an analysis"), many for the document's length
43
+ example:
44
+ ja:
45
+ pad: true
46
+ before: |
47
+ 先月、顧客の満足度の調査を実施しました。結果の確認を行い、改善の検討を行います。
48
+ after: |
49
+ 先月、顧客の満足度を調査しました。結果を確認し、改善を検討します。
50
+ en:
51
+ pad: true
52
+ before: |
53
+ We will conduct an analysis of the results and make a decision next week.
54
+ after: |
55
+ We will analyze the results and decide next week.
56
+
57
+ not_flagged:
58
+ ja: 「する」を付けても動詞にならない名詞(イベントを行う)、「を実施する」が催す意味になる語(研修を実施する、試験を行う)、「勉強をする」のような「〜をする」、文書の長さに対して少ないものは見ません。短すぎる文書も測りません。
59
+ en: Phrases not on chaff's list, and a document where they are few for its length, are not reported. Very short documents are not measured.
60
+ level_meaning:
61
+ ja: 1000 字あたり「〜を実施する」のような名詞化した動詞 {limit} 個まで
62
+ en: up to {limit} nominalized verbs ("make a decision") per 1000 words
63
+ rewrite:
64
+ ja:
65
+ direction: 「〜を実施する」「〜を行う」の名詞を動詞に戻し、運び役の動詞を消してください。誰がしたのかが書かれていれば、その人を主語に残します。
66
+ pairs:
67
+ - before: 先月、顧客満足度の調査を実施しました。
68
+ after: 先月、顧客満足度を調査しました。
69
+ - before: 結果の確認を行い、改善の検討を行います。
70
+ after: 結果を確認し、改善を検討します。
71
+ keep:
72
+ - 何を、いつ、誰がしたのか
73
+ - 催す意味の「実施する」(研修を実施する、試験を行う)
74
+ avoid:
75
+ - 「実施する」を「行う」「図る」のような別の運び役に替える
76
+ - 動詞に戻すときに目的語や時期を落とす
77
+ en:
78
+ direction: Turn the noun back into its verb and drop the verb that was carrying it ("make a decision" becomes "decide"). Keep who acted as the subject.
79
+ pairs:
80
+ - before: We will conduct an analysis of the results next week.
81
+ after: We will analyze the results next week.
82
+ - before: The board made a decision to postpone the launch.
83
+ after: The board decided to postpone the launch.
84
+ keep:
85
+ - what was done, to what, and when
86
+ - who acted
87
+ avoid:
88
+ - swapping one carrying verb for another ("perform", "carry out")
89
+ - dropping the object or the time while making the verb
@@ -21,6 +21,58 @@ how_to_fix:
21
21
  ja: 番号を振り直してください。削った条を欠番として残すなら、「第4条(削除)」のように番号だけを残すと読み手に伝わります。
22
22
  en: Renumber. If a provision was removed on purpose, keep its number with a note such as "Section 4 [Deleted]".
23
23
 
24
- levels: { strict: 1, normal: 1, relaxed: 1 }
24
+ levels: { normal: error, relaxed: warning }
25
25
 
26
26
  use_for: [business, technical, blog, legal, docs, academic, literature, speech]
27
+
28
+ group: structure
29
+ summary:
30
+ ja: 第1条の次が第3条、(a) の次が (c) のように、番号が飛んだり重なったりしている所
31
+ en: A numbered item that skips or repeats a number, such as Article 3 right after Article 1
32
+ example:
33
+ ja:
34
+ before: |
35
+ # 就業規則
36
+
37
+ ## 第1条(目的)
38
+
39
+ この規則は、働き方の決まりを定める。
40
+
41
+ ## 第3条(勤務時間)
42
+
43
+ 勤務時間は、午前九時から午後六時までとする。
44
+ after: |
45
+ # 就業規則
46
+
47
+ ## 第1条(目的)
48
+
49
+ この規則は、働き方の決まりを定める。
50
+
51
+ ## 第2条(勤務時間)
52
+
53
+ 勤務時間は、午前九時から午後六時までとする。
54
+ en:
55
+ before: |
56
+ # Staff rules
57
+
58
+ ## Article 1 (Purpose)
59
+
60
+ These rules set out how we work.
61
+
62
+ ## Article 3 (Working hours)
63
+
64
+ Working hours are from nine to six.
65
+ after: |
66
+ # Staff rules
67
+
68
+ ## Article 1 (Purpose)
69
+
70
+ These rules set out how we work.
71
+
72
+ ## Article 2 (Working hours)
73
+
74
+ Working hours are from nine to six.
75
+
76
+ not_flagged:
77
+ ja: 同じ親の下で隣り合う番号だけを比べます。別の章の番号どうしは比べません。
78
+ en: Only numbers side by side under the same parent are compared.