chaffjs 0.35.0 → 0.37.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 (823) hide show
  1. package/README.ja.md +12 -0
  2. package/README.md +15 -0
  3. package/dist/announced-count.d.ts +2 -0
  4. package/dist/announced-count.d.ts.map +1 -1
  5. package/dist/announced-count.js +29 -7
  6. package/dist/announced-count.js.map +1 -1
  7. package/dist/chronology-rows.d.ts +9 -0
  8. package/dist/chronology-rows.d.ts.map +1 -0
  9. package/dist/chronology-rows.js +79 -0
  10. package/dist/chronology-rows.js.map +1 -0
  11. package/dist/company-name-run.d.ts +8 -0
  12. package/dist/company-name-run.d.ts.map +1 -0
  13. package/dist/company-name-run.js +30 -0
  14. package/dist/company-name-run.js.map +1 -0
  15. package/dist/compound-head.d.ts +7 -0
  16. package/dist/compound-head.d.ts.map +1 -0
  17. package/dist/compound-head.js +19 -0
  18. package/dist/compound-head.js.map +1 -0
  19. package/dist/date-format.d.ts +8 -3
  20. package/dist/date-format.d.ts.map +1 -1
  21. package/dist/date-format.js +36 -3
  22. package/dist/date-format.js.map +1 -1
  23. package/dist/derived/count-per-period.d.ts +23 -0
  24. package/dist/derived/count-per-period.d.ts.map +1 -0
  25. package/dist/derived/count-per-period.js +14 -0
  26. package/dist/derived/count-per-period.js.map +1 -0
  27. package/dist/detectors/acronym-context.d.ts +4 -0
  28. package/dist/detectors/acronym-context.d.ts.map +1 -1
  29. package/dist/detectors/acronym-context.js +29 -1
  30. package/dist/detectors/acronym-context.js.map +1 -1
  31. package/dist/detectors/acronym-expansion.d.ts +5 -1
  32. package/dist/detectors/acronym-expansion.d.ts.map +1 -1
  33. package/dist/detectors/acronym-expansion.js +42 -3
  34. package/dist/detectors/acronym-expansion.js.map +1 -1
  35. package/dist/detectors/acronym-known.d.ts +19 -0
  36. package/dist/detectors/acronym-known.d.ts.map +1 -0
  37. package/dist/detectors/acronym-known.js +32 -0
  38. package/dist/detectors/acronym-known.js.map +1 -0
  39. package/dist/detectors/acronym-link.d.ts +19 -0
  40. package/dist/detectors/acronym-link.d.ts.map +1 -0
  41. package/dist/detectors/acronym-link.js +65 -0
  42. package/dist/detectors/acronym-link.js.map +1 -0
  43. package/dist/detectors/acronym-mention.d.ts +5 -0
  44. package/dist/detectors/acronym-mention.d.ts.map +1 -0
  45. package/dist/detectors/acronym-mention.js +34 -0
  46. package/dist/detectors/acronym-mention.js.map +1 -0
  47. package/dist/detectors/acronym-name.d.ts +8 -1
  48. package/dist/detectors/acronym-name.d.ts.map +1 -1
  49. package/dist/detectors/acronym-name.js +25 -6
  50. package/dist/detectors/acronym-name.js.map +1 -1
  51. package/dist/detectors/addressee-edge.d.ts +13 -0
  52. package/dist/detectors/addressee-edge.d.ts.map +1 -0
  53. package/dist/detectors/addressee-edge.js +13 -0
  54. package/dist/detectors/addressee-edge.js.map +1 -0
  55. package/dist/detectors/addressee-title-edge.d.ts +21 -0
  56. package/dist/detectors/addressee-title-edge.d.ts.map +1 -0
  57. package/dist/detectors/addressee-title-edge.js +22 -0
  58. package/dist/detectors/addressee-title-edge.js.map +1 -0
  59. package/dist/detectors/announced-count.d.ts.map +1 -1
  60. package/dist/detectors/announced-count.js +1 -0
  61. package/dist/detectors/announced-count.js.map +1 -1
  62. package/dist/detectors/bare-comparative.d.ts +4 -0
  63. package/dist/detectors/bare-comparative.d.ts.map +1 -1
  64. package/dist/detectors/bare-comparative.js +28 -3
  65. package/dist/detectors/bare-comparative.js.map +1 -1
  66. package/dist/detectors/blank-structure.d.ts +7 -1
  67. package/dist/detectors/blank-structure.d.ts.map +1 -1
  68. package/dist/detectors/blank-structure.js +13 -8
  69. package/dist/detectors/blank-structure.js.map +1 -1
  70. package/dist/detectors/bracket-specified.d.ts +6 -0
  71. package/dist/detectors/bracket-specified.d.ts.map +1 -0
  72. package/dist/detectors/bracket-specified.js +23 -0
  73. package/dist/detectors/bracket-specified.js.map +1 -0
  74. package/dist/detectors/broken-link.d.ts +6 -0
  75. package/dist/detectors/broken-link.d.ts.map +1 -1
  76. package/dist/detectors/broken-link.js +23 -2
  77. package/dist/detectors/broken-link.js.map +1 -1
  78. package/dist/detectors/capitalised-term.d.ts +4 -0
  79. package/dist/detectors/capitalised-term.d.ts.map +1 -1
  80. package/dist/detectors/capitalised-term.js +18 -1
  81. package/dist/detectors/capitalised-term.js.map +1 -1
  82. package/dist/detectors/caps-caption.d.ts +17 -6
  83. package/dist/detectors/caps-caption.d.ts.map +1 -1
  84. package/dist/detectors/caps-caption.js +65 -0
  85. package/dist/detectors/caps-caption.js.map +1 -1
  86. package/dist/detectors/caps-phrase.d.ts +6 -0
  87. package/dist/detectors/caps-phrase.d.ts.map +1 -0
  88. package/dist/detectors/caps-phrase.js +16 -0
  89. package/dist/detectors/caps-phrase.js.map +1 -0
  90. package/dist/detectors/char-shape.d.ts +1 -0
  91. package/dist/detectors/char-shape.d.ts.map +1 -1
  92. package/dist/detectors/char-shape.js +56 -20
  93. package/dist/detectors/char-shape.js.map +1 -1
  94. package/dist/detectors/citation-sentence.d.ts +8 -0
  95. package/dist/detectors/citation-sentence.d.ts.map +1 -0
  96. package/dist/detectors/citation-sentence.js +40 -0
  97. package/dist/detectors/citation-sentence.js.map +1 -0
  98. package/dist/detectors/cited-title.d.ts +3 -2
  99. package/dist/detectors/cited-title.d.ts.map +1 -1
  100. package/dist/detectors/cited-title.js +14 -3
  101. package/dist/detectors/cited-title.js.map +1 -1
  102. package/dist/detectors/contraction-mention.d.ts +3 -0
  103. package/dist/detectors/contraction-mention.d.ts.map +1 -0
  104. package/dist/detectors/contraction-mention.js +22 -0
  105. package/dist/detectors/contraction-mention.js.map +1 -0
  106. package/dist/detectors/counter-edge.d.ts +2 -1
  107. package/dist/detectors/counter-edge.d.ts.map +1 -1
  108. package/dist/detectors/counter-edge.js +17 -2
  109. package/dist/detectors/counter-edge.js.map +1 -1
  110. package/dist/detectors/dash-break.d.ts +7 -0
  111. package/dist/detectors/dash-break.d.ts.map +1 -0
  112. package/dist/detectors/dash-break.js +30 -0
  113. package/dist/detectors/dash-break.js.map +1 -0
  114. package/dist/detectors/date-any-year.d.ts +7 -3
  115. package/dist/detectors/date-any-year.d.ts.map +1 -1
  116. package/dist/detectors/date-any-year.js +30 -8
  117. package/dist/detectors/date-any-year.js.map +1 -1
  118. package/dist/detectors/date-format.d.ts.map +1 -1
  119. package/dist/detectors/date-format.js +2 -1
  120. package/dist/detectors/date-format.js.map +1 -1
  121. package/dist/detectors/date-year.d.ts +9 -3
  122. package/dist/detectors/date-year.d.ts.map +1 -1
  123. package/dist/detectors/date-year.js +45 -9
  124. package/dist/detectors/date-year.js.map +1 -1
  125. package/dist/detectors/deadline-unit.d.ts +20 -0
  126. package/dist/detectors/deadline-unit.d.ts.map +1 -0
  127. package/dist/detectors/deadline-unit.js +19 -0
  128. package/dist/detectors/deadline-unit.js.map +1 -0
  129. package/dist/detectors/defined-term-form.d.ts.map +1 -1
  130. package/dist/detectors/defined-term-form.js +33 -7
  131. package/dist/detectors/defined-term-form.js.map +1 -1
  132. package/dist/detectors/definition-use.d.ts.map +1 -1
  133. package/dist/detectors/definition-use.js +14 -6
  134. package/dist/detectors/definition-use.js.map +1 -1
  135. package/dist/detectors/derived-numbers.d.ts.map +1 -1
  136. package/dist/detectors/derived-numbers.js +17 -4
  137. package/dist/detectors/derived-numbers.js.map +1 -1
  138. package/dist/detectors/document-shape.d.ts +5 -0
  139. package/dist/detectors/document-shape.d.ts.map +1 -1
  140. package/dist/detectors/document-shape.js +15 -1
  141. package/dist/detectors/document-shape.js.map +1 -1
  142. package/dist/detectors/doubled-across-aside.d.ts +9 -0
  143. package/dist/detectors/doubled-across-aside.d.ts.map +1 -0
  144. package/dist/detectors/doubled-across-aside.js +27 -0
  145. package/dist/detectors/doubled-across-aside.js.map +1 -0
  146. package/dist/detectors/doubled-punctuation.d.ts +3 -3
  147. package/dist/detectors/doubled-punctuation.d.ts.map +1 -1
  148. package/dist/detectors/doubled-punctuation.js +23 -4
  149. package/dist/detectors/doubled-punctuation.js.map +1 -1
  150. package/dist/detectors/doubled-word.d.ts.map +1 -1
  151. package/dist/detectors/doubled-word.js +2 -1
  152. package/dist/detectors/doubled-word.js.map +1 -1
  153. package/dist/detectors/duplicate-heading.d.ts +1 -0
  154. package/dist/detectors/duplicate-heading.d.ts.map +1 -1
  155. package/dist/detectors/duplicate-heading.js +25 -3
  156. package/dist/detectors/duplicate-heading.js.map +1 -1
  157. package/dist/detectors/ellipsis.d.ts.map +1 -1
  158. package/dist/detectors/ellipsis.js +13 -1
  159. package/dist/detectors/ellipsis.js.map +1 -1
  160. package/dist/detectors/email-letter.d.ts +40 -3
  161. package/dist/detectors/email-letter.d.ts.map +1 -1
  162. package/dist/detectors/email-letter.js +110 -17
  163. package/dist/detectors/email-letter.js.map +1 -1
  164. package/dist/detectors/field-label.d.ts +7 -0
  165. package/dist/detectors/field-label.d.ts.map +1 -0
  166. package/dist/detectors/field-label.js +23 -0
  167. package/dist/detectors/field-label.js.map +1 -0
  168. package/dist/detectors/footnote-mismatch.d.ts +6 -1
  169. package/dist/detectors/footnote-mismatch.d.ts.map +1 -1
  170. package/dist/detectors/footnote-mismatch.js +28 -7
  171. package/dist/detectors/footnote-mismatch.js.map +1 -1
  172. package/dist/detectors/fullwidth-alnum.d.ts.map +1 -1
  173. package/dist/detectors/fullwidth-alnum.js +7 -1
  174. package/dist/detectors/fullwidth-alnum.js.map +1 -1
  175. package/dist/detectors/graded-step.d.ts +20 -0
  176. package/dist/detectors/graded-step.d.ts.map +1 -0
  177. package/dist/detectors/graded-step.js +33 -0
  178. package/dist/detectors/graded-step.js.map +1 -0
  179. package/dist/detectors/gram-openers.d.ts +9 -0
  180. package/dist/detectors/gram-openers.d.ts.map +1 -0
  181. package/dist/detectors/gram-openers.js +40 -0
  182. package/dist/detectors/gram-openers.js.map +1 -0
  183. package/dist/detectors/gram-place.d.ts +3 -1
  184. package/dist/detectors/gram-place.d.ts.map +1 -1
  185. package/dist/detectors/gram-place.js +8 -0
  186. package/dist/detectors/gram-place.js.map +1 -1
  187. package/dist/detectors/gram-predicate.d.ts.map +1 -1
  188. package/dist/detectors/gram-predicate.js +37 -3
  189. package/dist/detectors/gram-predicate.js.map +1 -1
  190. package/dist/detectors/heading-echo.d.ts.map +1 -1
  191. package/dist/detectors/heading-echo.js +28 -2
  192. package/dist/detectors/heading-echo.js.map +1 -1
  193. package/dist/detectors/heading-record-rhythm.d.ts +9 -0
  194. package/dist/detectors/heading-record-rhythm.d.ts.map +1 -0
  195. package/dist/detectors/heading-record-rhythm.js +57 -0
  196. package/dist/detectors/heading-record-rhythm.js.map +1 -0
  197. package/dist/detectors/ime-residue.d.ts +1 -1
  198. package/dist/detectors/ime-residue.d.ts.map +1 -1
  199. package/dist/detectors/ime-residue.js +4 -3
  200. package/dist/detectors/ime-residue.js.map +1 -1
  201. package/dist/detectors/kanji-compound-slip.d.ts +3 -0
  202. package/dist/detectors/kanji-compound-slip.d.ts.map +1 -0
  203. package/dist/detectors/kanji-compound-slip.js +50 -0
  204. package/dist/detectors/kanji-compound-slip.js.map +1 -0
  205. package/dist/detectors/kutoten-consistency.d.ts +10 -2
  206. package/dist/detectors/kutoten-consistency.d.ts.map +1 -1
  207. package/dist/detectors/kutoten-consistency.js +83 -12
  208. package/dist/detectors/kutoten-consistency.js.map +1 -1
  209. package/dist/detectors/lexicon.d.ts.map +1 -1
  210. package/dist/detectors/lexicon.js +13 -4
  211. package/dist/detectors/lexicon.js.map +1 -1
  212. package/dist/detectors/link-shape.d.ts.map +1 -1
  213. package/dist/detectors/link-shape.js +9 -3
  214. package/dist/detectors/link-shape.js.map +1 -1
  215. package/dist/detectors/list-item-ending.d.ts +18 -0
  216. package/dist/detectors/list-item-ending.d.ts.map +1 -0
  217. package/dist/detectors/list-item-ending.js +35 -0
  218. package/dist/detectors/list-item-ending.js.map +1 -0
  219. package/dist/detectors/list-parallel.d.ts +18 -5
  220. package/dist/detectors/list-parallel.d.ts.map +1 -1
  221. package/dist/detectors/list-parallel.js +116 -36
  222. package/dist/detectors/list-parallel.js.map +1 -1
  223. package/dist/detectors/list-sentence.d.ts +4 -0
  224. package/dist/detectors/list-sentence.d.ts.map +1 -1
  225. package/dist/detectors/list-sentence.js +1 -1
  226. package/dist/detectors/list-sentence.js.map +1 -1
  227. package/dist/detectors/mark-shape.d.ts +13 -4
  228. package/dist/detectors/mark-shape.d.ts.map +1 -1
  229. package/dist/detectors/mark-shape.js +73 -10
  230. package/dist/detectors/mark-shape.js.map +1 -1
  231. package/dist/detectors/mentioned-phrase.d.ts +9 -0
  232. package/dist/detectors/mentioned-phrase.d.ts.map +1 -0
  233. package/dist/detectors/mentioned-phrase.js +25 -0
  234. package/dist/detectors/mentioned-phrase.js.map +1 -0
  235. package/dist/detectors/middle-dot.d.ts +2 -2
  236. package/dist/detectors/middle-dot.d.ts.map +1 -1
  237. package/dist/detectors/middle-dot.js +4 -2
  238. package/dist/detectors/middle-dot.js.map +1 -1
  239. package/dist/detectors/modal-conflict.d.ts.map +1 -1
  240. package/dist/detectors/modal-conflict.js +5 -2
  241. package/dist/detectors/modal-conflict.js.map +1 -1
  242. package/dist/detectors/name-variant.d.ts.map +1 -1
  243. package/dist/detectors/name-variant.js +6 -0
  244. package/dist/detectors/name-variant.js.map +1 -1
  245. package/dist/detectors/notice-paragraph.d.ts +9 -0
  246. package/dist/detectors/notice-paragraph.d.ts.map +1 -0
  247. package/dist/detectors/notice-paragraph.js +21 -0
  248. package/dist/detectors/notice-paragraph.js.map +1 -0
  249. package/dist/detectors/number-style.d.ts.map +1 -1
  250. package/dist/detectors/number-style.js +15 -2
  251. package/dist/detectors/number-style.js.map +1 -1
  252. package/dist/detectors/number-unit.d.ts.map +1 -1
  253. package/dist/detectors/number-unit.js +24 -1
  254. package/dist/detectors/number-unit.js.map +1 -1
  255. package/dist/detectors/numeral-opener.d.ts +6 -0
  256. package/dist/detectors/numeral-opener.d.ts.map +1 -1
  257. package/dist/detectors/numeral-opener.js +24 -1
  258. package/dist/detectors/numeral-opener.js.map +1 -1
  259. package/dist/detectors/obligation-without-deadline.d.ts +5 -1
  260. package/dist/detectors/obligation-without-deadline.d.ts.map +1 -1
  261. package/dist/detectors/obligation-without-deadline.js +44 -23
  262. package/dist/detectors/obligation-without-deadline.js.map +1 -1
  263. package/dist/detectors/open-end-class.d.ts +16 -0
  264. package/dist/detectors/open-end-class.d.ts.map +1 -0
  265. package/dist/detectors/open-end-class.js +65 -0
  266. package/dist/detectors/open-end-class.js.map +1 -0
  267. package/dist/detectors/open-end-condition.d.ts +7 -0
  268. package/dist/detectors/open-end-condition.d.ts.map +1 -0
  269. package/dist/detectors/open-end-condition.js +35 -0
  270. package/dist/detectors/open-end-condition.js.map +1 -0
  271. package/dist/detectors/open-end-names.d.ts +9 -3
  272. package/dist/detectors/open-end-names.d.ts.map +1 -1
  273. package/dist/detectors/open-end-names.js +5 -2
  274. package/dist/detectors/open-end-names.js.map +1 -1
  275. package/dist/detectors/open-end-question.d.ts +15 -0
  276. package/dist/detectors/open-end-question.d.ts.map +1 -0
  277. package/dist/detectors/open-end-question.js +37 -0
  278. package/dist/detectors/open-end-question.js.map +1 -0
  279. package/dist/detectors/open-end-scope.d.ts +16 -0
  280. package/dist/detectors/open-end-scope.d.ts.map +1 -0
  281. package/dist/detectors/open-end-scope.js +47 -0
  282. package/dist/detectors/open-end-scope.js.map +1 -0
  283. package/dist/detectors/opening-date.d.ts +10 -0
  284. package/dist/detectors/opening-date.d.ts.map +1 -0
  285. package/dist/detectors/opening-date.js +33 -0
  286. package/dist/detectors/opening-date.js.map +1 -0
  287. package/dist/detectors/ordinary-phrase.d.ts +20 -0
  288. package/dist/detectors/ordinary-phrase.d.ts.map +1 -0
  289. package/dist/detectors/ordinary-phrase.js +54 -0
  290. package/dist/detectors/ordinary-phrase.js.map +1 -0
  291. package/dist/detectors/organisation-run.d.ts +5 -7
  292. package/dist/detectors/organisation-run.d.ts.map +1 -1
  293. package/dist/detectors/organisation-run.js +10 -0
  294. package/dist/detectors/organisation-run.js.map +1 -1
  295. package/dist/detectors/orthographic-variant.d.ts.map +1 -1
  296. package/dist/detectors/orthographic-variant.js +85 -20
  297. package/dist/detectors/orthographic-variant.js.map +1 -1
  298. package/dist/detectors/orthography.d.ts.map +1 -1
  299. package/dist/detectors/orthography.js +9 -2
  300. package/dist/detectors/orthography.js.map +1 -1
  301. package/dist/detectors/oxford-comma.d.ts.map +1 -1
  302. package/dist/detectors/oxford-comma.js +70 -3
  303. package/dist/detectors/oxford-comma.js.map +1 -1
  304. package/dist/detectors/person-consistency.d.ts +2 -1
  305. package/dist/detectors/person-consistency.d.ts.map +1 -1
  306. package/dist/detectors/person-consistency.js +5 -3
  307. package/dist/detectors/person-consistency.js.map +1 -1
  308. package/dist/detectors/phrase-match.d.ts +2 -0
  309. package/dist/detectors/phrase-match.d.ts.map +1 -1
  310. package/dist/detectors/phrase-match.js +11 -4
  311. package/dist/detectors/phrase-match.js.map +1 -1
  312. package/dist/detectors/placeholder-text.d.ts.map +1 -1
  313. package/dist/detectors/placeholder-text.js +18 -3
  314. package/dist/detectors/placeholder-text.js.map +1 -1
  315. package/dist/detectors/placeholder.d.ts +3 -1
  316. package/dist/detectors/placeholder.d.ts.map +1 -1
  317. package/dist/detectors/placeholder.js +8 -3
  318. package/dist/detectors/placeholder.js.map +1 -1
  319. package/dist/detectors/postcode-end.d.ts +3 -0
  320. package/dist/detectors/postcode-end.d.ts.map +1 -0
  321. package/dist/detectors/postcode-end.js +15 -0
  322. package/dist/detectors/postcode-end.js.map +1 -0
  323. package/dist/detectors/prose-total-words.d.ts +5 -0
  324. package/dist/detectors/prose-total-words.d.ts.map +1 -0
  325. package/dist/detectors/prose-total-words.js +14 -0
  326. package/dist/detectors/prose-total-words.js.map +1 -0
  327. package/dist/detectors/range-notation.d.ts +2 -2
  328. package/dist/detectors/range-notation.d.ts.map +1 -1
  329. package/dist/detectors/range-notation.js +18 -7
  330. package/dist/detectors/range-notation.js.map +1 -1
  331. package/dist/detectors/registry/kanji-compound-slip.d.ts +3 -0
  332. package/dist/detectors/registry/kanji-compound-slip.d.ts.map +1 -0
  333. package/dist/detectors/registry/kanji-compound-slip.js +3 -0
  334. package/dist/detectors/registry/kanji-compound-slip.js.map +1 -0
  335. package/dist/detectors/registry/phrase-in-use.d.ts +3 -0
  336. package/dist/detectors/registry/phrase-in-use.d.ts.map +1 -0
  337. package/dist/detectors/registry/phrase-in-use.js +3 -0
  338. package/dist/detectors/registry/phrase-in-use.js.map +1 -0
  339. package/dist/detectors/requirement-smell.d.ts.map +1 -1
  340. package/dist/detectors/requirement-smell.js +35 -7
  341. package/dist/detectors/requirement-smell.js.map +1 -1
  342. package/dist/detectors/scaled-figure-unit.d.ts +28 -0
  343. package/dist/detectors/scaled-figure-unit.d.ts.map +1 -0
  344. package/dist/detectors/scaled-figure-unit.js +78 -0
  345. package/dist/detectors/scaled-figure-unit.js.map +1 -0
  346. package/dist/detectors/sentence-counts.d.ts +12 -2
  347. package/dist/detectors/sentence-counts.d.ts.map +1 -1
  348. package/dist/detectors/sentence-counts.js +52 -11
  349. package/dist/detectors/sentence-counts.js.map +1 -1
  350. package/dist/detectors/sentence-ending.d.ts +2 -0
  351. package/dist/detectors/sentence-ending.d.ts.map +1 -1
  352. package/dist/detectors/sentence-ending.js +10 -3
  353. package/dist/detectors/sentence-ending.js.map +1 -1
  354. package/dist/detectors/sentence-length.d.ts.map +1 -1
  355. package/dist/detectors/sentence-length.js +13 -4
  356. package/dist/detectors/sentence-length.js.map +1 -1
  357. package/dist/detectors/sentence-load.d.ts +4 -1
  358. package/dist/detectors/sentence-load.d.ts.map +1 -1
  359. package/dist/detectors/sentence-load.js +9 -2
  360. package/dist/detectors/sentence-load.js.map +1 -1
  361. package/dist/detectors/signals.d.ts.map +1 -1
  362. package/dist/detectors/signals.js +44 -52
  363. package/dist/detectors/signals.js.map +1 -1
  364. package/dist/detectors/structure-tree.d.ts.map +1 -1
  365. package/dist/detectors/structure-tree.js +14 -13
  366. package/dist/detectors/structure-tree.js.map +1 -1
  367. package/dist/detectors/structure.d.ts.map +1 -1
  368. package/dist/detectors/structure.js +2 -1
  369. package/dist/detectors/structure.js.map +1 -1
  370. package/dist/detectors/subject-name-line.d.ts +8 -0
  371. package/dist/detectors/subject-name-line.d.ts.map +1 -0
  372. package/dist/detectors/subject-name-line.js +53 -0
  373. package/dist/detectors/subject-name-line.js.map +1 -0
  374. package/dist/detectors/superlative-name.d.ts +5 -0
  375. package/dist/detectors/superlative-name.d.ts.map +1 -1
  376. package/dist/detectors/superlative-name.js +9 -0
  377. package/dist/detectors/superlative-name.js.map +1 -1
  378. package/dist/detectors/table-header.d.ts.map +1 -1
  379. package/dist/detectors/table-header.js +13 -1
  380. package/dist/detectors/table-header.js.map +1 -1
  381. package/dist/detectors/technical-docs.d.ts.map +1 -1
  382. package/dist/detectors/technical-docs.js +4 -1
  383. package/dist/detectors/technical-docs.js.map +1 -1
  384. package/dist/detectors/term-mention-sentence.d.ts +4 -0
  385. package/dist/detectors/term-mention-sentence.d.ts.map +1 -0
  386. package/dist/detectors/term-mention-sentence.js +28 -0
  387. package/dist/detectors/term-mention-sentence.js.map +1 -0
  388. package/dist/detectors/titled-run.d.ts +2 -1
  389. package/dist/detectors/titled-run.d.ts.map +1 -1
  390. package/dist/detectors/titled-run.js +9 -4
  391. package/dist/detectors/titled-run.js.map +1 -1
  392. package/dist/detectors/token-shape.d.ts.map +1 -1
  393. package/dist/detectors/token-shape.js +15 -5
  394. package/dist/detectors/token-shape.js.map +1 -1
  395. package/dist/detectors/undefined-term.d.ts.map +1 -1
  396. package/dist/detectors/undefined-term.js +5 -0
  397. package/dist/detectors/undefined-term.js.map +1 -1
  398. package/dist/detectors/unknown-word.d.ts +4 -1
  399. package/dist/detectors/unknown-word.d.ts.map +1 -1
  400. package/dist/detectors/unknown-word.js +1 -1
  401. package/dist/detectors/unknown-word.js.map +1 -1
  402. package/dist/detectors/vague-density.d.ts +5 -2
  403. package/dist/detectors/vague-density.d.ts.map +1 -1
  404. package/dist/detectors/vague-density.js +17 -4
  405. package/dist/detectors/vague-density.js.map +1 -1
  406. package/dist/document-paragraphs.d.ts +4 -0
  407. package/dist/document-paragraphs.d.ts.map +1 -0
  408. package/dist/document-paragraphs.js +24 -0
  409. package/dist/document-paragraphs.js.map +1 -0
  410. package/dist/document.d.ts.map +1 -1
  411. package/dist/document.js +2 -19
  412. package/dist/document.js.map +1 -1
  413. package/dist/figure-references.d.ts +3 -0
  414. package/dist/figure-references.d.ts.map +1 -1
  415. package/dist/figure-references.js +6 -2
  416. package/dist/figure-references.js.map +1 -1
  417. package/dist/format-template.d.ts +3 -0
  418. package/dist/format-template.d.ts.map +1 -0
  419. package/dist/format-template.js +13 -0
  420. package/dist/format-template.js.map +1 -0
  421. package/dist/formula-brackets.d.ts +7 -0
  422. package/dist/formula-brackets.d.ts.map +1 -0
  423. package/dist/formula-brackets.js +29 -0
  424. package/dist/formula-brackets.js.map +1 -0
  425. package/dist/html/html-markdown.d.ts.map +1 -1
  426. package/dist/html/html-markdown.js +2 -1
  427. package/dist/html/html-markdown.js.map +1 -1
  428. package/dist/html/html-site-chrome.d.ts +5 -0
  429. package/dist/html/html-site-chrome.d.ts.map +1 -0
  430. package/dist/html/html-site-chrome.js +56 -0
  431. package/dist/html/html-site-chrome.js.map +1 -0
  432. package/dist/joined-view.d.ts.map +1 -1
  433. package/dist/joined-view.js +1 -0
  434. package/dist/joined-view.js.map +1 -1
  435. package/dist/kanji-compound-slip.d.ts +32 -0
  436. package/dist/kanji-compound-slip.d.ts.map +1 -0
  437. package/dist/kanji-compound-slip.js +63 -0
  438. package/dist/kanji-compound-slip.js.map +1 -0
  439. package/dist/latin-company-form.d.ts +6 -0
  440. package/dist/latin-company-form.d.ts.map +1 -0
  441. package/dist/latin-company-form.js +32 -0
  442. package/dist/latin-company-form.js.map +1 -0
  443. package/dist/latin-word-boundary.d.ts +20 -0
  444. package/dist/latin-word-boundary.d.ts.map +1 -0
  445. package/dist/latin-word-boundary.js +57 -0
  446. package/dist/latin-word-boundary.js.map +1 -0
  447. package/dist/leading-label.d.ts +4 -0
  448. package/dist/leading-label.d.ts.map +1 -0
  449. package/dist/leading-label.js +14 -0
  450. package/dist/leading-label.js.map +1 -0
  451. package/dist/lexicon-genres.d.ts +2 -0
  452. package/dist/lexicon-genres.d.ts.map +1 -1
  453. package/dist/lexicon-genres.js +1 -1
  454. package/dist/lexicon-genres.js.map +1 -1
  455. package/dist/link-shape.d.ts +6 -0
  456. package/dist/link-shape.d.ts.map +1 -1
  457. package/dist/link-shape.js +27 -0
  458. package/dist/link-shape.js.map +1 -1
  459. package/dist/link-title.d.ts +4 -0
  460. package/dist/link-title.d.ts.map +1 -0
  461. package/dist/link-title.js +33 -0
  462. package/dist/link-title.js.map +1 -0
  463. package/dist/list-item-paragraphs.d.ts +15 -0
  464. package/dist/list-item-paragraphs.d.ts.map +1 -0
  465. package/dist/list-item-paragraphs.js +19 -0
  466. package/dist/list-item-paragraphs.js.map +1 -0
  467. package/dist/literal-quote.d.ts +12 -0
  468. package/dist/literal-quote.d.ts.map +1 -0
  469. package/dist/literal-quote.js +43 -0
  470. package/dist/literal-quote.js.map +1 -0
  471. package/dist/nado-closed-list.d.ts.map +1 -1
  472. package/dist/nado-closed-list.js +39 -5
  473. package/dist/nado-closed-list.js.map +1 -1
  474. package/dist/name-misspelt-usual.d.ts +5 -0
  475. package/dist/name-misspelt-usual.d.ts.map +1 -0
  476. package/dist/name-misspelt-usual.js +19 -0
  477. package/dist/name-misspelt-usual.js.map +1 -0
  478. package/dist/name-separator.d.ts.map +1 -1
  479. package/dist/name-separator.js +25 -2
  480. package/dist/name-separator.js.map +1 -1
  481. package/dist/nominal-stem.d.ts +14 -1
  482. package/dist/nominal-stem.d.ts.map +1 -1
  483. package/dist/nominal-stem.js +42 -4
  484. package/dist/nominal-stem.js.map +1 -1
  485. package/dist/notice-header.d.ts +19 -0
  486. package/dist/notice-header.d.ts.map +1 -0
  487. package/dist/notice-header.js +31 -0
  488. package/dist/notice-header.js.map +1 -0
  489. package/dist/person-forms.d.ts +8 -0
  490. package/dist/person-forms.d.ts.map +1 -1
  491. package/dist/person-forms.js +12 -0
  492. package/dist/person-forms.js.map +1 -1
  493. package/dist/plugin.d.ts +5 -0
  494. package/dist/plugin.d.ts.map +1 -1
  495. package/dist/preamble-paragraphs.d.ts +3 -2
  496. package/dist/preamble-paragraphs.d.ts.map +1 -1
  497. package/dist/preamble-paragraphs.js +8 -2
  498. package/dist/preamble-paragraphs.js.map +1 -1
  499. package/dist/sentence-load.d.ts +2 -1
  500. package/dist/sentence-load.d.ts.map +1 -1
  501. package/dist/sentence-load.js +11 -3
  502. package/dist/sentence-load.js.map +1 -1
  503. package/dist/spacing-code.d.ts +1 -0
  504. package/dist/spacing-code.d.ts.map +1 -1
  505. package/dist/spacing-code.js +4 -1
  506. package/dist/spacing-code.js.map +1 -1
  507. package/dist/split-noun.d.ts +10 -0
  508. package/dist/split-noun.d.ts.map +1 -0
  509. package/dist/split-noun.js +50 -0
  510. package/dist/split-noun.js.map +1 -0
  511. package/dist/structure/attached-parts.d.ts +12 -0
  512. package/dist/structure/attached-parts.d.ts.map +1 -0
  513. package/dist/structure/attached-parts.js +44 -0
  514. package/dist/structure/attached-parts.js.map +1 -0
  515. package/dist/structure/build.d.ts.map +1 -1
  516. package/dist/structure/build.js +7 -4
  517. package/dist/structure/build.js.map +1 -1
  518. package/dist/structure/contents-lines.d.ts +7 -0
  519. package/dist/structure/contents-lines.d.ts.map +1 -0
  520. package/dist/structure/contents-lines.js +51 -0
  521. package/dist/structure/contents-lines.js.map +1 -0
  522. package/dist/structure/defining-names.d.ts +37 -0
  523. package/dist/structure/defining-names.d.ts.map +1 -0
  524. package/dist/structure/defining-names.js +122 -0
  525. package/dist/structure/defining-names.js.map +1 -0
  526. package/dist/structure/definition-use.d.ts +8 -4
  527. package/dist/structure/definition-use.d.ts.map +1 -1
  528. package/dist/structure/definition-use.js +123 -38
  529. package/dist/structure/definition-use.js.map +1 -1
  530. package/dist/structure/gerund-phrase.d.ts +8 -0
  531. package/dist/structure/gerund-phrase.d.ts.map +1 -0
  532. package/dist/structure/gerund-phrase.js +30 -0
  533. package/dist/structure/gerund-phrase.js.map +1 -0
  534. package/dist/structure/issues.d.ts +4 -1
  535. package/dist/structure/issues.d.ts.map +1 -1
  536. package/dist/structure/issues.js +5 -2
  537. package/dist/structure/issues.js.map +1 -1
  538. package/dist/structure/list-lead-in.d.ts +19 -0
  539. package/dist/structure/list-lead-in.d.ts.map +1 -0
  540. package/dist/structure/list-lead-in.js +85 -0
  541. package/dist/structure/list-lead-in.js.map +1 -0
  542. package/dist/structure/modal-conflict.d.ts +7 -2
  543. package/dist/structure/modal-conflict.d.ts.map +1 -1
  544. package/dist/structure/modal-conflict.js +36 -7
  545. package/dist/structure/modal-conflict.js.map +1 -1
  546. package/dist/structure/negated-act.d.ts +17 -0
  547. package/dist/structure/negated-act.d.ts.map +1 -0
  548. package/dist/structure/negated-act.js +32 -0
  549. package/dist/structure/negated-act.js.map +1 -0
  550. package/dist/structure/numbering.d.ts +3 -1
  551. package/dist/structure/numbering.d.ts.map +1 -1
  552. package/dist/structure/numbering.js +20 -8
  553. package/dist/structure/numbering.js.map +1 -1
  554. package/dist/structure/prose-total.d.ts +4 -0
  555. package/dist/structure/prose-total.d.ts.map +1 -1
  556. package/dist/structure/prose-total.js +16 -6
  557. package/dist/structure/prose-total.js.map +1 -1
  558. package/dist/structure/repeated-number.d.ts +24 -0
  559. package/dist/structure/repeated-number.d.ts.map +1 -0
  560. package/dist/structure/repeated-number.js +89 -0
  561. package/dist/structure/repeated-number.js.map +1 -0
  562. package/dist/structure/rounded-amount.d.ts +8 -0
  563. package/dist/structure/rounded-amount.d.ts.map +1 -0
  564. package/dist/structure/rounded-amount.js +48 -0
  565. package/dist/structure/rounded-amount.js.map +1 -0
  566. package/dist/structure/side-step.d.ts +8 -0
  567. package/dist/structure/side-step.d.ts.map +1 -0
  568. package/dist/structure/side-step.js +21 -0
  569. package/dist/structure/side-step.js.map +1 -0
  570. package/dist/structure/spanned-label-blank.d.ts +8 -0
  571. package/dist/structure/spanned-label-blank.d.ts.map +1 -0
  572. package/dist/structure/spanned-label-blank.js +37 -0
  573. package/dist/structure/spanned-label-blank.js.map +1 -0
  574. package/dist/structure/universal.d.ts +10 -4
  575. package/dist/structure/universal.d.ts.map +1 -1
  576. package/dist/structure/universal.js +26 -7
  577. package/dist/structure/universal.js.map +1 -1
  578. package/dist/structure/unspaced-heading.d.ts +10 -0
  579. package/dist/structure/unspaced-heading.d.ts.map +1 -0
  580. package/dist/structure/unspaced-heading.js +24 -0
  581. package/dist/structure/unspaced-heading.js.map +1 -0
  582. package/dist/structure/written-list-path.d.ts +10 -0
  583. package/dist/structure/written-list-path.d.ts.map +1 -0
  584. package/dist/structure/written-list-path.js +37 -0
  585. package/dist/structure/written-list-path.js.map +1 -0
  586. package/dist/structure/written-resolve.d.ts +1 -1
  587. package/dist/structure/written-resolve.d.ts.map +1 -1
  588. package/dist/structure/written-resolve.js +15 -9
  589. package/dist/structure/written-resolve.js.map +1 -1
  590. package/dist/title-line.d.ts +23 -0
  591. package/dist/title-line.d.ts.map +1 -0
  592. package/dist/title-line.js +28 -0
  593. package/dist/title-line.js.map +1 -0
  594. package/dist/topic-clause.d.ts +7 -0
  595. package/dist/topic-clause.d.ts.map +1 -0
  596. package/dist/topic-clause.js +87 -0
  597. package/dist/topic-clause.js.map +1 -0
  598. package/dist/uncounted-particles.d.ts +18 -0
  599. package/dist/uncounted-particles.d.ts.map +1 -0
  600. package/dist/uncounted-particles.js +47 -0
  601. package/dist/uncounted-particles.js.map +1 -0
  602. package/package.json +3 -3
  603. package/rules/adversative-ga-repeat.yaml +1 -0
  604. package/rules/all-caps-shouting.yaml +2 -2
  605. package/rules/announced-count-mismatch.yaml +2 -2
  606. package/rules/bare-url-mix.yaml +2 -2
  607. package/rules/bracket-nesting.yaml +2 -2
  608. package/rules/bracket-width-consistency.yaml +2 -2
  609. package/rules/broken-link.yaml +2 -2
  610. package/rules/cliche.yaml +4 -3
  611. package/rules/code-fence-language-mix.yaml +2 -2
  612. package/rules/comparative-without-baseline.yaml +2 -2
  613. package/rules/concrete-evidence-density.yaml +1 -0
  614. package/rules/contraction-consistency.yaml +2 -2
  615. package/rules/dangling-figure-reference.yaml +2 -2
  616. package/rules/date-without-year.yaml +10 -2
  617. package/rules/defined-term-form.yaml +2 -2
  618. package/rules/doubled-punctuation.yaml +4 -4
  619. package/rules/doubled-word.yaml +2 -2
  620. package/rules/duplicate-definition.yaml +2 -2
  621. package/rules/duplicate-heading.yaml +2 -2
  622. package/rules/duration-mismatch.yaml +2 -2
  623. package/rules/email-greeting-closing.yaml +2 -2
  624. package/rules/email-subject-length.yaml +2 -2
  625. package/rules/empty-table-cell.yaml +2 -2
  626. package/rules/footnote-mismatch.yaml +2 -2
  627. package/rules/fullwidth-alnum-consistency.yaml +2 -2
  628. package/rules/heading-echo.yaml +2 -2
  629. package/rules/ime-residue.yaml +2 -2
  630. package/rules/kanji-compound-slip.yaml +67 -0
  631. package/rules/kutoten-consistency.yaml +4 -4
  632. package/rules/latin-spacing.yaml +2 -2
  633. package/rules/list-item-form-mix.yaml +2 -2
  634. package/rules/max-kanji-continuous.yaml +6 -4
  635. package/rules/max-sentence-length.yaml +2 -2
  636. package/rules/modal-conflict.yaml +1 -0
  637. package/rules/nado-closed-list.yaml +2 -2
  638. package/rules/ngram-repetition.yaml +2 -2
  639. package/rules/no-doubled-joshi.yaml +2 -2
  640. package/rules/no-mixed-desumasu.yaml +3 -3
  641. package/rules/no-nakaguro-parallel.yaml +2 -0
  642. package/rules/number-without-unit.yaml +9 -4
  643. package/rules/numbering-gap.yaml +7 -2
  644. package/rules/numeral-sentence-start.yaml +2 -2
  645. package/rules/obligation-without-deadline.yaml +2 -2
  646. package/rules/orthographic-variant.yaml +2 -2
  647. package/rules/oxford-comma-consistency.yaml +3 -3
  648. package/rules/preamble-length.yaml +3 -2
  649. package/rules/range-notation-consistency.yaml +2 -2
  650. package/rules/requirement-smell.yaml +3 -3
  651. package/rules/table-header-variant.yaml +2 -2
  652. package/rules/teki-overuse.yaml +3 -2
  653. package/rules/title-length.yaml +2 -2
  654. package/rules/topic-predicate-distance.yaml +2 -2
  655. package/rules/total-mismatch.yaml +2 -2
  656. package/rules/translationese-density.yaml +2 -2
  657. package/rules/undefined-acronym.yaml +5 -2
  658. package/rules/undefined-term.yaml +2 -2
  659. package/rules/unfilled-placeholder.yaml +4 -4
  660. package/rules/unqualified-superlative.yaml +1 -1
  661. package/rules/unused-definition.yaml +2 -2
  662. package/rules/use-before-definition.yaml +2 -2
  663. package/rules/vague-word-density.yaml +2 -2
  664. package/skills/chaff/SKILL.md +7 -1
  665. package/src/announced-count.ts +35 -8
  666. package/src/chronology-rows.ts +86 -0
  667. package/src/company-name-run.ts +37 -0
  668. package/src/compound-head.ts +25 -0
  669. package/src/date-format.ts +43 -4
  670. package/src/derived/count-per-period.ts +28 -0
  671. package/src/detectors/acronym-context.ts +30 -1
  672. package/src/detectors/acronym-expansion.ts +54 -6
  673. package/src/detectors/acronym-known.ts +40 -0
  674. package/src/detectors/acronym-link.ts +75 -0
  675. package/src/detectors/acronym-mention.ts +44 -0
  676. package/src/detectors/acronym-name.ts +29 -6
  677. package/src/detectors/addressee-edge.ts +16 -0
  678. package/src/detectors/addressee-title-edge.ts +39 -0
  679. package/src/detectors/announced-count.ts +1 -0
  680. package/src/detectors/bare-comparative.ts +44 -3
  681. package/src/detectors/blank-structure.ts +21 -10
  682. package/src/detectors/bracket-specified.ts +25 -0
  683. package/src/detectors/broken-link.ts +26 -2
  684. package/src/detectors/capitalised-term.ts +26 -2
  685. package/src/detectors/caps-caption.ts +76 -0
  686. package/src/detectors/caps-phrase.ts +17 -0
  687. package/src/detectors/char-shape.ts +73 -14
  688. package/src/detectors/citation-sentence.ts +44 -0
  689. package/src/detectors/cited-title.ts +15 -3
  690. package/src/detectors/contraction-mention.ts +24 -0
  691. package/src/detectors/counter-edge.ts +17 -2
  692. package/src/detectors/dash-break.ts +45 -0
  693. package/src/detectors/date-any-year.ts +34 -9
  694. package/src/detectors/date-format.ts +2 -1
  695. package/src/detectors/date-year.ts +64 -16
  696. package/src/detectors/deadline-unit.ts +40 -0
  697. package/src/detectors/defined-term-form.ts +32 -12
  698. package/src/detectors/definition-use.ts +17 -9
  699. package/src/detectors/derived-numbers.ts +19 -4
  700. package/src/detectors/document-shape.ts +20 -1
  701. package/src/detectors/doubled-across-aside.ts +36 -0
  702. package/src/detectors/doubled-punctuation.ts +28 -7
  703. package/src/detectors/doubled-word.ts +2 -1
  704. package/src/detectors/duplicate-heading.ts +26 -3
  705. package/src/detectors/ellipsis.ts +16 -1
  706. package/src/detectors/email-letter.ts +142 -23
  707. package/src/detectors/field-label.ts +25 -0
  708. package/src/detectors/footnote-mismatch.ts +39 -7
  709. package/src/detectors/fullwidth-alnum.ts +9 -1
  710. package/src/detectors/graded-step.ts +52 -0
  711. package/src/detectors/gram-openers.ts +50 -0
  712. package/src/detectors/gram-place.ts +10 -1
  713. package/src/detectors/gram-predicate.ts +43 -3
  714. package/src/detectors/heading-echo.ts +31 -3
  715. package/src/detectors/heading-record-rhythm.ts +57 -0
  716. package/src/detectors/ime-residue.ts +4 -3
  717. package/src/detectors/kanji-compound-slip.ts +61 -0
  718. package/src/detectors/kutoten-consistency.ts +102 -14
  719. package/src/detectors/lexicon.ts +18 -5
  720. package/src/detectors/link-shape.ts +10 -3
  721. package/src/detectors/list-item-ending.ts +51 -0
  722. package/src/detectors/list-parallel.ts +158 -33
  723. package/src/detectors/list-sentence.ts +5 -1
  724. package/src/detectors/mark-shape.ts +89 -10
  725. package/src/detectors/mentioned-phrase.ts +38 -0
  726. package/src/detectors/middle-dot.ts +7 -2
  727. package/src/detectors/modal-conflict.ts +5 -2
  728. package/src/detectors/name-variant.ts +6 -0
  729. package/src/detectors/notice-paragraph.ts +33 -0
  730. package/src/detectors/number-style.ts +14 -2
  731. package/src/detectors/number-unit.ts +28 -1
  732. package/src/detectors/numeral-opener.ts +27 -1
  733. package/src/detectors/obligation-without-deadline.ts +29 -4
  734. package/src/detectors/open-end-class.ts +78 -0
  735. package/src/detectors/open-end-condition.ts +40 -0
  736. package/src/detectors/open-end-names.ts +9 -3
  737. package/src/detectors/open-end-question.ts +50 -0
  738. package/src/detectors/open-end-scope.ts +62 -0
  739. package/src/detectors/opening-date.ts +47 -0
  740. package/src/detectors/ordinary-phrase.ts +62 -0
  741. package/src/detectors/organisation-run.ts +18 -2
  742. package/src/detectors/orthographic-variant.ts +124 -25
  743. package/src/detectors/orthography.ts +15 -2
  744. package/src/detectors/oxford-comma.ts +74 -3
  745. package/src/detectors/person-consistency.ts +5 -3
  746. package/src/detectors/phrase-match.ts +16 -5
  747. package/src/detectors/placeholder-text.ts +18 -3
  748. package/src/detectors/placeholder.ts +10 -3
  749. package/src/detectors/postcode-end.ts +16 -0
  750. package/src/detectors/prose-total-words.ts +18 -0
  751. package/src/detectors/range-notation.ts +26 -6
  752. package/src/detectors/registry/kanji-compound-slip.ts +4 -0
  753. package/src/detectors/registry/phrase-in-use.ts +4 -0
  754. package/src/detectors/requirement-smell.ts +45 -8
  755. package/src/detectors/scaled-figure-unit.ts +103 -0
  756. package/src/detectors/sentence-counts.ts +64 -12
  757. package/src/detectors/sentence-ending.ts +12 -3
  758. package/src/detectors/sentence-length.ts +17 -4
  759. package/src/detectors/sentence-load.ts +9 -2
  760. package/src/detectors/signals.ts +50 -53
  761. package/src/detectors/structure-tree.ts +14 -14
  762. package/src/detectors/structure.ts +2 -1
  763. package/src/detectors/subject-name-line.ts +66 -0
  764. package/src/detectors/superlative-name.ts +10 -0
  765. package/src/detectors/table-header.ts +15 -1
  766. package/src/detectors/technical-docs.ts +5 -1
  767. package/src/detectors/term-mention-sentence.ts +31 -0
  768. package/src/detectors/titled-run.ts +9 -4
  769. package/src/detectors/token-shape.ts +16 -5
  770. package/src/detectors/undefined-term.ts +8 -0
  771. package/src/detectors/unknown-word.ts +1 -1
  772. package/src/detectors/vague-density.ts +20 -4
  773. package/src/document-paragraphs.ts +27 -0
  774. package/src/document.ts +3 -23
  775. package/src/figure-references.ts +7 -2
  776. package/src/format-template.ts +15 -0
  777. package/src/formula-brackets.ts +36 -0
  778. package/src/html/html-markdown.ts +2 -1
  779. package/src/html/html-site-chrome.ts +104 -0
  780. package/src/joined-view.ts +1 -0
  781. package/src/kanji-compound-slip.ts +98 -0
  782. package/src/latin-company-form.ts +38 -0
  783. package/src/latin-word-boundary.ts +64 -0
  784. package/src/leading-label.ts +15 -0
  785. package/src/lexicon-genres.ts +1 -1
  786. package/src/link-shape.ts +31 -0
  787. package/src/link-title.ts +38 -0
  788. package/src/list-item-paragraphs.ts +22 -0
  789. package/src/literal-quote.ts +55 -0
  790. package/src/nado-closed-list.ts +48 -5
  791. package/src/name-misspelt-usual.ts +25 -0
  792. package/src/name-separator.ts +27 -2
  793. package/src/nominal-stem.ts +62 -5
  794. package/src/notice-header.ts +57 -0
  795. package/src/person-forms.ts +15 -0
  796. package/src/plugin.ts +5 -0
  797. package/src/preamble-paragraphs.ts +13 -3
  798. package/src/sentence-load.ts +14 -3
  799. package/src/spacing-code.ts +5 -1
  800. package/src/split-noun.ts +63 -0
  801. package/src/structure/attached-parts.ts +47 -0
  802. package/src/structure/build.ts +7 -4
  803. package/src/structure/contents-lines.ts +63 -0
  804. package/src/structure/defining-names.ts +155 -0
  805. package/src/structure/definition-use.ts +149 -32
  806. package/src/structure/gerund-phrase.ts +31 -0
  807. package/src/structure/issues.ts +7 -3
  808. package/src/structure/list-lead-in.ts +94 -0
  809. package/src/structure/modal-conflict.ts +42 -7
  810. package/src/structure/negated-act.ts +49 -0
  811. package/src/structure/numbering.ts +24 -9
  812. package/src/structure/prose-total.ts +20 -6
  813. package/src/structure/repeated-number.ts +110 -0
  814. package/src/structure/rounded-amount.ts +55 -0
  815. package/src/structure/side-step.ts +21 -0
  816. package/src/structure/spanned-label-blank.ts +39 -0
  817. package/src/structure/universal.ts +33 -9
  818. package/src/structure/unspaced-heading.ts +27 -0
  819. package/src/structure/written-list-path.ts +46 -0
  820. package/src/structure/written-resolve.ts +16 -9
  821. package/src/title-line.ts +53 -0
  822. package/src/topic-clause.ts +109 -0
  823. package/src/uncounted-particles.ts +72 -0
@@ -1 +1 @@
1
- {"version":3,"file":"acronym-context.js","sourceRoot":"","sources":["../../src/detectors/acronym-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acronym-context.js","sourceRoot":"","sources":["../../src/detectors/acronym-context.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA6BvD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAA,UAAU,CAAC;AACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAA,mCAAmC,OAAO,IAAI,CAAC;AAC1E,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAA,gCAAgC,OAAO,EAAE,CAAC;AACrE,6CAA6C;AAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA,kBAAkB,CAAC;AAClD,2DAA2D;AAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA,sCAAsC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;AAEpH,yEAAyE;AACzE,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAA,kBAAkB,CAAC;AAClD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA,oBAAoB,CAAC;AAElD,MAAM,gBAAgB,GAAG,CAAC,KAAoB,EAAqB,EAAE;IACnE,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAA,qBAAqB,UAAU,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC;IAC/G,OAAO,CAAC,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,YAAY,CAAC,aAAa,CAAC,GAAG,UAAU,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7I,CAAC,CAAC;AAEF,gEAAgE;AAChE,MAAM,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAA,yCAAyC,CAAC;AAEhF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA,uCAAuC,CAAC;AAC3E,MAAM,UAAU,GAAG,CAAC,MAAc,EAAqB,EAAE,CAAC;IACxD,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,sBAAsB,MAAM,MAAM,mBAAmB,UAAU,EAAE,IAAI,CAAC;IAC3F,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,qBAAqB,MAAM,MAAM,mBAAmB,GAAG,gBAAgB,EAAE,EAAE,IAAI,CAAC;CACtG,CAAC;AAEF;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,MAAc,EAAU,EAAE,CAC/C,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,oCAAoC,MAAM,6CAA6C,EAAE,IAAI,CAAC,CAAC;AAEtH,kDAAkD;AAClD,MAAM,UAAU,GAAG,CAAC,KAAoB,EAAqB,EAAE,CAAC;IAC9D,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,GAAG,QAAQ,MAAM,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IACpE,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,MAAM,QAAQ,IAAI,QAAQ,MAAM,YAAY,OAAO,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC;IACvG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,aAAa,MAAM,EAAE,EAAE,IAAI,CAAC;IAC3E,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,cAAc,MAAM,MAAM,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,IAAI,CAAC;IAC/E,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,2CAA2C,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,2BAA2B,EAAE,IAAI,CAAC;IACvH,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;IACvC,GAAG,gBAAgB,CAAC,KAAK,CAAC;IAC1B,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,qBAAqB,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,mBAAmB,EAAE,EAAE,IAAI,CAAC;IACnG,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACnC,CAAC;AAIF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAoB,EAAmB,EAAE;IACzE,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACnC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACf,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1I,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACzB,GAAG,eAAe,CAAC,IAAI,CAAC;QACxB,GAAG,qBAAqB,CAAC,IAAI,CAAC;QAC9B,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACzB,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACzB,GAAG,gBAAgB,CAAC,IAAI,CAAC;QACzB,GAAG,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAC9C,GAAG,gBAAgB,CAAC,IAAI,CAAC;KAC1B,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,OAAiC,EAAmB,EAAE;IACtF,MAAM,QAAQ,GAAG,iBAAiB,CAAC;QACjC,QAAQ,EAAE,OAAO,CAAC,UAAU,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC;QAC/B,UAAU,EAAE,OAAO,CAAC,eAAe,CAAC;QACpC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC;QAClC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC;QAClC,SAAS,EAAE,OAAO,CAAC,mBAAmB,CAAC;QACvC,iBAAiB,EAAE,OAAO,CAAC,mBAAmB,CAAC;QAC/C,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC;QAC7B,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC;KACzC,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,WAAW,CAAC;QACxB,UAAU,EAAE,OAAO,CAAC,YAAY,CAAC;QACjC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC;QACrC,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC;QACvC,cAAc,EAAE,OAAO,CAAC,iBAAiB,CAAC;QAC1C,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC;QACjC,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC;QACpC,cAAc,EAAE,OAAO,CAAC,eAAe,CAAC;QACxC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC;KAC1C,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC"}
@@ -3,10 +3,14 @@
3
3
  * すべての語の頭文字(single nucleotide polymorphism)で比べる。後者は大文字小文字を問わない。
4
4
  */
5
5
  export declare const namesAcronym: (name: string, acronym: string) => boolean;
6
- /** 言語パッケージの語彙表から読む、括弧の中で略語の前に書く語(以下、hereinafter)と後ろに書く語(という)。 */
6
+ /**
7
+ * 言語パッケージの語彙表から読む、括弧の中で略語の前に書く語(以下、hereinafter)と後ろに書く語(という)、名前の後ろの読点に続けて
8
+ * 略語の前に書く言い換えの語(Special Interest Groups, or SIGs の or)。
9
+ */
7
10
  export type DefinitionWords = {
8
11
  readonly markers: readonly string[];
9
12
  readonly verbs: readonly string[];
13
+ readonly alternatives?: readonly string[];
10
14
  };
11
15
  /**
12
16
  * 略語の文字が、名前のどれかの語の頭から始まって、名前の文字の中に順に拾えるか。1 つの略語を空白で分けて書くときは、
@@ -1 +1 @@
1
- {"version":3,"file":"acronym-expansion.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-expansion.ts"],"names":[],"mappings":"AA6DA;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,OAK5D,CAAC;AAwBF,iEAAiE;AACjE,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AAgCzG;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,OAI3D,CAAC;AAsNF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,KAAG,WAAW,CAAC,MAAM,CAGpE,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;AAEhF,+DAA+D;AAC/D,eAAO,MAAM,WAAW,GAAI,OAAO,eAAe,KAAG,UAGpD,CAAC"}
1
+ {"version":3,"file":"acronym-expansion.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-expansion.ts"],"names":[],"mappings":"AAmEA;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,OAK5D,CAAC;AAwBF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,CAAC;AAiCpJ;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,OAI3D,CAAC;AAwPF,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,KAAG,WAAW,CAAC,MAAM,CAGpE,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC;AAEhF,+DAA+D;AAC/D,eAAO,MAAM,WAAW,GAAI,OAAO,eAAe,KAAG,UAOpD,CAAC"}
@@ -12,6 +12,9 @@ import { escapeRegExp } from "../orthography.js";
12
12
  * 人事部(以下「HR」という。) 括弧の中が定義の語と略語だけ
13
13
  * overnight reverse repurchase agreement (ON RRP) 括弧の中が空白で繋いだ略語だけで、前の名前から文字が順に拾える
14
14
  * Partnership On Wide Energy and Resources Resilience Asia (POWERR Asia) 括弧の中が略語と添えた語で、前の名前の頭文字と揃う
15
+ * End User Technical Advisory Board (“End User TAB”) 括弧の中が名前の頭の語と略語で、前の名前の頭文字と揃う
16
+ * Special Interest Groups, or SIGs 名前の後ろの読点と言い換えの語(語彙表の definition-alternative)の後ろで、名前の頭文字と揃う
17
+ * 複数形の s を付けた略語(SIGs)の展開は、s の無い略語(SIG)の展開でもある。
15
18
  * 括弧と略語の間には、引用符((“MNDA”)、(「MNDA」))と空白だけを許す。
16
19
  */
17
20
  const WRAP = String.raw `[\s"“”'‘’「」『』]*`;
@@ -32,11 +35,13 @@ const NEAR = 3;
32
35
  const DEFINITION_REACH = 60;
33
36
  /** 定義の語どうし、定義の語と略語の間に来てよいもの(以下、HR)。英字が続けば語の途中((theSLA))。 */
34
37
  const MARKER_GAP = String.raw `(?![A-Za-z])[\s、,]*`;
38
+ /** 複数形の略語の終わりの s(SIGs)。頭文字と比べる文字ではない。 */
39
+ const PLURAL_END = /(?<=[A-Z])s$/u;
35
40
  /**
36
41
  * 角括弧は引用の印にも使う([IANA]、[1])。直前の語のうち大文字で始まる語の頭文字が
37
42
  * 略語と揃うときだけ展開と見なす。見る語は略語の文字数の 2 倍まで(and や of を挟むため)。
38
43
  */
39
- const lettersOf = (acronym) => acronym.replaceAll(/[&-]/gu, "");
44
+ const lettersOf = (acronym) => acronym.replaceAll(/[&-]/gu, "").replace(PLURAL_END, "");
40
45
  const initialsOf = (words) => words
41
46
  .filter((word) => /^[A-Z]/u.test(word))
42
47
  .map((word) => word.charAt(0))
@@ -87,6 +92,7 @@ const oneOf = (words) => (words.length === 0 ? "(?!)" : words.map(escapeRegExp).
87
92
  const definitionPatterns = (words) => ({
88
93
  opened: new RegExp(String.raw `[((]\s*(?<markers>(?:(?:${oneOf(words.markers)})${MARKER_GAP})*)${WRAP}(?<![A-Za-z])$`, "iu"),
89
94
  closes: new RegExp(String.raw `^${WRAP}(?<verb>(?:${oneOf(words.verbs)})[。.]?)?${WRAP}[))]`, "iu"),
95
+ alternative: new RegExp(String.raw `[,,、]\s*(?:${oneOf(words.alternatives ?? [])})\s*["“'‘]?$`, "iu"),
90
96
  });
91
97
  /**
92
98
  * 括弧の中に定義の語と略語だけがある形。語が 1 つも無い(CI)は OPENED と CLOSES が見るので、ここでは数えない。
@@ -145,6 +151,32 @@ const isQualifiedAt = (body, acronym, at) => {
145
151
  const name = body.slice(0, at).replace(ANY_OPENED, "").trimEnd();
146
152
  return spellsOut(name.endsWith(words) ? name.slice(0, -words.length) : name, acronym);
147
153
  };
154
+ /** 括弧の中で略語の前に置いた、大文字で始まる語((“End User TAB”) の End User)。 */
155
+ const PREFIX = new RegExp(String.raw `[((]${WRAP}(?<words>(?:[A-Z][a-z]+ )+)$`, "u");
156
+ /**
157
+ * 括弧の中が、前の名前の頭の語と略語だけの形(End User Technical Advisory Board (“End User TAB”))。添えた語が括弧の前の名前にあり、
158
+ * 名前の頭文字が略語と揃うときだけ展開と見なす。名前に無い語を添えた括弧(Review Board (“Community CRB”))は別の名前。
159
+ */
160
+ const isPrefixedAt = (body, acronym, at) => {
161
+ const prefix = PREFIX.exec(body.slice(Math.max(0, at - DEFINITION_REACH), at));
162
+ if (prefix === null || !CLOSES.test(body.slice(at + acronym.length, at + acronym.length + NEAR)))
163
+ return false;
164
+ const name = body.slice(0, at - prefix[0].length);
165
+ const words = (prefix.groups?.["words"] ?? "").trim();
166
+ return name.slice(-DEFINITION_REACH).includes(words) && spellsOut(name, acronym);
167
+ };
168
+ /** 引用符で囲んで書き終えた名前(‘abstract syntax tree’)。小文字の語でも、囲みが名前の始まりと終わりを決める。 */
169
+ const QUOTED_NAME_END = /(?:“(?<curly>[^“”\n]{1,60})”|‘(?<single>[^‘’\n]{1,60})’|"(?<straight>[^"\n]{1,60})")$/u;
170
+ /** 名前の後ろの読点と言い換えの語に続く略語(Special Interest Groups, or SIGs、‘abstract syntax tree’, or ‘AST’)。名前の頭文字が略語と揃うときだけ。 */
171
+ const isAlternativeAt = (patterns, body, acronym, at) => {
172
+ const joined = patterns.alternative.exec(body.slice(Math.max(0, at - DEFINITION_REACH), at));
173
+ if (joined === null)
174
+ return false;
175
+ const name = body.slice(0, at - joined[0].length);
176
+ const groups = QUOTED_NAME_END.exec(name)?.groups;
177
+ const quoted = groups?.["curly"] ?? groups?.["single"] ?? groups?.["straight"];
178
+ return spellsOut(name, acronym) || (quoted !== undefined && namesAcronym(quoted, acronym));
179
+ };
148
180
  const isBracketedAt = (body, acronym, at) => {
149
181
  const after = body.slice(at + acronym.length, at + acronym.length + NEAR);
150
182
  const before = body.slice(Math.max(0, at - NEAR), at);
@@ -152,7 +184,11 @@ const isBracketedAt = (body, acronym, at) => {
152
184
  return true;
153
185
  if (SQUARE_OPENED.test(before) && SQUARE_CLOSES.test(after) && spellsOut(body.slice(0, at), acronym))
154
186
  return true;
155
- return isSeparatedAt(body, acronym, at) || isNamedBeforeAt(body, acronym, at) || isJointBracketedAt(body, acronym, at) || isQualifiedAt(body, acronym, at);
187
+ return (isSeparatedAt(body, acronym, at) ||
188
+ isNamedBeforeAt(body, acronym, at) ||
189
+ isJointBracketedAt(body, acronym, at) ||
190
+ isQualifiedAt(body, acronym, at) ||
191
+ isPrefixedAt(body, acronym, at));
156
192
  };
157
193
  /**
158
194
  * 記号を = で定義する書き方(where N = number of cases, EH = total hours worked)。定義は記号の後ろの語。
@@ -294,6 +330,9 @@ export const termEntryAcronyms = (source) => {
294
330
  /** body の at にある略語が、その場で展開・定義されているか。語彙表から一度だけ組み立てて、略語ごとに呼ぶ。 */
295
331
  export const expansionAt = (words) => {
296
332
  const patterns = definitionPatterns(words);
297
- return (body, acronym, at) => isBracketedAt(body, acronym, at) || isDefinedAt(patterns, body, acronym, at) || isEqualsDefinedAt(body, acronym, at);
333
+ return (body, acronym, at) => isBracketedAt(body, acronym, at) ||
334
+ isDefinedAt(patterns, body, acronym, at) ||
335
+ isAlternativeAt(patterns, body, acronym, at) ||
336
+ isEqualsDefinedAt(body, acronym, at);
298
337
  };
299
338
  //# sourceMappingURL=acronym-expansion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"acronym-expansion.js","sourceRoot":"","sources":["../../src/detectors/acronym-expansion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD;;;;;;;;;;;;;;GAcG;AACH,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA,iBAAiB,CAAC;AACzC,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC;AACxD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC;AACzD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,OAAO,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AACzD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;AAC9D,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,KAAK,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AAC9D,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,QAAQ,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AAC9D,gFAAgF;AAChF,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,4BAA4B,EAAE,GAAG,CAAC,CAAC;AAClF,sFAAsF;AACtF,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,mCAAmC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3F,MAAM,MAAM,GAAG,gBAAgB,CAAC;AAEhC,kDAAkD;AAClD,MAAM,IAAI,GAAG,CAAC,CAAC;AAEf,+EAA+E;AAC/E,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAE5B,4DAA4D;AAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAA,qBAAqB,CAAC;AAEnD;;;GAGG;AACH,MAAM,SAAS,GAAG,CAAC,OAAe,EAAU,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAEhF,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAU,EAAE,CACtD,KAAK;KACF,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;KAC7B,IAAI,CAAC,EAAE,CAAC,CAAC;AAEd,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,OAAe,EAAW,EAAE;IAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM;SACjB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,IAAI,EAAE;SACN,KAAK,CAAC,MAAM,CAAC;SACb,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC7C,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAe,EAAW,EAAE;IACrE,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjE,OAAO,UAAU,CAAC,KAAK,CAAC,KAAK,OAAO,IAAI,WAAW,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC;AAC9F,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IAC3E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAC1G,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;IACxD,OAAO,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAC1F,CAAC,CAAC;AAEF,gFAAgF;AAChF,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IAC7E,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpF,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9G,OAAO,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC,CAAC;AAOF,MAAM,KAAK,GAAG,CAAC,KAAwB,EAAU,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAEtH,MAAM,kBAAkB,GAAG,CAAC,KAAsB,EAAsB,EAAE,CAAC,CAAC;IAC1E,MAAM,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,2BAA2B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,UAAU,MAAM,IAAI,gBAAgB,EAAE,IAAI,CAAC;IAC3H,MAAM,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,cAAc,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,IAAI,MAAM,EAAE,IAAI,CAAC;CAClG,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,WAAW,GAAG,CAAC,QAA4B,EAAE,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IACvG,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;IAC7G,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACrD,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;AAC7F,CAAC,CAAC;AAEF,qEAAqE;AACrE,MAAM,QAAQ,GAAG,oBAAoB,CAAC;AACtC,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,yBAAyB,QAAQ,MAAM,EAAE,GAAG,CAAC,CAAC;AACxF,MAAM,WAAW,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,QAAQ,QAAQ,sBAAsB,EAAE,GAAG,CAAC,CAAC;AAEtF,MAAM,WAAW,GAAG,UAAU,CAAC;AAE/B,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,IAAY,EAAW,EAAE,CAC/D,CAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC;AAExH;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,OAAe,EAAW,EAAE;IACpE,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvF,OAAO,OAAO,KAAK,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAClJ,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IAChF,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAChC,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAChG,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACnF,MAAM,KAAK,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC;IACjC,MAAM,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9H,OAAO,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,mEAAmE;AACnE,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,+BAA+B,IAAI,MAAM,EAAE,GAAG,CAAC,CAAC;AAEvF;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IAC3E,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACvE,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAChC,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;IACzF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACjE,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACxF,CAAC,CAAC;AAEF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE;IAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACtD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClF,IAAI,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAClH,OAAO,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AAC7J,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,iBAAiB,GAAG,yCAAyC,CAAC;AAEpE,MAAM,iBAAiB,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAU,EAAW,EAAE,CAC/E,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;AAElG;;;GAGG;AACH,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA,oBAAoB,CAAC;AAC5C,MAAM,MAAM,GAAG,WAAW,CAAC;AAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAA,sBAAsB,CAAC;AACnD,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAA,uBAAuB,CAAC;AACzD,0CAA0C;AAC1C,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,0BAA0B,IAAI,gCAAgC,EAAE,GAAG,CAAC,CAAC;AAC5G,wEAAwE;AACxE,MAAM,WAAW,GAAG,iBAAiB,CAAC;AACtC;;;GAGG;AACH,MAAM,SAAS,GAAG,IAAI,MAAM,CAC1B,MAAM,CAAC,GAAG,CAAA,UAAU,SAAS,qCAAqC,IAAI,gCAAgC,cAAc,KAAK,SAAS,WAAW,IAAI,OAAO,cAAc,oBAAoB,EAC1L,GAAG,CACJ,CAAC;AACF,MAAM,SAAS,GAAG,iBAAiB,CAAC;AACpC,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,IAAI,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;AAC1D,yGAAyG;AACzG,MAAM,QAAQ,GAAG,4BAA4B,CAAC;AAC9C,MAAM,UAAU,GAAG,QAAQ,CAAC;AAC5B,MAAM,aAAa,GAAG,eAAe,CAAC;AAEtC,wFAAwF;AACxF,MAAM,OAAO,GAAG,CAAC,IAAY,EAAY,EAAE;IACzC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACxG,OAAO,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;AAC5F,CAAC,CAAC;AAEF,+EAA+E;AAC/E,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,OAAe,EAAW,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAEzI,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,OAAe,EAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAExJ,MAAM,OAAO,GAAG,CAAC,GAAW,EAAY,EAAE,CACxC,GAAG;KACA,IAAI,EAAE;KACN,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;KACxB,KAAK,CAAC,GAAG,CAAC;KACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAEvD,qCAAqC;AACrC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAY,EAAE;IAC3C,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,KAAK,CAAC,MAAM,CACjB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAC5I,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAY,EAAE;IAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;IACpE,OAAO,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC5F,CAAC,CAAC;AAEF,6CAA6C;AAC7C,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,+BAA+B;AAC/B,MAAM,QAAQ,GAAG,CAAC,KAAwB,EAAE,KAAa,EAAY,EAAE;IACrE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IACnE,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;IAC9B,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAClG,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpG,OAAO,IAAI,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,KAAK,GAAG,+BAA+B,CAAC;AAC9C,MAAM,iBAAiB,GAAG,sBAAsB,CAAC;AAIjD,2CAA2C;AAC3C,MAAM,aAAa,GAAG,mCAAmC,CAAC;AAE1D,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,IAAY,EAAW,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;AAE/H,uDAAuD;AACvD,MAAM,aAAa,GAAG,CAAC,KAAwB,EAAY,EAAE,CAC3D,KAAK,CAAC,MAAM,CACV,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;IACb,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC;IAC9D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IACrE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;AACpF,CAAC,EACD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAC9B,CAAC,IAAI,CAAC;AAET,6DAA6D;AAC7D,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAAU,EAAE,CAC7D,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEnH,mEAAmE;AACnE,MAAM,QAAQ,GAAG,eAAe,CAAC;AAEjC,gEAAgE;AAChE,MAAM,UAAU,GAAG,CAAC,KAAwB,EAAY,EAAE;IACxD,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzC,OAAO,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACzG,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAE3B;;;GAGG;AACH,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA,oBAAoB,CAAC;AACrD,MAAM,aAAa,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,uCAAuC,aAAa,OAAO,aAAa,kCAAkC,EAAE,GAAG,CAAC,CAAC;AAC5J,MAAM,YAAY,GAAG,YAAY,CAAC;AAElC,2CAA2C;AAC3C,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAErG,yCAAyC;AACzC,MAAM,iBAAiB,GAAG,CAAC,KAAwB,EAAE,KAAa,EAAY,EAAE;IAC9E,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IACvE,IAAI,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC7G,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9G,OAAO,IAAI,KAAK,SAAS,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/F,CAAC,CAAC;AAEF,sFAAsF;AACtF,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAY,EAAE;IAClD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC;IACpE,OAAO,IAAI,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1F,CAAC,CAAC;AAOF,yDAAyD;AACzD,MAAM,WAAW,GAAyB;IACxC,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE;IAC3H;QACE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACjG,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;KAChE;IACD,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE;CAC3H,CAAC;AAEF,mDAAmD;AACnD,MAAM,SAAS,GAAG,CAAC,KAAwB,EAAE,IAAe,EAAY,EAAE;IACxE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IACpE,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AACjI,CAAC,CAAC;AAEF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,MAAc,EAAuB,EAAE;IACvE,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,OAAO,IAAI,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC,CAAC;AAIF,+DAA+D;AAC/D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAsB,EAAc,EAAE;IAChE,MAAM,QAAQ,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,IAAI,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;AACrJ,CAAC,CAAC"}
1
+ {"version":3,"file":"acronym-expansion.js","sourceRoot":"","sources":["../../src/detectors/acronym-expansion.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ type Span = {
2
+ readonly start: number;
3
+ readonly end: number;
4
+ };
5
+ /**
6
+ * The keywords a document's code (fenced blocks and inline code) writes in lower case, in capitals. Prose that writes a
7
+ * keyword of that code in capitals (a SELECT, the WHERE clause, with select and where in the code) names the keyword; it is
8
+ * not an acronym. A word the code too writes in capitals (`TTS`) is the acronym set as code, and gives nothing.
9
+ */
10
+ export declare const codeWords: (source: string) => Set<string>;
11
+ /**
12
+ * Capitals followed by a year in a link's text (([Jane Roe, FOSDEM 2024, 18:10](https://…))): the venue of a cited talk or
13
+ * paper, as a reference list names one, and the link leads to it. Outside a link, a year after capitals is not read so.
14
+ */
15
+ export declare const citedVenues: (source: string, links: readonly Span[]) => Set<string>;
16
+ /** Both: the capitals a document makes known, which undefined-acronym does not ask to spell out. */
17
+ export declare const knownByDocument: (source: string, links: readonly Span[]) => string[];
18
+ export {};
19
+ //# sourceMappingURL=acronym-known.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-known.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-known.ts"],"names":[],"mappings":"AAGA,KAAK,IAAI,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAW7D;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,QAAQ,MAAM,KAAG,GAAG,CAAC,MAAM,CAKpD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,IAAI,EAAE,KAAG,GAAG,CAAC,MAAM,CAM5E,CAAC;AAEJ,oGAAoG;AACpG,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,IAAI,EAAE,KAAG,MAAM,EAA2D,CAAC"}
@@ -0,0 +1,32 @@
1
+ // Words in capitals that a document itself makes known without spelling them out: a keyword of its code, a cited venue. Pure.
2
+ import { codeFences, codeSpans, withoutCodeBlocks } from "./code-fences.js";
3
+ /** A piece of code between spaces and brackets: a hyphen, a dot, a slash or an underscore keeps a name in one piece. */
4
+ const CODE_TOKEN = /[\w./-]+/gu;
5
+ /** A keyword: a token of letters only (select, from), not a name with parts (net-http-sspi, gsa.gov, --yjit, api_key). */
6
+ const KEYWORD = /^[A-Za-z]+$/u;
7
+ /** The text of an inline link ([text](url)) or of a reference link ([text][label]). */
8
+ const LINK_TEXT = /^\[([^\]]*)\][([]/u;
9
+ /** Capitals followed by a year: a venue and when it was held (FOSDEM 2024). */
10
+ const VENUE_YEAR = /(?<![\w&])([A-Z][A-Z\d]+) (?:19|20)\d{2}(?!\d)/gu;
11
+ /**
12
+ * The keywords a document's code (fenced blocks and inline code) writes in lower case, in capitals. Prose that writes a
13
+ * keyword of that code in capitals (a SELECT, the WHERE clause, with select and where in the code) names the keyword; it is
14
+ * not an acronym. A word the code too writes in capitals (`TTS`) is the acronym set as code, and gives nothing.
15
+ */
16
+ export const codeWords = (source) => {
17
+ const blocks = codeFences(source).flatMap((fence) => fence.lines);
18
+ const inline = codeSpans(withoutCodeBlocks(source)).map((span) => span.text);
19
+ const tokens = [...blocks, ...inline].flatMap((code) => code.match(CODE_TOKEN) ?? []);
20
+ return new Set(tokens.filter((token) => KEYWORD.test(token) && token !== token.toUpperCase()).map((token) => token.toUpperCase()));
21
+ };
22
+ /**
23
+ * Capitals followed by a year in a link's text (([Jane Roe, FOSDEM 2024, 18:10](https://…))): the venue of a cited talk or
24
+ * paper, as a reference list names one, and the link leads to it. Outside a link, a year after capitals is not read so.
25
+ */
26
+ export const citedVenues = (source, links) => new Set(links.flatMap((link) => {
27
+ const text = LINK_TEXT.exec(source.slice(link.start, link.end))?.[1] ?? "";
28
+ return [...text.matchAll(VENUE_YEAR)].flatMap((match) => (match[1] === undefined ? [] : [match[1]]));
29
+ }));
30
+ /** Both: the capitals a document makes known, which undefined-acronym does not ask to spell out. */
31
+ export const knownByDocument = (source, links) => [...codeWords(source), ...citedVenues(source, links)];
32
+ //# sourceMappingURL=acronym-known.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-known.js","sourceRoot":"","sources":["../../src/detectors/acronym-known.ts"],"names":[],"mappings":"AAAA,8HAA8H;AAC9H,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAI5E,wHAAwH;AACxH,MAAM,UAAU,GAAG,YAAY,CAAC;AAChC,0HAA0H;AAC1H,MAAM,OAAO,GAAG,cAAc,CAAC;AAC/B,uFAAuF;AACvF,MAAM,SAAS,GAAG,oBAAoB,CAAC;AACvC,+EAA+E;AAC/E,MAAM,UAAU,GAAG,kDAAkD,CAAC;AAEtE;;;;GAIG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAc,EAAe,EAAE;IACvD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACtF,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AACrI,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,KAAsB,EAAe,EAAE,CACjF,IAAI,GAAG,CACL,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;IACrB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3E,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvG,CAAC,CAAC,CACH,CAAC;AAEJ,oGAAoG;AACpG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAc,EAAE,KAAsB,EAAY,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 外のページへのリンクを 1 行に 1 つ並べた一覧(参考の一覧、謝辞)の、リンクの文字。リンク先のページの題名
3
+ * (- [NASA Fprime AI Policy](https://…)、- [User Timing API - Web APIs | MDN](https://…))で、書き手が展開を書き足せない。
4
+ * 文の中のリンク(following [NIST SP 800-61](https://…), as …)は書き手の言葉なので、略語をそのまま数える。
5
+ * 文書の中や手元のファイルへのリンク([README](./README.md))も題名ではない。
6
+ */
7
+ type Span = {
8
+ readonly start: number;
9
+ readonly end: number;
10
+ };
11
+ /** 1 行に 1 つ並べた外のページへのリンクの、文字の範囲。位置は source の上。 */
12
+ export declare const linkTitleSpans: (source: string, links: readonly Span[]) => Span[];
13
+ /**
14
+ * 名前を並べた一覧で、語だけの項目のすぐ下に、その語を名指す外のページへのリンクを入れ子にした語(ライセンスの一覧の GPL、WTFPL)。
15
+ * 語はリンク先のページの名前で、読み手はリンクから中身に行ける。題名が語を名指さないリンク(- AWS / - [Console](…))では数えない。
16
+ */
17
+ export declare const linkedListTerms: (source: string) => Set<string>;
18
+ export {};
19
+ //# sourceMappingURL=acronym-link.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-link.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-link.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,KAAK,IAAI,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAwB7D,kDAAkD;AAClD,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM,EAAE,OAAO,SAAS,IAAI,EAAE,KAAG,IAAI,EAIxE,CAAC;AAuBL;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,KAAG,GAAG,CAAC,MAAM,CAW1D,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * 外のページへのリンクを 1 行に 1 つ並べた一覧(参考の一覧、謝辞)の、リンクの文字。リンク先のページの題名
3
+ * (- [NASA Fprime AI Policy](https://…)、- [User Timing API - Web APIs | MDN](https://…))で、書き手が展開を書き足せない。
4
+ * 文の中のリンク(following [NIST SP 800-61](https://…), as …)は書き手の言葉なので、略語をそのまま数える。
5
+ * 文書の中や手元のファイルへのリンク([README](./README.md))も題名ではない。
6
+ */
7
+ const EXTERNAL = /^<?https?:\/\//iu;
8
+ const TEXT_END = "](";
9
+ /** リンクの前に書いてよいもの: 行頭の空白と、箇条書きの印。 */
10
+ const LINE_HEAD = /^[ \t]*(?:(?:[-*+]|\d+[.)])[ \t]+)?$/u;
11
+ /** リンクの後ろに書いてよいもの: 行末までの空白と句読点。 */
12
+ const LINE_TAIL = /^[ \t.,;。、]*(?:\n|$)/u;
13
+ /** リンクの文字の範囲。[文字](行き先) の形で、行き先が外のページのものだけ。 */
14
+ const externalTextOf = (source, link) => {
15
+ const written = source.slice(link.start, link.end);
16
+ const end = written.lastIndexOf(TEXT_END);
17
+ if (!written.startsWith("[") || end === -1 || !EXTERNAL.test(written.slice(end + TEXT_END.length)))
18
+ return undefined;
19
+ return { start: link.start + 1, end: link.start + end };
20
+ };
21
+ const standsAlone = (source, link) => {
22
+ const lineStart = source.lastIndexOf("\n", link.start - 1) + 1;
23
+ const lineEnd = source.indexOf("\n", link.end);
24
+ const tail = lineEnd === -1 ? source.slice(link.end) : source.slice(link.end, lineEnd + 1);
25
+ return LINE_HEAD.test(source.slice(lineStart, link.start)) && LINE_TAIL.test(tail);
26
+ };
27
+ /** 1 行に 1 つ並べた外のページへのリンクの、文字の範囲。位置は source の上。 */
28
+ export const linkTitleSpans = (source, links) => links.flatMap((link) => {
29
+ const text = externalTextOf(source, link);
30
+ return text !== undefined && standsAlone(source, link) ? [text] : [];
31
+ });
32
+ /** 語だけの箇条書きの項目(- GPL)と、その下に入れ子にした、外のページへのリンクだけの項目( - [GNU General Public License …](https://…))。 */
33
+ const TERM_ITEM = /^(?<indent>[ \t]*)(?:[-*+]|\d+[.)])[ \t]+(?<term>[A-Z][A-Za-z\d&-]*[A-Z\d])[ \t]*$/u;
34
+ const LINK_ITEM = /^(?<indent>[ \t]*)(?:[-*+]|\d+[.)])[ \t]+\[(?<title>[^\]\n]+)\]\(<?https?:\/\/[^)\s]+>?\)[ \t]*$/u;
35
+ /** 題名の名前の終わり。サイトの名前を添える区切り( | Open Source Initiative、 — CC BY 4.0)。 */
36
+ const TITLE_PART_END = /\s[|—–-]\s/u;
37
+ const CAPITALIZED = /^[A-Z]/u;
38
+ const wordsOf = (text) => text.split(/[\s-]+/u).filter((word) => word !== "");
39
+ /** 題名が語そのものを含む(About the WTFPL、… — CC BY 4.0)か、題名の名前の大文字で始まる語の頭文字が語の字で終わる(GNU General Public License)。 */
40
+ const titleNames = (title, term) => {
41
+ const termWords = wordsOf(term.toUpperCase());
42
+ const titleWords = wordsOf(title.toUpperCase());
43
+ const contains = titleWords.some((_, start) => termWords.every((word, offset) => titleWords[start + offset] === word));
44
+ const initials = wordsOf(title.split(TITLE_PART_END)[0] ?? "")
45
+ .filter((word) => CAPITALIZED.test(word))
46
+ .map((word) => word.charAt(0))
47
+ .join("");
48
+ return contains || initials.endsWith(term.replaceAll(/[&-]/gu, ""));
49
+ };
50
+ /**
51
+ * 名前を並べた一覧で、語だけの項目のすぐ下に、その語を名指す外のページへのリンクを入れ子にした語(ライセンスの一覧の GPL、WTFPL)。
52
+ * 語はリンク先のページの名前で、読み手はリンクから中身に行ける。題名が語を名指さないリンク(- AWS / - [Console](…))では数えない。
53
+ */
54
+ export const linkedListTerms = (source) => {
55
+ const lines = source.split(/\r?\n/u);
56
+ return new Set(lines.flatMap((line, index) => {
57
+ const term = TERM_ITEM.exec(line)?.groups;
58
+ const link = LINK_ITEM.exec(lines[index + 1] ?? "")?.groups;
59
+ if (term?.["term"] === undefined || link?.["title"] === undefined)
60
+ return [];
61
+ const nested = (link["indent"] ?? "").length > (term["indent"] ?? "").length;
62
+ return nested && titleNames(link["title"], term["term"]) ? [term["term"]] : [];
63
+ }));
64
+ };
65
+ //# sourceMappingURL=acronym-link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-link.js","sourceRoot":"","sources":["../../src/detectors/acronym-link.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** The acronyms that a sentence naming an abbreviation also writes out in full. */
2
+ export declare const spelledOutAcronyms: (sentences: readonly string[], mentions: readonly string[]) => Set<string>;
3
+ /** The other ways the text capitalises an acronym (TCoP for TCOP, TCOP for TCoP), each with two capitals or more. */
4
+ export declare const caseVariantsIn: (text: string, acronym: string) => string[];
5
+ //# sourceMappingURL=acronym-mention.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-mention.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-mention.ts"],"names":[],"mappings":"AA8BA,mFAAmF;AACnF,eAAO,MAAM,kBAAkB,GAAI,WAAW,SAAS,MAAM,EAAE,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,GAAG,CAAC,MAAM,CAKtG,CAAC;AAEJ,qHAAqH;AACrH,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,MAAM,EAIpE,CAAC"}
@@ -0,0 +1,34 @@
1
+ // Acronyms a sentence about abbreviations spells out in words (the abbreviation DOB … spell out the field to date of birth),
2
+ // and the other capitalisations of an acronym that a text writes (TCoP beside TCOP). Pure; the mention words come from the
3
+ // abbreviation-mention lexicon.
4
+ import { escapeRegExp } from "../orthography.js";
5
+ const ACRONYM = /(?<![\p{L}\p{N}])[A-Z][A-Z&-]*[A-Z](?![\p{L}\p{N}])/gu;
6
+ /** A word of two letters or more: the letters of a dotted form (B.B.C.) spell nothing out. */
7
+ const LATIN_WORD = /[A-Za-z]{2,}/gu;
8
+ const CAPITAL = /\p{Lu}/gu;
9
+ /** A capitalisation of an acronym keeps at least this many capitals (TCoP); fewer is a word (Tcop). */
10
+ const MIN_CAPITALS = 2;
11
+ const mentionsAbbreviation = (sentence, mentions) => {
12
+ const lowered = sentence.toLowerCase();
13
+ return mentions.some((mention) => lowered.includes(mention.toLowerCase()));
14
+ };
15
+ /** Whether some run of consecutive words, other than the acronym itself, has the acronym's letters as its initials. */
16
+ const spellsOutInWords = (sentence, acronym) => {
17
+ const letters = acronym.replaceAll(/[&-]/gu, "").toLowerCase();
18
+ const words = (sentence.match(LATIN_WORD) ?? []).filter((word) => word !== acronym.replaceAll(/[&-]/gu, ""));
19
+ return words.some((_, start) => words
20
+ .slice(start, start + letters.length)
21
+ .map((word) => word.charAt(0).toLowerCase())
22
+ .join("") === letters);
23
+ };
24
+ /** The acronyms that a sentence naming an abbreviation also writes out in full. */
25
+ export const spelledOutAcronyms = (sentences, mentions) => new Set(sentences
26
+ .filter((sentence) => mentionsAbbreviation(sentence, mentions))
27
+ .flatMap((sentence) => (sentence.match(ACRONYM) ?? []).filter((acronym) => spellsOutInWords(sentence, acronym))));
28
+ /** The other ways the text capitalises an acronym (TCoP for TCOP, TCOP for TCoP), each with two capitals or more. */
29
+ export const caseVariantsIn = (text, acronym) => {
30
+ const written = new RegExp(String.raw `(?<![\p{L}\p{N}])${escapeRegExp(acronym)}(?![\p{L}\p{N}])`, "giu");
31
+ const variants = [...text.matchAll(written)].map((match) => match[0]);
32
+ return [...new Set(variants)].filter((variant) => variant !== acronym && (variant.match(CAPITAL) ?? []).length >= MIN_CAPITALS);
33
+ };
34
+ //# sourceMappingURL=acronym-mention.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acronym-mention.js","sourceRoot":"","sources":["../../src/detectors/acronym-mention.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,2HAA2H;AAC3H,gCAAgC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,OAAO,GAAG,uDAAuD,CAAC;AACxE,8FAA8F;AAC9F,MAAM,UAAU,GAAG,gBAAgB,CAAC;AACpC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,uGAAuG;AACvG,MAAM,YAAY,GAAG,CAAC,CAAC;AAEvB,MAAM,oBAAoB,GAAG,CAAC,QAAgB,EAAE,QAA2B,EAAW,EAAE;IACtF,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;AAC7E,CAAC,CAAC;AAEF,uHAAuH;AACvH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAW,EAAE;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC/D,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7G,OAAO,KAAK,CAAC,IAAI,CACf,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,KAAK;SACF,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;SACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC3C,IAAI,CAAC,EAAE,CAAC,KAAK,OAAO,CAC1B,CAAC;AACJ,CAAC,CAAC;AAEF,mFAAmF;AACnF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,SAA4B,EAAE,QAA2B,EAAe,EAAE,CAC3G,IAAI,GAAG,CACL,SAAS;KACN,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;KAC9D,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CACnH,CAAC;AAEJ,qHAAqH;AACrH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,OAAe,EAAY,EAAE;IACxE,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAA,oBAAoB,YAAY,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACzG,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC;AAClI,CAAC,CAAC"}
@@ -11,6 +11,8 @@ type Span = {
11
11
  export type NameWords = {
12
12
  /** 会社名の後ろに大文字で書く法人の形(LLC、INC、SE、PTE、PTY)。 */
13
13
  readonly legalForms: readonly string[];
14
+ /** 日本の会社の形(株式会社、㈱。語彙表 company-form)。すぐ隣の英字の語は会社の名前(㈱ADEKA、DOWAホールディングス㈱)。 */
15
+ readonly companyForms: readonly string[];
14
16
  /** 名詞の前に置く限定の語(the、this、each)。文の頭で大文字になっても(The SE team)名前の語ではない。大小を問わずに照らす。 */
15
17
  readonly determiners: readonly string[];
16
18
  /** 法令・官報の引用の大文字の部分(45 CFR §164、21 USC §301、94/820/EC)。 */
@@ -32,9 +34,14 @@ export declare const oneOf: (words: readonly string[]) => string;
32
34
  /**
33
35
  * 名前の語のすぐ後ろ(読点を挟んでもよい)の法人の形と、その前の名前(JVLS, LLC、CPM Medical Consultants LLC、TRATON SE、
34
36
  * GitLab Singapore PTE. LTD.)。名前の語は空白だけで続くものを数え、読点で切れた先(CENTENE CORPORATION, MAYFLOWER …)は入れない。
35
- * 名前に続けて書いた括弧のすぐ後ろの形(SUNCALL(Guangzhou)CO.,LTD.)も名前の終わり。空白を挟んだ括弧(Section (A) LLC)は名前の一部ではない。形のすぐ前が限定の語なら名前ではない(The SE team)。
37
+ * 名前に続けて書いた括弧のすぐ後ろの形(SUNCALL(Guangzhou)CO.,LTD.、SUNCALL CO.,(H.K.)LTD.)も名前の終わり。日本語の文の中の「,」も区切り(JCI(THAILAND)CO.,LTD.)。空白を挟んだ括弧(Section (A) LLC)は名前の一部ではない。形のすぐ前が限定の語なら名前ではない(The SE team)。
36
38
  */
37
39
  export declare const companyNameSpans: (text: string, forms: readonly string[], determiners: readonly string[]) => Span[];
40
+ /**
41
+ * 日本の会社の形のすぐ後ろの英字の語(㈱ADEKA、株式会社ADEKA)と、片仮名を挟んですぐ前の英字の語(ADEKA株式会社、
42
+ * DOWAホールディングス㈱)。名前の英字で、説明を待つ略語ではない。範囲は英字の語だけ。
43
+ */
44
+ export declare const japaneseCompanyNameSpans: (text: string, forms: readonly string[]) => Span[];
38
45
  export declare const currencySymbolSpans: (text: string) => Span[];
39
46
  /**
40
47
  * 引用の形の中の、法令の名前(45 CFR Parts 160、CFR §164.524、21 USC §301、22 CCR §§ 12701、94/820/EC)。後ろに条(§、Part、
@@ -1 +1 @@
1
- {"version":3,"file":"acronym-name.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-name.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,KAAK,IAAI,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,+CAA+C;AAC/C,MAAM,MAAM,SAAS,GAAG;IACtB,6CAA6C;IAC7C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,0DAA0D;IAC1D,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,gDAAgD;IAChD,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,wEAAwE;IACxE,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,MAM5B,CAAC;AAUtB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,OAAO,SAAS,MAAM,EAAE,EAAE,aAAa,SAAS,MAAM,EAAE,KAAG,IAAI,EAU7G,CAAC;AAKF,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,IAAI,EAAoC,CAAC;AAE5F;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,QAAQ,SAAS,MAAM,EAAE,KAAG,IAAI,EAI3E,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EAKhF,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EACkD,CAAC;AAEnI,+FAA+F;AAC/F,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EAGyE,CAAC;AAE5J,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,SAAS,SAAS,MAAM,EAAE,KAAG,IAAI,EAC2B,CAAC;AAE9G,+DAA+D;AAC/D,eAAO,MAAM,WAAW,GACrB,OAAO,SAAS,MAChB,MAAM,MAAM,KAAG,IAAI,EAQnB,CAAC"}
1
+ {"version":3,"file":"acronym-name.d.ts","sourceRoot":"","sources":["../../src/detectors/acronym-name.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AAEH,KAAK,IAAI,GAAG;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7D,+CAA+C;AAC/C,MAAM,MAAM,SAAS,GAAG;IACtB,6CAA6C;IAC7C,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,6EAA6E;IAC7E,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,+EAA+E;IAC/E,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,0DAA0D;IAC1D,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,2DAA2D;IAC3D,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,8DAA8D;IAC9D,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,gDAAgD;IAChD,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3C,wEAAwE;IACxE,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,KAAK,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,MAM5B,CAAC;AAUtB;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,OAAO,SAAS,MAAM,EAAE,EAAE,aAAa,SAAS,MAAM,EAAE,KAAG,IAAI,EAU7G,CAAC;AASF;;;GAGG;AACH,eAAO,MAAM,wBAAwB,GAAI,MAAM,MAAM,EAAE,OAAO,SAAS,MAAM,EAAE,KAAG,IAAI,EAOrF,CAAC;AAKF,eAAO,MAAM,mBAAmB,GAAI,MAAM,MAAM,KAAG,IAAI,EAAoC,CAAC;AAE5F;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,QAAQ,SAAS,MAAM,EAAE,KAAG,IAAI,EAI3E,CAAC;AAEF,0FAA0F;AAC1F,eAAO,MAAM,gBAAgB,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EAKhF,CAAC;AAEF,+DAA+D;AAC/D,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EACkD,CAAC;AAEnI,+FAA+F;AAC/F,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,IAAI,EAGyE,CAAC;AAE5J,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,SAAS,SAAS,MAAM,EAAE,KAAG,IAAI,EAC2B,CAAC;AAE9G,+DAA+D;AAC/D,eAAO,MAAM,WAAW,GACrB,OAAO,SAAS,MAChB,MAAM,MAAM,KAAG,IAAI,EASnB,CAAC"}
@@ -12,27 +12,45 @@ export const oneOf = (words) => words.length === 0
12
12
  .map(escapeRegExp)
13
13
  .join("|")})`;
14
14
  const spansOf = (text, pattern) => [...text.matchAll(pattern)].map((match) => ({ start: match.index, end: match.index + match[0].length }));
15
- /** 名前の語。大文字で始まり、点・& ・アポストロフィ・ハイフンを含んでよい(BorrowMoney.com、PTE.、O'Neil)。 */
16
- const NAME_WORD = String.raw `\p{Lu}[\p{L}\p{N}&.'’-]*`;
15
+ /** 名前の語。大文字か、数字に続く字で始まり(37signals)、点・& ・アポストロフィ・ハイフンを含んでよい(BorrowMoney.com、PTE.、O'Neil)。 */
16
+ const NAME_WORD = String.raw `(?:\p{Lu}|\p{N}+\p{L})[\p{L}\p{N}&.'’-]*`;
17
17
  /** 法人の形の前に並ぶ名前の語の数の上限(CNH INDUSTRIAL SOUTH DAKOTA, INC.)。文の頭まで遡って別の語を名前に入れないため。 */
18
18
  const NAME_WORDS_MAX = 5;
19
19
  /**
20
20
  * 名前の語のすぐ後ろ(読点を挟んでもよい)の法人の形と、その前の名前(JVLS, LLC、CPM Medical Consultants LLC、TRATON SE、
21
21
  * GitLab Singapore PTE. LTD.)。名前の語は空白だけで続くものを数え、読点で切れた先(CENTENE CORPORATION, MAYFLOWER …)は入れない。
22
- * 名前に続けて書いた括弧のすぐ後ろの形(SUNCALL(Guangzhou)CO.,LTD.)も名前の終わり。空白を挟んだ括弧(Section (A) LLC)は名前の一部ではない。形のすぐ前が限定の語なら名前ではない(The SE team)。
22
+ * 名前に続けて書いた括弧のすぐ後ろの形(SUNCALL(Guangzhou)CO.,LTD.、SUNCALL CO.,(H.K.)LTD.)も名前の終わり。日本語の文の中の「,」も区切り(JCI(THAILAND)CO.,LTD.)。空白を挟んだ括弧(Section (A) LLC)は名前の一部ではない。形のすぐ前が限定の語なら名前ではない(The SE team)。
23
23
  */
24
24
  export const companyNameSpans = (text, forms, determiners) => {
25
25
  if (forms.length === 0)
26
26
  return [];
27
27
  const single = `${oneOf(forms)}${EDGE_AFTER}`;
28
28
  // 形を重ねて書く(PTE. LTD.、CO.,LTD.)。
29
- const form = String.raw `${single}(?:\.?,?[ \t]*${single})*`;
30
- const named = new RegExp(String.raw `${EDGE_BEFORE}(?:${NAME_WORD}[ \t]+){0,${NAME_WORDS_MAX - 1}}(?<last>${NAME_WORD})(?:,[ \t]*|[ \t]+)${form}`, "gu");
31
- const bracketed = new RegExp(String.raw `(?<=${NAME_WORD}[((][\p{L} ]+[))][ \t]*)${form}`, "gu");
29
+ const form = String.raw `${single}(?:\.?[,,]?[ \t]*${single})*`;
30
+ const named = new RegExp(String.raw `${EDGE_BEFORE}(?:${NAME_WORD}[ \t]+){0,${NAME_WORDS_MAX - 1}}(?<last>${NAME_WORD})(?:[,,][ \t]*|[ \t]+)${form}`, "gu");
31
+ const bracketed = new RegExp(String.raw `(?<=${NAME_WORD}[,,]?[((][\p{L}. ]+[))][ \t]*)${form}`, "gu");
32
32
  const determiner = new Set(determiners.map((word) => word.toLowerCase()));
33
33
  const names = [...text.matchAll(named)].filter((match) => !determiner.has((match.groups?.["last"] ?? "").toLowerCase()));
34
34
  return [...names.map((match) => ({ start: match.index, end: match.index + match[0].length })), ...spansOf(text, bracketed)];
35
35
  };
36
+ /** 日本の会社の名前の英字の語(ADEKA、DOWA)。英字の語と形のあいだに書く名前の続きの片仮名(DOWAホールディングス㈱ の ホールディングス)。 */
37
+ const LATIN_NAME = "[A-Za-zA-Za-z][A-Za-zA-Za-z0-90-9&&]*";
38
+ const KATAKANA_TAIL = "[ァ-ヺー・]*";
39
+ /** 英字だけの形(英語の Ltd)は英字の語に続けて書かれず、続いて見えれば語の一部。漢字か片仮名を含む形だけを読む。 */
40
+ const NOT_LATIN = /[^\p{Script=Latin}\p{P}\s]/u;
41
+ /**
42
+ * 日本の会社の形のすぐ後ろの英字の語(㈱ADEKA、株式会社ADEKA)と、片仮名を挟んですぐ前の英字の語(ADEKA株式会社、
43
+ * DOWAホールディングス㈱)。名前の英字で、説明を待つ略語ではない。範囲は英字の語だけ。
44
+ */
45
+ export const japaneseCompanyNameSpans = (text, forms) => {
46
+ const japanese = forms.filter((form) => NOT_LATIN.test(form));
47
+ if (japanese.length === 0)
48
+ return [];
49
+ const form = oneOf(japanese);
50
+ const after = new RegExp(`(?<=${form})${LATIN_NAME}`, "gu");
51
+ const before = new RegExp(`(?<![A-Za-zA-Za-z])${LATIN_NAME}(?=${KATAKANA_TAIL}${form})`, "gu");
52
+ return [...spansOf(text, after), ...spansOf(text, before)];
53
+ };
36
54
  /** 通貨の記号に付けた大文字(USD$、AU$10、US$ 5)。国や通貨の印で、略語ではない。 */
37
55
  const CURRENCY_PREFIX = new RegExp(String.raw `${EDGE_BEFORE}\p{Lu}{1,3}(?=[$€£¥])`, "gu");
38
56
  export const currencySymbolSpans = (text) => spansOf(text, CURRENCY_PREFIX);
@@ -65,6 +83,7 @@ export const capitalPhraseSpans = (text, phrases) => phrases.length === 0 ? [] :
65
83
  /** 文の中で、名前の部品と決まり文句として略語から外す大文字を含む範囲。語彙表から一度だけ組み立てて、文ごとに呼ぶ。 */
66
84
  export const nameSpansOf = (words) => (text) => [
67
85
  ...companyNameSpans(text, words.legalForms, words.determiners),
86
+ ...japaneseCompanyNameSpans(text, words.companyForms),
68
87
  ...currencySymbolSpans(text),
69
88
  ...citationSpans(text, words.citationSeries),
70
89
  ...carrierListSpans(text, words.carriers),
@@ -1 +1 @@
1
- {"version":3,"file":"acronym-name.js","sourceRoot":"","sources":["../../src/detectors/acronym-name.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acronym-name.js","sourceRoot":"","sources":["../../src/detectors/acronym-name.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { Token } from "../plugin.ts";
2
+ /** 連なりの尻の、宛先に付く語。surface はその語、start は文書全体の座標でその語の始まり。 */
3
+ export type AddresseeSuffix = {
4
+ readonly surface: string;
5
+ readonly start: number;
6
+ };
7
+ /**
8
+ * 漢字の連なり run(文書全体の座標で end に終わる)の尻が、宛先の名前に付く語(志木市役所市政情報課宛ての「宛」、御中)なら、
9
+ * その語。その語は名前の後ろに付くもので、名前の一部ではない。語の切れ目で始まるときだけ(宛ての語の頭が「宛」)。
10
+ * 折り返しをまたぐ語(御\n中)は span が surface より長いので、end から字数を引かず、end の直前の字を覆う語の始まりを使う。
11
+ */
12
+ export declare const trailingAddressee: (tokens: readonly Token[], end: number, run: string, suffixes: readonly string[]) => AddresseeSuffix | undefined;
13
+ //# sourceMappingURL=addressee-edge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addressee-edge.d.ts","sourceRoot":"","sources":["../../src/detectors/addressee-edge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAE1C,yDAAyD;AACzD,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,QAAQ,SAAS,KAAK,EAAE,EAAE,KAAK,MAAM,EAAE,KAAK,MAAM,EAAE,UAAU,SAAS,MAAM,EAAE,KAAG,eAAe,GAAG,SAKrI,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * 漢字の連なり run(文書全体の座標で end に終わる)の尻が、宛先の名前に付く語(志木市役所市政情報課宛ての「宛」、御中)なら、
3
+ * その語。その語は名前の後ろに付くもので、名前の一部ではない。語の切れ目で始まるときだけ(宛ての語の頭が「宛」)。
4
+ * 折り返しをまたぐ語(御\n中)は span が surface より長いので、end から字数を引かず、end の直前の字を覆う語の始まりを使う。
5
+ */
6
+ export const trailingAddressee = (tokens, end, run, suffixes) => {
7
+ const suffix = suffixes.find((word) => word !== "" && run.length > word.length && run.endsWith(word));
8
+ if (suffix === undefined)
9
+ return undefined;
10
+ const token = tokens.find((candidate) => candidate.span.start < end && end <= candidate.span.end);
11
+ return token !== undefined && token.surface.startsWith(suffix) ? { surface: suffix, start: token.span.start } : undefined;
12
+ };
13
+ //# sourceMappingURL=addressee-edge.js.map