chaffjs 0.17.0 → 0.18.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 (840) hide show
  1. package/dist/announced-count.d.ts +26 -0
  2. package/dist/announced-count.d.ts.map +1 -0
  3. package/dist/announced-count.js +104 -0
  4. package/dist/announced-count.js.map +1 -0
  5. package/dist/bare-url.d.ts +14 -0
  6. package/dist/bare-url.d.ts.map +1 -0
  7. package/dist/bare-url.js +28 -0
  8. package/dist/bare-url.js.map +1 -0
  9. package/dist/baseline.d.ts +5 -0
  10. package/dist/baseline.d.ts.map +1 -1
  11. package/dist/baseline.js +16 -1
  12. package/dist/baseline.js.map +1 -1
  13. package/dist/body-section.d.ts +7 -0
  14. package/dist/body-section.d.ts.map +1 -0
  15. package/dist/body-section.js +6 -0
  16. package/dist/body-section.js.map +1 -0
  17. package/dist/calendar-number.d.ts +2 -0
  18. package/dist/calendar-number.d.ts.map +1 -1
  19. package/dist/calendar-number.js +9 -2
  20. package/dist/calendar-number.js.map +1 -1
  21. package/dist/cli-args.d.ts +4 -0
  22. package/dist/cli-args.d.ts.map +1 -1
  23. package/dist/cli-args.js +5 -0
  24. package/dist/cli-args.js.map +1 -1
  25. package/dist/cli-text.d.ts.map +1 -1
  26. package/dist/cli-text.js +8 -4
  27. package/dist/cli-text.js.map +1 -1
  28. package/dist/cli.js +33 -30
  29. package/dist/cli.js.map +1 -1
  30. package/dist/commands/compare.d.ts +8 -0
  31. package/dist/commands/compare.d.ts.map +1 -0
  32. package/dist/commands/compare.js +72 -0
  33. package/dist/commands/compare.js.map +1 -0
  34. package/dist/commands/eval.d.ts.map +1 -1
  35. package/dist/commands/eval.js +17 -9
  36. package/dist/commands/eval.js.map +1 -1
  37. package/dist/commands/feedback.d.ts +5 -2
  38. package/dist/commands/feedback.d.ts.map +1 -1
  39. package/dist/commands/feedback.js +11 -5
  40. package/dist/commands/feedback.js.map +1 -1
  41. package/dist/commands/test.d.ts.map +1 -1
  42. package/dist/commands/test.js +2 -4
  43. package/dist/commands/test.js.map +1 -1
  44. package/dist/commands/tree.d.ts +13 -0
  45. package/dist/commands/tree.d.ts.map +1 -1
  46. package/dist/commands/tree.js +35 -5
  47. package/dist/commands/tree.js.map +1 -1
  48. package/dist/compare/atom.d.ts +31 -0
  49. package/dist/compare/atom.d.ts.map +1 -0
  50. package/dist/compare/atom.js +4 -0
  51. package/dist/compare/atom.js.map +1 -0
  52. package/dist/compare/clock-time.d.ts +8 -0
  53. package/dist/compare/clock-time.d.ts.map +1 -0
  54. package/dist/compare/clock-time.js +65 -0
  55. package/dist/compare/clock-time.js.map +1 -0
  56. package/dist/compare/extract.d.ts +15 -0
  57. package/dist/compare/extract.d.ts.map +1 -0
  58. package/dist/compare/extract.js +58 -0
  59. package/dist/compare/extract.js.map +1 -0
  60. package/dist/compare/fact-text.d.ts +23 -0
  61. package/dist/compare/fact-text.d.ts.map +1 -0
  62. package/dist/compare/fact-text.js +47 -0
  63. package/dist/compare/fact-text.js.map +1 -0
  64. package/dist/compare/markup-atoms.d.ts +11 -0
  65. package/dist/compare/markup-atoms.d.ts.map +1 -0
  66. package/dist/compare/markup-atoms.js +23 -0
  67. package/dist/compare/markup-atoms.js.map +1 -0
  68. package/dist/compare/match.d.ts +19 -0
  69. package/dist/compare/match.d.ts.map +1 -0
  70. package/dist/compare/match.js +84 -0
  71. package/dist/compare/match.js.map +1 -0
  72. package/dist/compare/outcome.d.ts +33 -0
  73. package/dist/compare/outcome.d.ts.map +1 -0
  74. package/dist/compare/outcome.js +40 -0
  75. package/dist/compare/outcome.js.map +1 -0
  76. package/dist/compare/proper-nouns.d.ts +19 -0
  77. package/dist/compare/proper-nouns.d.ts.map +1 -0
  78. package/dist/compare/proper-nouns.js +44 -0
  79. package/dist/compare/proper-nouns.js.map +1 -0
  80. package/dist/compare/render.d.ts +9 -0
  81. package/dist/compare/render.d.ts.map +1 -0
  82. package/dist/compare/render.js +64 -0
  83. package/dist/compare/render.js.map +1 -0
  84. package/dist/compare/spans.d.ts +9 -0
  85. package/dist/compare/spans.d.ts.map +1 -0
  86. package/dist/compare/spans.js +11 -0
  87. package/dist/compare/spans.js.map +1 -0
  88. package/dist/compare/text-atoms.d.ts +24 -0
  89. package/dist/compare/text-atoms.d.ts.map +1 -0
  90. package/dist/compare/text-atoms.js +67 -0
  91. package/dist/compare/text-atoms.js.map +1 -0
  92. package/dist/compare/text.d.ts +24 -0
  93. package/dist/compare/text.d.ts.map +1 -0
  94. package/dist/compare/text.js +90 -0
  95. package/dist/compare/text.js.map +1 -0
  96. package/dist/compare/tree-atoms.d.ts +20 -0
  97. package/dist/compare/tree-atoms.d.ts.map +1 -0
  98. package/dist/compare/tree-atoms.js +58 -0
  99. package/dist/compare/tree-atoms.js.map +1 -0
  100. package/dist/compare/written-names.d.ts +8 -0
  101. package/dist/compare/written-names.d.ts.map +1 -0
  102. package/dist/compare/written-names.js +24 -0
  103. package/dist/compare/written-names.js.map +1 -0
  104. package/dist/config/load.d.ts +15 -0
  105. package/dist/config/load.d.ts.map +1 -1
  106. package/dist/config/load.js +5 -0
  107. package/dist/config/load.js.map +1 -1
  108. package/dist/config/option-problems.d.ts +16 -0
  109. package/dist/config/option-problems.d.ts.map +1 -0
  110. package/dist/config/option-problems.js +58 -0
  111. package/dist/config/option-problems.js.map +1 -0
  112. package/dist/config/read.d.ts +4 -0
  113. package/dist/config/read.d.ts.map +1 -0
  114. package/dist/config/read.js +8 -0
  115. package/dist/config/read.js.map +1 -0
  116. package/dist/config/rule-problems.d.ts +2 -4
  117. package/dist/config/rule-problems.d.ts.map +1 -1
  118. package/dist/config/rule-problems.js +7 -1
  119. package/dist/config/rule-problems.js.map +1 -1
  120. package/dist/config/style.d.ts +16 -0
  121. package/dist/config/style.d.ts.map +1 -0
  122. package/dist/config/style.js +36 -0
  123. package/dist/config/style.js.map +1 -0
  124. package/dist/config/warnings.d.ts +6 -0
  125. package/dist/config/warnings.d.ts.map +1 -0
  126. package/dist/config/warnings.js +10 -0
  127. package/dist/config/warnings.js.map +1 -0
  128. package/dist/config/write.d.ts.map +1 -1
  129. package/dist/config/write.js +17 -4
  130. package/dist/config/write.js.map +1 -1
  131. package/dist/custom/bounded-match.d.ts +15 -0
  132. package/dist/custom/bounded-match.d.ts.map +1 -0
  133. package/dist/custom/bounded-match.js +43 -0
  134. package/dist/custom/bounded-match.js.map +1 -0
  135. package/dist/custom/load.d.ts +8 -0
  136. package/dist/custom/load.d.ts.map +1 -0
  137. package/dist/custom/load.js +11 -0
  138. package/dist/custom/load.js.map +1 -0
  139. package/dist/custom/parse.d.ts +70 -0
  140. package/dist/custom/parse.d.ts.map +1 -0
  141. package/dist/custom/parse.js +215 -0
  142. package/dist/custom/parse.js.map +1 -0
  143. package/dist/custom/problems.d.ts +5 -0
  144. package/dist/custom/problems.d.ts.map +1 -0
  145. package/dist/custom/problems.js +78 -0
  146. package/dist/custom/problems.js.map +1 -0
  147. package/dist/custom/regex-safety.d.ts +11 -0
  148. package/dist/custom/regex-safety.d.ts.map +1 -0
  149. package/dist/custom/regex-safety.js +110 -0
  150. package/dist/custom/regex-safety.js.map +1 -0
  151. package/dist/custom/token-pattern.d.ts +8 -0
  152. package/dist/custom/token-pattern.d.ts.map +1 -0
  153. package/dist/custom/token-pattern.js +75 -0
  154. package/dist/custom/token-pattern.js.map +1 -0
  155. package/dist/detect.d.ts.map +1 -1
  156. package/dist/detect.js +24 -2
  157. package/dist/detect.js.map +1 -1
  158. package/dist/detectors/acronym-context.d.ts +2 -0
  159. package/dist/detectors/acronym-context.d.ts.map +1 -1
  160. package/dist/detectors/acronym-context.js +12 -4
  161. package/dist/detectors/acronym-context.js.map +1 -1
  162. package/dist/detectors/ai-phrasing.d.ts +20 -0
  163. package/dist/detectors/ai-phrasing.d.ts.map +1 -0
  164. package/dist/detectors/ai-phrasing.js +112 -0
  165. package/dist/detectors/ai-phrasing.js.map +1 -0
  166. package/dist/detectors/announced-count.d.ts +4 -0
  167. package/dist/detectors/announced-count.d.ts.map +1 -0
  168. package/dist/detectors/announced-count.js +20 -0
  169. package/dist/detectors/announced-count.js.map +1 -0
  170. package/dist/detectors/broken-link.d.ts +17 -0
  171. package/dist/detectors/broken-link.d.ts.map +1 -0
  172. package/dist/detectors/broken-link.js +66 -0
  173. package/dist/detectors/broken-link.js.map +1 -0
  174. package/dist/detectors/cited-name.d.ts.map +1 -1
  175. package/dist/detectors/cited-name.js +4 -4
  176. package/dist/detectors/cited-name.js.map +1 -1
  177. package/dist/detectors/cited-title.d.ts +11 -0
  178. package/dist/detectors/cited-title.d.ts.map +1 -0
  179. package/dist/detectors/cited-title.js +75 -0
  180. package/dist/detectors/cited-title.js.map +1 -0
  181. package/dist/detectors/concrete-evidence.d.ts +1 -1
  182. package/dist/detectors/concrete-evidence.d.ts.map +1 -1
  183. package/dist/detectors/concrete-evidence.js +2 -1
  184. package/dist/detectors/concrete-evidence.js.map +1 -1
  185. package/dist/detectors/contrast-frame.d.ts +17 -0
  186. package/dist/detectors/contrast-frame.d.ts.map +1 -0
  187. package/dist/detectors/contrast-frame.js +32 -0
  188. package/dist/detectors/contrast-frame.js.map +1 -0
  189. package/dist/detectors/custom.d.ts +8 -0
  190. package/dist/detectors/custom.d.ts.map +1 -0
  191. package/dist/detectors/custom.js +71 -0
  192. package/dist/detectors/custom.js.map +1 -0
  193. package/dist/detectors/dangling-figure.d.ts +4 -0
  194. package/dist/detectors/dangling-figure.d.ts.map +1 -0
  195. package/dist/detectors/dangling-figure.js +18 -0
  196. package/dist/detectors/dangling-figure.js.map +1 -0
  197. package/dist/detectors/doubled-punctuation.d.ts +9 -0
  198. package/dist/detectors/doubled-punctuation.d.ts.map +1 -0
  199. package/dist/detectors/doubled-punctuation.js +33 -0
  200. package/dist/detectors/doubled-punctuation.js.map +1 -0
  201. package/dist/detectors/doubled-word.d.ts +5 -0
  202. package/dist/detectors/doubled-word.d.ts.map +1 -1
  203. package/dist/detectors/doubled-word.js +24 -11
  204. package/dist/detectors/doubled-word.js.map +1 -1
  205. package/dist/detectors/enumerated-runs.d.ts +1 -1
  206. package/dist/detectors/enumerated-runs.d.ts.map +1 -1
  207. package/dist/detectors/enumerated-runs.js +15 -4
  208. package/dist/detectors/enumerated-runs.js.map +1 -1
  209. package/dist/detectors/gram-furniture.d.ts +6 -0
  210. package/dist/detectors/gram-furniture.d.ts.map +1 -0
  211. package/dist/detectors/gram-furniture.js +21 -0
  212. package/dist/detectors/gram-furniture.js.map +1 -0
  213. package/dist/detectors/gram-place.d.ts +2 -0
  214. package/dist/detectors/gram-place.d.ts.map +1 -1
  215. package/dist/detectors/gram-place.js +9 -7
  216. package/dist/detectors/gram-place.js.map +1 -1
  217. package/dist/detectors/gram-windows.d.ts +9 -0
  218. package/dist/detectors/gram-windows.d.ts.map +1 -0
  219. package/dist/detectors/gram-windows.js +27 -0
  220. package/dist/detectors/gram-windows.js.map +1 -0
  221. package/dist/detectors/heading-case.d.ts +2 -0
  222. package/dist/detectors/heading-case.d.ts.map +1 -1
  223. package/dist/detectors/heading-case.js +29 -2
  224. package/dist/detectors/heading-case.js.map +1 -1
  225. package/dist/detectors/heading-code-words.d.ts +6 -0
  226. package/dist/detectors/heading-code-words.d.ts.map +1 -0
  227. package/dist/detectors/heading-code-words.js +29 -0
  228. package/dist/detectors/heading-code-words.js.map +1 -0
  229. package/dist/detectors/heading-echo.d.ts.map +1 -1
  230. package/dist/detectors/heading-echo.js +7 -4
  231. package/dist/detectors/heading-echo.js.map +1 -1
  232. package/dist/detectors/heading-level-skip.d.ts +12 -0
  233. package/dist/detectors/heading-level-skip.d.ts.map +1 -0
  234. package/dist/detectors/heading-level-skip.js +11 -0
  235. package/dist/detectors/heading-level-skip.js.map +1 -0
  236. package/dist/detectors/image-alt-text.d.ts +3 -0
  237. package/dist/detectors/image-alt-text.d.ts.map +1 -0
  238. package/dist/detectors/image-alt-text.js +9 -0
  239. package/dist/detectors/image-alt-text.js.map +1 -0
  240. package/dist/detectors/index.d.ts.map +1 -1
  241. package/dist/detectors/index.js +34 -1
  242. package/dist/detectors/index.js.map +1 -1
  243. package/dist/detectors/kutoten-consistency.d.ts +24 -0
  244. package/dist/detectors/kutoten-consistency.d.ts.map +1 -0
  245. package/dist/detectors/kutoten-consistency.js +77 -0
  246. package/dist/detectors/kutoten-consistency.js.map +1 -0
  247. package/dist/detectors/lead-in.d.ts +1 -0
  248. package/dist/detectors/lead-in.d.ts.map +1 -1
  249. package/dist/detectors/lead-in.js +2 -1
  250. package/dist/detectors/lead-in.js.map +1 -1
  251. package/dist/detectors/lexicon-match.d.ts +4 -0
  252. package/dist/detectors/lexicon-match.d.ts.map +1 -1
  253. package/dist/detectors/lexicon-match.js +7 -2
  254. package/dist/detectors/lexicon-match.js.map +1 -1
  255. package/dist/detectors/list-item.d.ts +45 -0
  256. package/dist/detectors/list-item.d.ts.map +1 -0
  257. package/dist/detectors/list-item.js +88 -0
  258. package/dist/detectors/list-item.js.map +1 -0
  259. package/dist/detectors/list-items.d.ts +31 -0
  260. package/dist/detectors/list-items.d.ts.map +1 -0
  261. package/dist/detectors/list-items.js +113 -0
  262. package/dist/detectors/list-items.js.map +1 -0
  263. package/dist/detectors/list-lead-in.d.ts +7 -0
  264. package/dist/detectors/list-lead-in.d.ts.map +1 -0
  265. package/dist/detectors/list-lead-in.js +28 -0
  266. package/dist/detectors/list-lead-in.js.map +1 -0
  267. package/dist/detectors/list-sentence.d.ts +65 -0
  268. package/dist/detectors/list-sentence.d.ts.map +1 -0
  269. package/dist/detectors/list-sentence.js +105 -0
  270. package/dist/detectors/list-sentence.js.map +1 -0
  271. package/dist/detectors/list-view.d.ts +34 -0
  272. package/dist/detectors/list-view.d.ts.map +1 -0
  273. package/dist/detectors/list-view.js +137 -0
  274. package/dist/detectors/list-view.js.map +1 -0
  275. package/dist/detectors/long-vowel.d.ts +7 -0
  276. package/dist/detectors/long-vowel.d.ts.map +1 -0
  277. package/dist/detectors/long-vowel.js +57 -0
  278. package/dist/detectors/long-vowel.js.map +1 -0
  279. package/dist/detectors/markup-finding.d.ts +6 -0
  280. package/dist/detectors/markup-finding.d.ts.map +1 -0
  281. package/dist/detectors/markup-finding.js +19 -0
  282. package/dist/detectors/markup-finding.js.map +1 -0
  283. package/dist/detectors/name-numeral.d.ts +1 -1
  284. package/dist/detectors/name-numeral.d.ts.map +1 -1
  285. package/dist/detectors/name-numeral.js +2 -7
  286. package/dist/detectors/name-numeral.js.map +1 -1
  287. package/dist/detectors/orthography.d.ts.map +1 -1
  288. package/dist/detectors/orthography.js +14 -10
  289. package/dist/detectors/orthography.js.map +1 -1
  290. package/dist/detectors/oxford-comma.d.ts +7 -1
  291. package/dist/detectors/oxford-comma.d.ts.map +1 -1
  292. package/dist/detectors/oxford-comma.js +135 -229
  293. package/dist/detectors/oxford-comma.js.map +1 -1
  294. package/dist/detectors/place-run.d.ts.map +1 -1
  295. package/dist/detectors/place-run.js +10 -6
  296. package/dist/detectors/place-run.js.map +1 -1
  297. package/dist/detectors/placeholder-text.d.ts +9 -0
  298. package/dist/detectors/placeholder-text.d.ts.map +1 -0
  299. package/dist/detectors/placeholder-text.js +18 -0
  300. package/dist/detectors/placeholder-text.js.map +1 -0
  301. package/dist/detectors/quote-around.d.ts +3 -0
  302. package/dist/detectors/quote-around.d.ts.map +1 -0
  303. package/dist/detectors/quote-around.js +8 -0
  304. package/dist/detectors/quote-around.js.map +1 -0
  305. package/dist/detectors/register.d.ts +11 -3
  306. package/dist/detectors/register.d.ts.map +1 -1
  307. package/dist/detectors/register.js +28 -9
  308. package/dist/detectors/register.js.map +1 -1
  309. package/dist/detectors/roman-numeral.d.ts +2 -0
  310. package/dist/detectors/roman-numeral.d.ts.map +1 -1
  311. package/dist/detectors/roman-numeral.js +2 -0
  312. package/dist/detectors/roman-numeral.js.map +1 -1
  313. package/dist/detectors/sentence-ending.d.ts +17 -1
  314. package/dist/detectors/sentence-ending.d.ts.map +1 -1
  315. package/dist/detectors/sentence-ending.js +13 -7
  316. package/dist/detectors/sentence-ending.js.map +1 -1
  317. package/dist/detectors/sentence-length.d.ts.map +1 -1
  318. package/dist/detectors/sentence-length.js +13 -4
  319. package/dist/detectors/sentence-length.js.map +1 -1
  320. package/dist/detectors/signals.d.ts +8 -0
  321. package/dist/detectors/signals.d.ts.map +1 -1
  322. package/dist/detectors/signals.js +67 -46
  323. package/dist/detectors/signals.js.map +1 -1
  324. package/dist/detectors/structure-tree.d.ts +6 -0
  325. package/dist/detectors/structure-tree.d.ts.map +1 -1
  326. package/dist/detectors/structure-tree.js +37 -1
  327. package/dist/detectors/structure-tree.js.map +1 -1
  328. package/dist/detectors/structure.d.ts +1 -3
  329. package/dist/detectors/structure.d.ts.map +1 -1
  330. package/dist/detectors/structure.js +3 -4
  331. package/dist/detectors/structure.js.map +1 -1
  332. package/dist/detectors/superlative-name.d.ts.map +1 -1
  333. package/dist/detectors/superlative-name.js +8 -5
  334. package/dist/detectors/superlative-name.js.map +1 -1
  335. package/dist/detectors/superlative-scope.d.ts.map +1 -1
  336. package/dist/detectors/superlative-scope.js +9 -4
  337. package/dist/detectors/superlative-scope.js.map +1 -1
  338. package/dist/detectors/token-column.d.ts +46 -0
  339. package/dist/detectors/token-column.d.ts.map +1 -0
  340. package/dist/detectors/token-column.js +95 -0
  341. package/dist/detectors/token-column.js.map +1 -0
  342. package/dist/detectors/unbalanced-bracket.d.ts +22 -0
  343. package/dist/detectors/unbalanced-bracket.d.ts.map +1 -0
  344. package/dist/detectors/unbalanced-bracket.js +119 -0
  345. package/dist/detectors/unbalanced-bracket.js.map +1 -0
  346. package/dist/detectors/url-run-on.d.ts +9 -0
  347. package/dist/detectors/url-run-on.d.ts.map +1 -0
  348. package/dist/detectors/url-run-on.js +19 -0
  349. package/dist/detectors/url-run-on.js.map +1 -0
  350. package/dist/document-sections.d.ts +13 -0
  351. package/dist/document-sections.d.ts.map +1 -0
  352. package/dist/document-sections.js +32 -0
  353. package/dist/document-sections.js.map +1 -0
  354. package/dist/document.d.ts +11 -4
  355. package/dist/document.d.ts.map +1 -1
  356. package/dist/document.js +90 -98
  357. package/dist/document.js.map +1 -1
  358. package/dist/email-parts.d.ts +28 -0
  359. package/dist/email-parts.d.ts.map +1 -0
  360. package/dist/email-parts.js +230 -0
  361. package/dist/email-parts.js.map +1 -0
  362. package/dist/eval.d.ts +2 -1
  363. package/dist/eval.d.ts.map +1 -1
  364. package/dist/eval.js +16 -4
  365. package/dist/eval.js.map +1 -1
  366. package/dist/figure-references.d.ts +30 -0
  367. package/dist/figure-references.d.ts.map +1 -0
  368. package/dist/figure-references.js +76 -0
  369. package/dist/figure-references.js.map +1 -0
  370. package/dist/files.d.ts +2 -0
  371. package/dist/files.d.ts.map +1 -1
  372. package/dist/files.js +4 -0
  373. package/dist/files.js.map +1 -1
  374. package/dist/heading-label.d.ts +22 -0
  375. package/dist/heading-label.d.ts.map +1 -0
  376. package/dist/heading-label.js +50 -0
  377. package/dist/heading-label.js.map +1 -0
  378. package/dist/in-page-nav.d.ts +4 -1
  379. package/dist/in-page-nav.d.ts.map +1 -1
  380. package/dist/in-page-nav.js +53 -18
  381. package/dist/in-page-nav.js.map +1 -1
  382. package/dist/joined-view.d.ts.map +1 -1
  383. package/dist/joined-view.js +1 -0
  384. package/dist/joined-view.js.map +1 -1
  385. package/dist/levels.d.ts +5 -1
  386. package/dist/levels.d.ts.map +1 -1
  387. package/dist/levels.js +9 -0
  388. package/dist/levels.js.map +1 -1
  389. package/dist/line-paragraphs.d.ts +8 -0
  390. package/dist/line-paragraphs.d.ts.map +1 -1
  391. package/dist/line-paragraphs.js +33 -10
  392. package/dist/line-paragraphs.js.map +1 -1
  393. package/dist/long-vowel.d.ts +35 -0
  394. package/dist/long-vowel.d.ts.map +1 -0
  395. package/dist/long-vowel.js +71 -0
  396. package/dist/long-vowel.js.map +1 -0
  397. package/dist/markdown-node.d.ts +19 -0
  398. package/dist/markdown-node.d.ts.map +1 -0
  399. package/dist/markdown-node.js +6 -0
  400. package/dist/markdown-node.js.map +1 -0
  401. package/dist/markdown-read.d.ts +17 -0
  402. package/dist/markdown-read.d.ts.map +1 -0
  403. package/dist/markdown-read.js +37 -0
  404. package/dist/markdown-read.js.map +1 -0
  405. package/dist/markup.d.ts +22 -0
  406. package/dist/markup.d.ts.map +1 -0
  407. package/dist/markup.js +180 -0
  408. package/dist/markup.js.map +1 -0
  409. package/dist/mask.js +8 -5
  410. package/dist/mask.js.map +1 -1
  411. package/dist/number-name.d.ts +21 -5
  412. package/dist/number-name.d.ts.map +1 -1
  413. package/dist/number-name.js +119 -17
  414. package/dist/number-name.js.map +1 -1
  415. package/dist/orthography.d.ts +2 -0
  416. package/dist/orthography.d.ts.map +1 -1
  417. package/dist/orthography.js +9 -4
  418. package/dist/orthography.js.map +1 -1
  419. package/dist/page-furniture.d.ts +5 -2
  420. package/dist/page-furniture.d.ts.map +1 -1
  421. package/dist/page-furniture.js +8 -2
  422. package/dist/page-furniture.js.map +1 -1
  423. package/dist/plain-source.d.ts +1 -0
  424. package/dist/plain-source.d.ts.map +1 -1
  425. package/dist/plain-source.js +2 -1
  426. package/dist/plain-source.js.map +1 -1
  427. package/dist/plugin.d.ts +115 -0
  428. package/dist/plugin.d.ts.map +1 -1
  429. package/dist/profile/for-file.d.ts.map +1 -1
  430. package/dist/profile/for-file.js +3 -1
  431. package/dist/profile/for-file.js.map +1 -1
  432. package/dist/quoted-span.d.ts.map +1 -1
  433. package/dist/quoted-span.js +8 -3
  434. package/dist/quoted-span.js.map +1 -1
  435. package/dist/reasons.d.ts +3 -0
  436. package/dist/reasons.d.ts.map +1 -1
  437. package/dist/reasons.js +6 -0
  438. package/dist/reasons.js.map +1 -1
  439. package/dist/reference-lists.d.ts +3 -0
  440. package/dist/reference-lists.d.ts.map +1 -0
  441. package/dist/reference-lists.js +75 -0
  442. package/dist/reference-lists.js.map +1 -0
  443. package/dist/render/explain.d.ts +7 -1
  444. package/dist/render/explain.d.ts.map +1 -1
  445. package/dist/render/explain.js +36 -12
  446. package/dist/render/explain.js.map +1 -1
  447. package/dist/render/friendly.d.ts.map +1 -1
  448. package/dist/render/friendly.js +19 -9
  449. package/dist/render/friendly.js.map +1 -1
  450. package/dist/render/options.d.ts +7 -0
  451. package/dist/render/options.d.ts.map +1 -0
  452. package/dist/render/options.js +50 -0
  453. package/dist/render/options.js.map +1 -0
  454. package/dist/render/rules-json.d.ts +4 -1
  455. package/dist/render/rules-json.d.ts.map +1 -1
  456. package/dist/render/rules-json.js +102 -12
  457. package/dist/render/rules-json.js.map +1 -1
  458. package/dist/render/rules-table.d.ts +4 -0
  459. package/dist/render/rules-table.d.ts.map +1 -0
  460. package/dist/render/rules-table.js +70 -0
  461. package/dist/render/rules-table.js.map +1 -0
  462. package/dist/render/sarif.js +4 -4
  463. package/dist/render/sarif.js.map +1 -1
  464. package/dist/render/semantic.js +3 -3
  465. package/dist/render/semantic.js.map +1 -1
  466. package/dist/render/severity-name.d.ts +6 -0
  467. package/dist/render/severity-name.d.ts.map +1 -0
  468. package/dist/render/severity-name.js +7 -0
  469. package/dist/render/severity-name.js.map +1 -0
  470. package/dist/render/text.d.ts +7 -2
  471. package/dist/render/text.d.ts.map +1 -1
  472. package/dist/render/text.js +15 -4
  473. package/dist/render/text.js.map +1 -1
  474. package/dist/resolve-genre.d.ts +1 -1
  475. package/dist/resolve-genre.d.ts.map +1 -1
  476. package/dist/resolve-genre.js +4 -1
  477. package/dist/resolve-genre.js.map +1 -1
  478. package/dist/rule-genres.d.ts +24 -0
  479. package/dist/rule-genres.d.ts.map +1 -0
  480. package/dist/rule-genres.js +11 -0
  481. package/dist/rule-genres.js.map +1 -0
  482. package/dist/rule-guide.d.ts +54 -0
  483. package/dist/rule-guide.d.ts.map +1 -0
  484. package/dist/rule-guide.js +81 -0
  485. package/dist/rule-guide.js.map +1 -0
  486. package/dist/rule-load.d.ts.map +1 -1
  487. package/dist/rule-load.js +87 -33
  488. package/dist/rule-load.js.map +1 -1
  489. package/dist/rule-options.d.ts +50 -0
  490. package/dist/rule-options.d.ts.map +1 -0
  491. package/dist/rule-options.js +106 -0
  492. package/dist/rule-options.js.map +1 -0
  493. package/dist/run.d.ts +13 -0
  494. package/dist/run.d.ts.map +1 -1
  495. package/dist/run.js +54 -10
  496. package/dist/run.js.map +1 -1
  497. package/dist/sentence-shape.d.ts.map +1 -1
  498. package/dist/sentence-shape.js +4 -4
  499. package/dist/sentence-shape.js.map +1 -1
  500. package/dist/setting-problems.d.ts +2 -1
  501. package/dist/setting-problems.d.ts.map +1 -1
  502. package/dist/setting-problems.js +6 -1
  503. package/dist/setting-problems.js.map +1 -1
  504. package/dist/span-cut.d.ts +6 -0
  505. package/dist/span-cut.d.ts.map +1 -0
  506. package/dist/span-cut.js +22 -0
  507. package/dist/span-cut.js.map +1 -0
  508. package/dist/structure/aside-depth.d.ts +21 -0
  509. package/dist/structure/aside-depth.d.ts.map +1 -0
  510. package/dist/structure/aside-depth.js +65 -0
  511. package/dist/structure/aside-depth.js.map +1 -0
  512. package/dist/structure/build.d.ts +5 -1
  513. package/dist/structure/build.d.ts.map +1 -1
  514. package/dist/structure/build.js +29 -17
  515. package/dist/structure/build.js.map +1 -1
  516. package/dist/structure/closed-pairs.d.ts +8 -0
  517. package/dist/structure/closed-pairs.d.ts.map +1 -0
  518. package/dist/structure/closed-pairs.js +22 -0
  519. package/dist/structure/closed-pairs.js.map +1 -0
  520. package/dist/structure/date-range.d.ts +21 -0
  521. package/dist/structure/date-range.d.ts.map +1 -0
  522. package/dist/structure/date-range.js +45 -0
  523. package/dist/structure/date-range.js.map +1 -0
  524. package/dist/structure/known-mentions.d.ts +18 -0
  525. package/dist/structure/known-mentions.d.ts.map +1 -0
  526. package/dist/structure/known-mentions.js +78 -0
  527. package/dist/structure/known-mentions.js.map +1 -0
  528. package/dist/structure/numbering.d.ts +1 -0
  529. package/dist/structure/numbering.d.ts.map +1 -1
  530. package/dist/structure/numbering.js +11 -6
  531. package/dist/structure/numbering.js.map +1 -1
  532. package/dist/structure/of.d.ts +3 -1
  533. package/dist/structure/of.d.ts.map +1 -1
  534. package/dist/structure/of.js +5 -1
  535. package/dist/structure/of.js.map +1 -1
  536. package/dist/structure/percent-sum.d.ts +16 -0
  537. package/dist/structure/percent-sum.d.ts.map +1 -0
  538. package/dist/structure/percent-sum.js +104 -0
  539. package/dist/structure/percent-sum.js.map +1 -0
  540. package/dist/structure/quoted-number.d.ts +8 -0
  541. package/dist/structure/quoted-number.d.ts.map +1 -0
  542. package/dist/structure/quoted-number.js +34 -0
  543. package/dist/structure/quoted-number.js.map +1 -0
  544. package/dist/structure/relative-find.d.ts.map +1 -1
  545. package/dist/structure/relative-find.js +34 -46
  546. package/dist/structure/relative-find.js.map +1 -1
  547. package/dist/structure/relative-resolve.d.ts.map +1 -1
  548. package/dist/structure/relative-resolve.js +76 -30
  549. package/dist/structure/relative-resolve.js.map +1 -1
  550. package/dist/structure/runs.d.ts +2 -0
  551. package/dist/structure/runs.d.ts.map +1 -1
  552. package/dist/structure/runs.js +2 -2
  553. package/dist/structure/runs.js.map +1 -1
  554. package/dist/structure/sexp.d.ts +1 -1
  555. package/dist/structure/sexp.d.ts.map +1 -1
  556. package/dist/structure/sexp.js +18 -6
  557. package/dist/structure/sexp.js.map +1 -1
  558. package/dist/structure/total.d.ts +3 -0
  559. package/dist/structure/total.d.ts.map +1 -1
  560. package/dist/structure/total.js +2 -2
  561. package/dist/structure/total.js.map +1 -1
  562. package/dist/structure/universal.d.ts +14 -2
  563. package/dist/structure/universal.d.ts.map +1 -1
  564. package/dist/structure/universal.js +17 -2
  565. package/dist/structure/universal.js.map +1 -1
  566. package/dist/structure/wrapped-tail.d.ts +14 -7
  567. package/dist/structure/wrapped-tail.d.ts.map +1 -1
  568. package/dist/structure/wrapped-tail.js +33 -8
  569. package/dist/structure/wrapped-tail.js.map +1 -1
  570. package/dist/style-load.d.ts +4 -0
  571. package/dist/style-load.d.ts.map +1 -0
  572. package/dist/style-load.js +28 -0
  573. package/dist/style-load.js.map +1 -0
  574. package/dist/style-parse.d.ts +19 -0
  575. package/dist/style-parse.d.ts.map +1 -0
  576. package/dist/style-parse.js +60 -0
  577. package/dist/style-parse.js.map +1 -0
  578. package/dist/subheading-line.d.ts +6 -0
  579. package/dist/subheading-line.d.ts.map +1 -0
  580. package/dist/subheading-line.js +57 -0
  581. package/dist/subheading-line.js.map +1 -0
  582. package/dist/template-syntax.d.ts +17 -0
  583. package/dist/template-syntax.d.ts.map +1 -0
  584. package/dist/template-syntax.js +140 -0
  585. package/dist/template-syntax.js.map +1 -0
  586. package/dist/text-above.d.ts +19 -0
  587. package/dist/text-above.d.ts.map +1 -0
  588. package/dist/text-above.js +43 -0
  589. package/dist/text-above.js.map +1 -0
  590. package/dist/text-figures.d.ts +10 -0
  591. package/dist/text-figures.d.ts.map +1 -0
  592. package/dist/text-figures.js +131 -0
  593. package/dist/text-figures.js.map +1 -0
  594. package/dist/trailing-aside.d.ts +2 -0
  595. package/dist/trailing-aside.d.ts.map +1 -0
  596. package/dist/trailing-aside.js +53 -0
  597. package/dist/trailing-aside.js.map +1 -0
  598. package/dist/tree-walk.d.ts +18 -0
  599. package/dist/tree-walk.d.ts.map +1 -0
  600. package/dist/tree-walk.js +45 -0
  601. package/dist/tree-walk.js.map +1 -0
  602. package/genres.yaml +26 -0
  603. package/package.json +5 -3
  604. package/reference-headings.yaml +17 -0
  605. package/rules/adverb-overuse.yaml +19 -0
  606. package/rules/agentless-passive.yaml +19 -0
  607. package/rules/agreement-slip.yaml +14 -1
  608. package/rules/ai-generated-composite.yaml +102 -0
  609. package/rules/ai-tell.yaml +23 -0
  610. package/rules/announced-count-mismatch.yaml +57 -0
  611. package/rules/announcing-opener.yaml +51 -0
  612. package/rules/assistant-residue.yaml +52 -0
  613. package/rules/bold-density.yaml +31 -0
  614. package/rules/broken-link.yaml +65 -0
  615. package/rules/closing-cliche.yaml +33 -0
  616. package/rules/colon-lead-in.yaml +59 -0
  617. package/rules/concrete-evidence-density.yaml +41 -0
  618. package/rules/contraction-consistency.yaml +18 -0
  619. package/rules/contrast-framing.yaml +57 -0
  620. package/rules/cushion-phrase-density.yaml +25 -0
  621. package/rules/dangling-figure-reference.yaml +61 -0
  622. package/rules/dangling-reference.yaml +53 -1
  623. package/rules/date-order.yaml +33 -1
  624. package/rules/date-range-reversed.yaml +46 -0
  625. package/rules/date-weekday-mismatch.yaml +17 -1
  626. package/rules/double-keigo.yaml +16 -0
  627. package/rules/doubled-punctuation.yaml +45 -0
  628. package/rules/doubled-word.yaml +17 -1
  629. package/rules/duplicate-definition.yaml +59 -1
  630. package/rules/emoji-density.yaml +25 -0
  631. package/rules/empty-conclusion.yaml +28 -0
  632. package/rules/empty-intensifier.yaml +19 -0
  633. package/rules/excessive-hedging.yaml +19 -0
  634. package/rules/expletive-construction.yaml +19 -0
  635. package/rules/heading-echo.yaml +31 -0
  636. package/rules/heading-level-skip.yaml +78 -0
  637. package/rules/hiragana-fukushi.yaml +16 -0
  638. package/rules/image-alt-text.yaml +54 -0
  639. package/rules/internal-jargon.yaml +21 -0
  640. package/rules/katakana-long-vowel.yaml +98 -0
  641. package/rules/kutoten-consistency.yaml +53 -0
  642. package/rules/latin-spacing.yaml +23 -4
  643. package/rules/max-kanji-continuous.yaml +16 -0
  644. package/rules/max-paragraph-length.yaml +33 -0
  645. package/rules/max-sentence-length.yaml +32 -0
  646. package/rules/ngram-repetition.yaml +29 -2
  647. package/rules/no-doubled-joshi.yaml +16 -0
  648. package/rules/no-em-dash.yaml +25 -0
  649. package/rules/no-mixed-desumasu.yaml +27 -2
  650. package/rules/no-nakaguro-parallel.yaml +20 -0
  651. package/rules/numbering-gap.yaml +53 -1
  652. package/rules/oxford-comma-consistency.yaml +18 -0
  653. package/rules/padded-intro.yaml +19 -0
  654. package/rules/paragraph-length-variance.yaml +49 -0
  655. package/rules/percent-sum-mismatch.yaml +58 -0
  656. package/rules/preamble-length.yaml +56 -0
  657. package/rules/preferred-term.yaml +27 -0
  658. package/rules/proper-noun-density.yaml +26 -0
  659. package/rules/repeated-conjunction.yaml +47 -0
  660. package/rules/repeated-sentence-head.yaml +23 -0
  661. package/rules/required-sections.yaml +49 -0
  662. package/rules/risk-disclosure.yaml +22 -0
  663. package/rules/rule-of-three.yaml +97 -0
  664. package/rules/sasete-itadaku.yaml +18 -0
  665. package/rules/section-length-uniformity.yaml +89 -0
  666. package/rules/sentence-initial-conjunction-run.yaml +18 -0
  667. package/rules/sentence-rhythm.yaml +25 -0
  668. package/rules/stock-transition.yaml +55 -0
  669. package/rules/stray-space.yaml +18 -0
  670. package/rules/taigen-dome-in-prose.yaml +19 -0
  671. package/rules/title-case-consistency.yaml +42 -0
  672. package/rules/total-mismatch.yaml +37 -1
  673. package/rules/unbalanced-bracket.yaml +56 -0
  674. package/rules/undefined-acronym.yaml +22 -0
  675. package/rules/unfilled-placeholder.yaml +50 -0
  676. package/rules/unqualified-superlative.yaml +19 -0
  677. package/rules/unsourced-number.yaml +16 -0
  678. package/rules/url-run-on.yaml +45 -0
  679. package/skills/chaff/SKILL.md +70 -0
  680. package/src/announced-count.ts +148 -0
  681. package/src/bare-url.ts +35 -0
  682. package/src/baseline.ts +17 -1
  683. package/src/body-section.ts +7 -0
  684. package/src/calendar-number.ts +18 -4
  685. package/src/cli-args.ts +6 -0
  686. package/src/cli-text.ts +8 -4
  687. package/src/cli.ts +37 -37
  688. package/src/commands/compare.ts +80 -0
  689. package/src/commands/eval.ts +19 -8
  690. package/src/commands/feedback.ts +12 -6
  691. package/src/commands/test.ts +2 -4
  692. package/src/commands/tree.ts +41 -5
  693. package/src/compare/atom.ts +33 -0
  694. package/src/compare/clock-time.ts +86 -0
  695. package/src/compare/extract.ts +78 -0
  696. package/src/compare/fact-text.ts +68 -0
  697. package/src/compare/markup-atoms.ts +29 -0
  698. package/src/compare/match.ts +105 -0
  699. package/src/compare/outcome.ts +70 -0
  700. package/src/compare/proper-nouns.ts +65 -0
  701. package/src/compare/render.ts +102 -0
  702. package/src/compare/spans.ts +17 -0
  703. package/src/compare/text-atoms.ts +95 -0
  704. package/src/compare/text.ts +120 -0
  705. package/src/compare/tree-atoms.ts +80 -0
  706. package/src/compare/written-names.ts +26 -0
  707. package/src/config/load.ts +21 -0
  708. package/src/config/option-problems.ts +70 -0
  709. package/src/config/read.ts +8 -0
  710. package/src/config/rule-problems.ts +12 -2
  711. package/src/config/style.ts +42 -0
  712. package/src/config/warnings.ts +13 -0
  713. package/src/config/write.ts +18 -4
  714. package/src/custom/bounded-match.ts +58 -0
  715. package/src/custom/load.ts +15 -0
  716. package/src/custom/parse.ts +274 -0
  717. package/src/custom/problems.ts +89 -0
  718. package/src/custom/regex-safety.ts +118 -0
  719. package/src/custom/token-pattern.ts +84 -0
  720. package/src/detect.ts +28 -2
  721. package/src/detectors/acronym-context.ts +16 -4
  722. package/src/detectors/ai-phrasing.ts +137 -0
  723. package/src/detectors/announced-count.ts +25 -0
  724. package/src/detectors/broken-link.ts +90 -0
  725. package/src/detectors/cited-name.ts +6 -5
  726. package/src/detectors/cited-title.ts +96 -0
  727. package/src/detectors/concrete-evidence.ts +3 -2
  728. package/src/detectors/contrast-frame.ts +54 -0
  729. package/src/detectors/custom.ts +89 -0
  730. package/src/detectors/dangling-figure.ts +22 -0
  731. package/src/detectors/doubled-punctuation.ts +49 -0
  732. package/src/detectors/doubled-word.ts +19 -4
  733. package/src/detectors/enumerated-runs.ts +13 -4
  734. package/src/detectors/gram-furniture.ts +30 -0
  735. package/src/detectors/gram-place.ts +9 -5
  736. package/src/detectors/gram-windows.ts +31 -0
  737. package/src/detectors/heading-case.ts +30 -2
  738. package/src/detectors/heading-code-words.ts +35 -0
  739. package/src/detectors/heading-echo.ts +8 -4
  740. package/src/detectors/heading-level-skip.ts +19 -0
  741. package/src/detectors/image-alt-text.ts +11 -0
  742. package/src/detectors/index.ts +43 -1
  743. package/src/detectors/kutoten-consistency.ts +96 -0
  744. package/src/detectors/lead-in.ts +3 -1
  745. package/src/detectors/lexicon-match.ts +9 -2
  746. package/src/detectors/list-item.ts +122 -0
  747. package/src/detectors/list-items.ts +163 -0
  748. package/src/detectors/list-lead-in.ts +33 -0
  749. package/src/detectors/list-sentence.ts +157 -0
  750. package/src/detectors/list-view.ts +157 -0
  751. package/src/detectors/long-vowel.ts +66 -0
  752. package/src/detectors/markup-finding.ts +24 -0
  753. package/src/detectors/name-numeral.ts +4 -2
  754. package/src/detectors/orthography.ts +23 -17
  755. package/src/detectors/oxford-comma.ts +178 -283
  756. package/src/detectors/place-run.ts +7 -4
  757. package/src/detectors/placeholder-text.ts +27 -0
  758. package/src/detectors/quote-around.ts +9 -0
  759. package/src/detectors/register.ts +37 -10
  760. package/src/detectors/roman-numeral.ts +3 -0
  761. package/src/detectors/sentence-ending.ts +14 -7
  762. package/src/detectors/sentence-length.ts +16 -5
  763. package/src/detectors/signals.ts +80 -46
  764. package/src/detectors/structure-tree.ts +45 -1
  765. package/src/detectors/structure.ts +3 -4
  766. package/src/detectors/superlative-name.ts +7 -4
  767. package/src/detectors/superlative-scope.ts +8 -3
  768. package/src/detectors/token-column.ts +149 -0
  769. package/src/detectors/unbalanced-bracket.ts +153 -0
  770. package/src/detectors/url-run-on.ts +27 -0
  771. package/src/document-sections.ts +46 -0
  772. package/src/document.ts +106 -138
  773. package/src/email-parts.ts +269 -0
  774. package/src/eval.ts +14 -4
  775. package/src/figure-references.ts +112 -0
  776. package/src/files.ts +5 -0
  777. package/src/heading-label.ts +55 -0
  778. package/src/in-page-nav.ts +48 -19
  779. package/src/joined-view.ts +1 -0
  780. package/src/levels.ts +14 -1
  781. package/src/line-paragraphs.ts +52 -9
  782. package/src/long-vowel.ts +99 -0
  783. package/src/markdown-node.ts +19 -0
  784. package/src/markdown-read.ts +44 -0
  785. package/src/markup.ts +210 -0
  786. package/src/mask.ts +8 -8
  787. package/src/number-name.ts +151 -24
  788. package/src/orthography.ts +10 -3
  789. package/src/page-furniture.ts +11 -2
  790. package/src/plain-source.ts +2 -1
  791. package/src/plugin.ts +101 -1
  792. package/src/profile/for-file.ts +3 -1
  793. package/src/quoted-span.ts +9 -3
  794. package/src/reasons.ts +9 -0
  795. package/src/reference-lists.ts +91 -0
  796. package/src/render/explain.ts +47 -13
  797. package/src/render/friendly.ts +20 -9
  798. package/src/render/options.ts +58 -0
  799. package/src/render/rules-json.ts +130 -14
  800. package/src/render/rules-table.ts +91 -0
  801. package/src/render/sarif.ts +4 -4
  802. package/src/render/semantic.ts +3 -3
  803. package/src/render/severity-name.ts +10 -0
  804. package/src/render/text.ts +21 -7
  805. package/src/resolve-genre.ts +4 -1
  806. package/src/rule-genres.ts +25 -0
  807. package/src/rule-guide.ts +135 -0
  808. package/src/rule-load.ts +91 -34
  809. package/src/rule-options.ts +131 -0
  810. package/src/run.ts +74 -11
  811. package/src/sentence-shape.ts +4 -5
  812. package/src/setting-problems.ts +7 -1
  813. package/src/span-cut.ts +28 -0
  814. package/src/structure/aside-depth.ts +67 -0
  815. package/src/structure/build.ts +38 -19
  816. package/src/structure/closed-pairs.ts +20 -0
  817. package/src/structure/date-range.ts +69 -0
  818. package/src/structure/known-mentions.ts +96 -0
  819. package/src/structure/numbering.ts +9 -5
  820. package/src/structure/of.ts +11 -3
  821. package/src/structure/percent-sum.ts +135 -0
  822. package/src/structure/quoted-number.ts +36 -0
  823. package/src/structure/relative-find.ts +34 -47
  824. package/src/structure/relative-resolve.ts +77 -30
  825. package/src/structure/runs.ts +2 -2
  826. package/src/structure/sexp.ts +17 -5
  827. package/src/structure/total.ts +2 -2
  828. package/src/structure/universal.ts +24 -4
  829. package/src/structure/wrapped-tail.ts +38 -13
  830. package/src/style-load.ts +28 -0
  831. package/src/style-parse.ts +77 -0
  832. package/src/subheading-line.ts +68 -0
  833. package/src/template-syntax.ts +164 -0
  834. package/src/text-above.ts +49 -0
  835. package/src/text-figures.ts +147 -0
  836. package/src/trailing-aside.ts +50 -0
  837. package/src/tree-walk.ts +48 -0
  838. package/styles/bunkacho.yaml +25 -0
  839. package/styles/ieice.yaml +29 -0
  840. package/styles/jis-z8301-2011.yaml +25 -0
@@ -26,3 +26,21 @@ how_to_fix:
26
26
  levels: { strict: 4, normal: 2, relaxed: 1 }
27
27
 
28
28
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
29
+
30
+ group: consistency
31
+ summary:
32
+ ja: 英語で、「don't」と「do not」のように短縮形を使う書き方と使わない書き方が混ざっている所
33
+ en: Contractions ("don't") and full forms ("do not") mixed in one document
34
+ example:
35
+ en:
36
+ before: |
37
+ We don't store your password. We can't read your messages. We won't share your data. We do not sell your address.
38
+ after: |
39
+ We don't store your password. We can't read your messages. We won't share your data. We don't sell your address.
40
+
41
+ not_flagged:
42
+ ja: 短縮形を使うかどうかは決めません。文書の中で少ないほうだけを指します。
43
+ en: Whether to use contractions is not decided; only the minority form in the document is pointed at.
44
+ level_meaning:
45
+ ja: 少ないほうの書き方が {limit} 箇所以下のとき指摘
46
+ en: reported when the minority form appears {limit} times or fewer
@@ -0,0 +1,57 @@
1
+ id: contrast-framing
2
+ layer: L2
3
+ status: experimental
4
+ how_to_find: contrast-framing
5
+ word_list: contrast-frame
6
+ # 打ち消し(it's not)と、それを返す語(it's、but)。後ろに返しが来たときだけ対比の枠になる。
7
+ extra_word_lists: [contrast-lead, contrast-turn]
8
+ uses: [pos]
9
+ severity: info
10
+
11
+ name:
12
+ ja: 対比の枠が多い
13
+ en: Too many contrast frames
14
+
15
+ why:
16
+ ja: 「単なる X ではなく Y」「X だけでなく Y も」は、1 つなら論点を整理します。重なると、誰も言っていない X を打ち消し続ける文章になります。生成文によく見られる癖として知られています。
17
+ en: '"It''s not X, it''s Y" and "not just X, but Y" sort out a point when used once. Piled up, the text keeps knocking down an X nobody said, a habit well known in generated text.'
18
+
19
+ message:
20
+ ja: 「{matched}」など、対比の枠が 1000 字あたり {density} 個あります({limit} 個まで)
21
+ en: '"{matched}" and other contrast frames: {density} per 1000 words (limit {limit})'
22
+
23
+ how_to_fix:
24
+ ja: 打ち消した側(X)を消して、言いたいこと(Y)だけを書いてください。
25
+ en: Drop the X you knocked down and say Y directly.
26
+
27
+ # 1000 語(日本語は 1000 字)あたりの数。
28
+ levels:
29
+ ja: { strict: 1, normal: 1.5, relaxed: 3 }
30
+ en: { strict: 2, normal: 3, relaxed: 6 }
31
+
32
+ use_for: [blog, business, legal, docs, academic, literature, speech]
33
+
34
+ group: ai-tells
35
+ summary:
36
+ ja: 「単なる X ではなく Y」「X だけでなく Y も」のような対比の枠が重なり、誰も言っていない X を打ち消し続けている所
37
+ en: 'Contrast frames piling up ("It''s not X, it''s Y", "not just X, but Y"), knocking down an X nobody said'
38
+ example:
39
+ ja:
40
+ pad: true
41
+ before: |
42
+ この仕組みは単なる道具ではなく、チームの文化です。速さだけでなく、安心も届けます。
43
+ after: |
44
+ この仕組みで、見積もりの作成が一件あたり十分短くなりました。
45
+ en:
46
+ pad: true
47
+ before: |
48
+ This tool is not just software, but a culture. It's not a feature. It's a promise.
49
+ after: |
50
+ This tool cut the time to draft a quote by ten minutes.
51
+
52
+ not_flagged:
53
+ ja: 一つだけの対比、打ち消しを返していない「単なる」(「単なる設定ミスです」)、「A ではなく B です」だけの文、続けて並べた打ち消し(「まだです。まだ試していません。」)は指しません。短い文書は測りません。
54
+ en: A single contrast, a denial nobody answers, and two denials in a row ("It's not ready. It's not tested.") are not reported. Short documents are not measured.
55
+ level_meaning:
56
+ ja: 1000 字あたり {limit} 個まで
57
+ en: up to {limit} per 1000 words
@@ -25,3 +25,28 @@ how_to_fix:
25
25
  levels: { strict: 2, normal: 5, relaxed: 10 }
26
26
 
27
27
  use_for: [business, legal, docs, academic, literature, speech]
28
+
29
+ group: wording
30
+ summary:
31
+ ja: 「恐れ入りますが」「念のため」のようなクッション言葉が多く、用件が埋もれている所
32
+ en: So many softeners ("sorry to bother", "just wanted to") that the request gets lost
33
+ example:
34
+ ja:
35
+ pad: true
36
+ before: |
37
+ お忙しいところ恐れ入りますが、念のためご確認をお願いします。差し支えなければ、取り急ぎご返信ください。
38
+ after: |
39
+ お忙しいところ恐れ入りますが、金曜までに見積もりの金額をご確認ください。
40
+ en:
41
+ pad: true
42
+ before: |
43
+ Sorry to bother you, but I just wanted to check the quote. If you don't mind, reply when you get a chance.
44
+ after: |
45
+ Could you check the quote by Friday? The total on page two changed.
46
+
47
+ not_flagged:
48
+ ja: クッション言葉が一つだけなら礼儀なので指しません。短い文書は測りません。
49
+ en: One softener is courtesy and is not reported. Short documents are not measured.
50
+ level_meaning:
51
+ ja: 1000 字あたり {limit} 個まで
52
+ en: up to {limit} per 1000 words
@@ -0,0 +1,61 @@
1
+ id: dangling-figure-reference
2
+ layer: L3
3
+ status: experimental
4
+ how_to_find: dangling-figure
5
+ severity: warning
6
+
7
+ name:
8
+ ja: 図や表の参照先が無い
9
+ en: Reference to a missing figure or table
10
+
11
+ why:
12
+ ja: 本文が「図3を参照」と書いているのに、図3がどこにも無いと、読み手は探し回ったうえで、図が抜けたのか番号がずれたのかを確かめることになります。図や表を消したり入れ替えたりしたあとに、本文の番号を直し忘れると起きます。行の頭に書いた番号(「図1 売上の推移」のようなキャプションや、「## 付録A」のような見出し)を図の置き場所とし、本文の番号がその中に無ければ指します。図・表・付録の種類ごとに、行の頭に一つも書いていない文書は見ません(図を別の紙に付けているかもしれないため)。
13
+ en: 'When the text says "see Figure 3" and there is no Figure 3, the reader searches for it and then has to work out whether the figure was dropped or the numbers shifted. It happens when a figure or a table is removed or reordered and the text is not updated. A number written at the start of a line (a caption such as "Figure 1: Sales by month", or a heading such as "## Appendix A") is where that figure is, and a number in the text that is none of them is pointed out. A kind (figures, tables, appendices) that the document never labels at the start of a line is not checked, because its figures may be in another file.'
14
+
15
+ message:
16
+ ja: 「{label}」を指していますが、この文書に{label}がありません
17
+ en: "{label} is referred to, but the document has no {label}"
18
+
19
+ how_to_fix:
20
+ ja: 番号がずれていないか確かめて、本文の番号を直すか、抜けた図や表を足してください。
21
+ en: Check whether the numbers shifted. Correct the number in the text, or add the missing figure or table.
22
+
23
+ levels: { strict: error, normal: warning, relaxed: info }
24
+
25
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
26
+
27
+ group: facts
28
+ summary:
29
+ ja: 本文が指す「図3」「表2」が、文書のどこにも無い所
30
+ en: A figure or table the text refers to that the document does not have
31
+ example:
32
+ ja:
33
+ before: |
34
+ 売上は図1のとおり伸び、費用は図3のとおり減った。
35
+
36
+ 図1 売上の推移
37
+
38
+ 図2 費用の推移
39
+ after: |
40
+ 売上は図1のとおり伸び、費用は図2のとおり減った。
41
+
42
+ 図1 売上の推移
43
+
44
+ 図2 費用の推移
45
+ en:
46
+ before: |
47
+ Sales rose (Figure 1) and costs fell (Figure 3).
48
+
49
+ Figure 1: Sales by month
50
+
51
+ Figure 2: Costs by month
52
+ after: |
53
+ Sales rose (Figure 1) and costs fell (Figure 2).
54
+
55
+ Figure 1: Sales by month
56
+
57
+ Figure 2: Costs by month
58
+
59
+ not_flagged:
60
+ ja: 図や表を行の頭に一つも書いていない文書、長い語の一部(地図3、一覧表2)、別の法令の別表(法別表第二)、図の数(図3枚)、コードの中は見ません。
61
+ en: 'A document that labels no figure or table at the start of a line, a figure of another document ("Figure 5 of the 2024 report"), and code are not checked.'
@@ -22,6 +22,58 @@ how_to_fix:
22
22
  en: Fix the number or remove the reference. If it points into another document, name that document so the reader knows where to look.
23
23
 
24
24
  # 何件あれば指摘するか。1 は「1 件でもあれば」。
25
- levels: { strict: 1, normal: 1, relaxed: 1 }
25
+ levels: { normal: error, relaxed: warning }
26
26
 
27
27
  use_for: [business, technical, blog, legal, docs, academic, literature, speech]
28
+
29
+ group: structure
30
+ summary:
31
+ ja: 「第5条に定める」と書いてあるのに、その第5条が文書に無い所
32
+ en: A reference such as "as set out in Article 5" to a provision the document does not have
33
+ example:
34
+ ja:
35
+ before: |
36
+ # 就業規則
37
+
38
+ ## 第1条(目的)
39
+
40
+ この規則は、働き方の決まりを定める。
41
+
42
+ ## 第2条(休日)
43
+
44
+ 休日は、第5条に定める勤務表による。
45
+ after: |
46
+ # 就業規則
47
+
48
+ ## 第1条(目的)
49
+
50
+ この規則は、働き方の決まりを定める。
51
+
52
+ ## 第2条(休日)
53
+
54
+ 休日は、第1条に定める決まりのほか、会社が別に定める勤務表による。
55
+ en:
56
+ before: |
57
+ # Staff rules
58
+
59
+ ## Article 1 (Purpose)
60
+
61
+ These rules set out how we work.
62
+
63
+ ## Article 2 (Holidays)
64
+
65
+ Holidays follow the rota set out in Article 5.
66
+ after: |
67
+ # Staff rules
68
+
69
+ ## Article 1 (Purpose)
70
+
71
+ These rules set out how we work.
72
+
73
+ ## Article 2 (Holidays)
74
+
75
+ Holidays follow the rota that the company publishes each month.
76
+
77
+ not_flagged:
78
+ ja: 「法第2条」のように、ほかの文書の条を指す参照は探しません。条で番号を振っていない文書では、条で数える参照を見ません。
79
+ en: References into another document ("Article 2 of the Act") are not looked up. A document that numbers none of its provisions as articles is not checked for article references.
@@ -21,6 +21,38 @@ how_to_fix:
21
21
  ja: 日付を確かめて、書き間違いなら直し、順番が違うなら並べ替えてください。
22
22
  en: Check the date. Correct it if it is a typo, or move the row if the order is wrong.
23
23
 
24
- levels: { strict: 1, normal: 1, relaxed: 1 }
24
+ levels: { strict: error, normal: warning, relaxed: info }
25
25
 
26
26
  use_for: [business, technical, blog, legal, docs, academic, literature, speech]
27
+
28
+ group: facts
29
+ summary:
30
+ ja: 旅程や予定表で、一つだけ日付の順番が前後している所
31
+ en: One date out of order in an itinerary or a schedule
32
+ example:
33
+ ja:
34
+ before: |
35
+ - 2026年4月1日 出発
36
+ - 2026年4月3日 視察
37
+ - 2026年3月5日 会議
38
+ - 2026年4月10日 帰国
39
+ after: |
40
+ - 2026年4月1日 出発
41
+ - 2026年4月3日 視察
42
+ - 2026年4月5日 会議
43
+ - 2026年4月10日 帰国
44
+ en:
45
+ before: |
46
+ - 1 April 2026: depart
47
+ - 3 April 2026: site visit
48
+ - 5 March 2026: meeting
49
+ - 10 April 2026: return
50
+ after: |
51
+ - 1 April 2026: depart
52
+ - 3 April 2026: site visit
53
+ - 5 April 2026: meeting
54
+ - 10 April 2026: return
55
+
56
+ not_flagged:
57
+ ja: その向きに沿う日付が半分以下の並びは、名前や版の順に並べた一覧として扱い、何も言いません。
58
+ en: A list where no more than half of the dates follow one direction is taken as sorted by something else, and nothing is said.
@@ -0,0 +1,46 @@
1
+ id: date-range-reversed
2
+ layer: L3
3
+ status: experimental
4
+ how_to_find: date-range-reversed
5
+ requires: [dates]
6
+ severity: warning
7
+
8
+ name:
9
+ ja: 期間の終わりが始まりより前
10
+ en: A period that ends before it starts
11
+
12
+ why:
13
+ ja: 「2026年4月1日〜2026年3月31日」のように、期間の終わりの日付が始まりより前だと、読み手はどちらの日付が正しいのかを問い合わせることになります。年を書き写し間違えたときや、日付を片方だけ直したときに起きます。二つの日付の間が範囲の記号(〜、–)だけのときと、「から」でつなぎ終わりの日付のあとに「まで」が続くときを期間として比べます。年の無い期間(12月28日〜1月4日)は年をまたぐかもしれないので比べません。
14
+ en: 'When a period such as "5 April 2026 – 2 April 2026" ends before it starts, the reader has to ask which date is right. It happens when a year is copied wrong, or when only one of the two dates is changed. Two dates are read as a period when only a range mark (–, —) or a word such as "through" or "until" stands between them. A period without a year ("28 December – 4 January") may run into the next year and is not compared.'
15
+
16
+ message:
17
+ ja: 期間「{period}」の終わりが始まりより前です
18
+ en: 'The period "{period}" ends before it starts'
19
+
20
+ how_to_fix:
21
+ ja: 始まりと終わりの日付を確かめて、書き間違えたほうを直してください。
22
+ en: Check both dates and correct the one that is wrong.
23
+
24
+ levels: { strict: error, normal: warning, relaxed: info }
25
+
26
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
27
+
28
+ group: facts
29
+ summary:
30
+ ja: 「4月1日〜3月31日」のように、期間の終わりが始まりより前の所
31
+ en: A period whose end date comes before its start date
32
+ example:
33
+ ja:
34
+ before: |
35
+ 申し込みの期間は2026年4月1日〜2026年3月31日です。
36
+ after: |
37
+ 申し込みの期間は2026年4月1日〜2027年3月31日です。
38
+ en:
39
+ before: |
40
+ Applications are open 1 April 2026 – 31 March 2026.
41
+ after: |
42
+ Applications are open 1 April 2026 – 31 March 2027.
43
+
44
+ not_flagged:
45
+ ja: 年の無い期間(12月28日〜1月4日)、「から」だけで「まで」の無いもの(10日から3日に変更)、日付の間に言葉のあるものは比べません。
46
+ en: 'A period without a year, "from … to …" (it may move a date rather than span a period), and two dates with words between them are not compared.'
@@ -21,6 +21,22 @@ how_to_fix:
21
21
  ja: 日付と曜日のどちらが正しいかを確かめて、片方を直してください。
22
22
  en: Check which is right, the date or the weekday, and correct the other.
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: facts
29
+ summary:
30
+ ja: 「2026年10月1日(金)」のように、日付と曜日が暦と合っていない所
31
+ en: A date and its weekday that disagree, such as "Friday, 1 October 2026"
32
+ example:
33
+ ja:
34
+ before: 次の会議は 2026年10月1日(金)です。
35
+ after: 次の会議は 2026年10月1日(木)です。
36
+ en:
37
+ before: The next meeting is on Friday, 1 October 2026.
38
+ after: The next meeting is on Thursday, 1 October 2026.
39
+
40
+ not_flagged:
41
+ ja: 年を書いていない日付は、どの年か決まらないので暦と照らしません。
42
+ en: Dates without a year are not checked, since the year is unknown.
@@ -26,3 +26,19 @@ how_to_fix:
26
26
  levels: { strict: 1, normal: 1, relaxed: 2 }
27
27
 
28
28
  use_for: [business, legal, docs, academic, literature, speech]
29
+
30
+ group: wording
31
+ summary:
32
+ ja: 「おっしゃられる」のように、同じ種類の敬語を二重にかけた所
33
+ en: A Japanese verb with the same kind of honorific applied twice
34
+ example:
35
+ ja:
36
+ before: 部長がおっしゃられたとおり、来週から始めます。
37
+ after: 部長がおっしゃったとおり、来週から始めます。
38
+
39
+ not_flagged:
40
+ ja: 一覧にある形だけを見ます。一覧にない形は、二重敬語でも指しません。
41
+ en: Only the forms on chaff's list are checked; a doubled honorific not on the list is not reported.
42
+ level_meaning:
43
+ ja: 当てはまる形が {limit} 箇所あれば指摘
44
+ en: reported once there are {limit}
@@ -0,0 +1,45 @@
1
+ id: doubled-punctuation
2
+ layer: L1
3
+ status: experimental
4
+ how_to_find: doubled-punctuation
5
+ severity: warning
6
+
7
+ name:
8
+ ja: 句読点が重なっている
9
+ en: Doubled punctuation
10
+
11
+ why:
12
+ ja: 「。。」「、、」「、。」のように句読点が二つ並ぶのは、打ち直しや貼り付けで残った印です。読み手はそこで止まり、急いで書いた文書に見えます。同じ印を三つ以上並べたもの(「...」「。。。」)はわざと伸ばした書き方なので数えません。「e.g.,」「etc.;」のような略語の点の後ろの読点、「、.NET」のように次の語の頭の点、「1..10」「../」のような範囲や道のり、コードと URL も数えません。「!!」「??」は文体の選び方なので見ません。
13
+ en: Two punctuation marks side by side ("..", ",,", "i.e.,,") are left over from an edit or a paste. The reader stops there, and the document looks rushed. Three or more of the same mark ("...") are drawn out on purpose and are not counted, nor is the comma or semicolon after an abbreviation's period ("e.g.,", "etc.;"), a period that starts the next word (".NET"), a range or path ("1..10", "../"), code or a URL. "!!" and "??" are a matter of style and are not checked.
14
+
15
+ message:
16
+ ja: 「{marks}」と句読点が重なっています
17
+ en: 'Punctuation is doubled: "{marks}"'
18
+
19
+ how_to_fix:
20
+ ja: 余分な印を消してください。
21
+ en: Delete the extra mark.
22
+
23
+ levels: { strict: error, normal: warning, relaxed: info }
24
+
25
+ use_for: [business, technical, blog, legal, docs, academic, literature, speech]
26
+
27
+ group: slips
28
+ summary:
29
+ ja: 「。。」「、。」のように、句読点が二つ並んだ所
30
+ en: Two punctuation marks side by side, as ",," or ".."
31
+ example:
32
+ ja:
33
+ before: |
34
+ 資料を送ります。。明日には届きます。
35
+ after: |
36
+ 資料を送ります。明日には届きます。
37
+ en:
38
+ before: |
39
+ We will send the file today,, as agreed.
40
+ after: |
41
+ We will send the file today, as agreed.
42
+
43
+ not_flagged:
44
+ ja: 「...」「。。。」のように三つ以上並べたもの、「e.g.,」「etc.;」のような略語の後ろ、「1..10」「../」のような範囲と道のり、「!!」「??」とコロンは指しません。
45
+ en: Three or more of one mark ("...", "。。。"), the mark after an abbreviation ("e.g.,", "etc.;"), ranges and paths ("1..10", "../"), "!!", "??" and colons are not reported.
@@ -22,6 +22,22 @@ how_to_fix:
22
22
  ja: 余分なほうを消してください。書き換えの途中なら、残したい言い方に揃えてください。
23
23
  en: Delete the extra word. If a rewrite was half done ("our the platform"), keep the wording you meant.
24
24
 
25
- levels: { strict: 1, normal: 1, relaxed: 1 }
25
+ levels: { strict: error, normal: warning, relaxed: info }
26
26
 
27
27
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
28
+
29
+ group: slips
30
+ summary:
31
+ ja: 「資料をを」「the the」のように、同じ語が続けて二度書かれている所
32
+ en: The same word written twice in a row, as in "the the"
33
+ example:
34
+ ja:
35
+ before: 明日、資料をを送ります。
36
+ after: 明日、資料を送ります。
37
+ en:
38
+ before: We will send the the file tomorrow.
39
+ after: We will send the file tomorrow.
40
+
41
+ not_flagged:
42
+ ja: 品詞の違う同じ語と、重ねて強める書き方(「そうそう」「一つ一つ」「very very」)は指しません。英語で文法が許す重なり(had had、that that)も指しません。
43
+ en: Repeats that grammar allows ("had had", "that that"), repeats for emphasis ("very very"), and the same word in two different parts of speech are not reported.
@@ -21,6 +21,64 @@ how_to_fix:
21
21
  ja: 定義を一か所にまとめ、もう一方は「第2条に定める{term}」のように参照にしてください。意図して意味を変えているなら、別の語にします。
22
22
  en: Keep one definition and refer to it from the other place. If the meaning changes on purpose, use a different term.
23
23
 
24
- levels: { strict: 1, normal: 1, relaxed: 1 }
24
+ # chaff explain と規則の一覧には指摘が無いので、{term} をこう読ませる。
25
+ placeholders:
26
+ term:
27
+ ja: 〇〇
28
+ en: the term
29
+
30
+ levels: { strict: error, normal: warning, relaxed: info }
25
31
 
26
32
  use_for: [business, technical, blog, legal, docs, academic, literature, speech]
33
+
34
+ group: structure
35
+ summary:
36
+ ja: 同じ語を、文書の二か所で定義している所
37
+ en: The same term defined in two places in one document
38
+ example:
39
+ ja:
40
+ before: |
41
+ # 利用規約
42
+
43
+ ## 第1条(定義)
44
+
45
+ 「本サービス」とは、当社が提供する予約の仕組みをいう。
46
+
47
+ ## 第2条(利用)
48
+
49
+ 「本サービス」とは、当社が運営する予約のサイトをいう。利用者は、本サービスを無料で使える。
50
+ after: |
51
+ # 利用規約
52
+
53
+ ## 第1条(定義)
54
+
55
+ 「本サービス」とは、当社が運営する予約のサイトをいう。
56
+
57
+ ## 第2条(利用)
58
+
59
+ 利用者は、本サービスを無料で使える。
60
+ en:
61
+ before: |
62
+ # Terms of use
63
+
64
+ ## 1. Definitions
65
+
66
+ "Service" means the booking system we provide.
67
+
68
+ ## 2. Use
69
+
70
+ "Service" means the booking website we run. Users may use the Service free of charge.
71
+ after: |
72
+ # Terms of use
73
+
74
+ ## 1. Definitions
75
+
76
+ "Service" means the booking website we run.
77
+
78
+ ## 2. Use
79
+
80
+ Users may use the Service free of charge.
81
+
82
+ not_flagged:
83
+ ja: 二つの定義が食い違っているかは決めません。二つ目を指すだけです。語を名前にした見出しは定義に数えません。
84
+ en: Whether the two definitions conflict is not decided; only the second is pointed at. A heading that names the term is not a definition.
@@ -24,3 +24,28 @@ how_to_fix:
24
24
  levels: { strict: 3, normal: 8, relaxed: 20 }
25
25
 
26
26
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
27
+
28
+ group: readability
29
+ summary:
30
+ ja: 絵文字が多すぎて、飾りのほうが目立つ所
31
+ en: So many emoji that the decoration drowns the text
32
+ example:
33
+ ja:
34
+ pad: true
35
+ before: |
36
+ 新機能が出ました🎉🎉 すぐに試せます🚀🔥 感想をお待ちしています🙏✨💬
37
+ after: |
38
+ 新機能が出ました🎉 すぐに試せます。感想をお待ちしています。
39
+ en:
40
+ pad: true
41
+ before: |
42
+ The new feature is live 🎉 Try it today 🚀 We would love your feedback 🙏✨
43
+ after: |
44
+ The new feature is live 🎉 Try it today, and tell us what you think.
45
+
46
+ not_flagged:
47
+ ja: 短い文書(日本語 500 字、英語 200 語より短いもの)は測りません。
48
+ en: Documents under 200 words are not measured.
49
+ level_meaning:
50
+ ja: 1000 字あたり {limit} 個まで
51
+ en: up to {limit} per 1000 words
@@ -37,3 +37,31 @@ levels:
37
37
 
38
38
  # メール・議事録・プレスリリースの結びは挨拶か連絡先で、判断を書く所ではない。
39
39
  use_for: [blog, business/report, business/proposal]
40
+
41
+ group: wording
42
+ summary:
43
+ ja: 本文をなぞるだけで、読み手に何も残さない結び(AI に読ませる検査)
44
+ en: A conclusion that only restates the body and leaves the reader nothing (checked by an AI)
45
+ example:
46
+ ja:
47
+ before: |
48
+ ## まとめ
49
+
50
+ この記事では、ビルドを速くする方法を紹介しました。ビルドを速くすることは大切です。
51
+ after: |
52
+ ## まとめ
53
+
54
+ 設定を一行変えるだけで、ビルドが二倍速くなりました。次は、テストを並列で動かします。
55
+ en:
56
+ before: |
57
+ ## Conclusion
58
+
59
+ This article described how to make the build faster. A fast build is important.
60
+ after: |
61
+ ## Conclusion
62
+
63
+ One line of settings made the build twice as fast. Next, we will run the tests in parallel.
64
+
65
+ not_flagged:
66
+ ja: 機械では決めません。chaff test で、最後の節だけを AI が読みます。
67
+ en: No machine decides this. chaff test has an AI read the last section only.
@@ -28,3 +28,22 @@ levels:
28
28
  relaxed: 3
29
29
 
30
30
  use_for: [blog, business, technical, legal, docs, academic, literature, speech]
31
+
32
+ group: wording
33
+ summary:
34
+ ja: 「非常に重要」「言うまでもなく」のように、何が大事かを言わずに強めるだけの言い方
35
+ en: Phrases such as "extremely important" that add weight without saying what matters
36
+ example:
37
+ ja:
38
+ before: 期限を守ることは非常に重要です。
39
+ after: 期限に遅れると、先方の検収が翌月に回り、入金が一か月遅れます。
40
+ en:
41
+ before: It is important to note that the deadline is Friday.
42
+ after: The deadline is Friday; a late delivery pushes payment into next month.
43
+
44
+ not_flagged:
45
+ ja: 一覧にある言い回しだけを見ます。「重要です」と書いたあとに理由が続くかどうかは読みません。
46
+ en: Only the phrases on chaff's list are checked; whether a reason follows is not read.
47
+ level_meaning:
48
+ ja: 当てはまる言い回しが {limit} 箇所あれば指摘
49
+ en: reported once there are {limit}
@@ -35,3 +35,22 @@ how_to_fix:
35
35
  levels: { strict: 3, normal: 6, relaxed: 12 }
36
36
 
37
37
  use_for: [business, blog, technical, legal, docs, academic, literature, speech]
38
+
39
+ group: wording
40
+ summary:
41
+ ja: 「〜の可能性があるかもしれません」のように、逃げの表現を重ねて、何が言いたいのか分からない所
42
+ en: Hedges piled up ("it may perhaps be possible") until nobody is saying anything
43
+ example:
44
+ ja:
45
+ before: 納期は遅れる可能性があるかもしれません。
46
+ after: 部品の入荷が来週にずれたため、納期は三日遅れます。
47
+ en:
48
+ before: It may be that the launch could perhaps slip.
49
+ after: The launch will slip by three days, because the parts arrive next week.
50
+
51
+ not_flagged:
52
+ ja: 逃げの表現が一つだけなら慎重さなので指しません。引用の中の逃げは、書き手ではなく話し手のものなので数えません。
53
+ en: A single hedge is caution and is not reported. A hedge inside a quotation is the speaker's, not the writer's, and is not counted.
54
+ level_meaning:
55
+ ja: 1000 語あたり {limit} 個まで(一文に重ねた逃げは、文書の長さによらず指摘)
56
+ en: up to {limit} per 1000 words (hedges stacked in one sentence are reported whatever the length)
@@ -25,3 +25,22 @@ how_to_fix:
25
25
  levels: { strict: 1, normal: 3, relaxed: 6 }
26
26
 
27
27
  use_for: [blog, business, legal, docs, academic, literature, speech]
28
+
29
+ group: readability
30
+ summary:
31
+ ja: 英語で、There is や It is ... that で主語を後ろへ押しやった文が多い所
32
+ en: Many sentences that open with "There is" or "It is ... that", pushing the subject to the back
33
+ example:
34
+ en:
35
+ config: { rules: { expletive-construction: strict } }
36
+ before: |
37
+ There is a meeting on Friday to review the budget. It is the finance team that will lead it.
38
+ after: |
39
+ The team meets on Friday to review the budget. The finance team will lead it.
40
+
41
+ not_flagged:
42
+ ja: 「it is raining」のように that 節を伴わない It is は数えません。
43
+ en: '"It is" without a that-clause ("it is raining") is not counted.'
44
+ level_meaning:
45
+ ja: この形の文 {limit} 回まで
46
+ en: up to {limit} such sentences