chaffjs 0.29.0 → 0.31.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.
- package/dist/announced-count.d.ts +2 -0
- package/dist/announced-count.d.ts.map +1 -1
- package/dist/announced-count.js +4 -3
- package/dist/announced-count.js.map +1 -1
- package/dist/contacts/addresses.d.ts +21 -0
- package/dist/contacts/addresses.d.ts.map +1 -0
- package/dist/contacts/addresses.js +144 -0
- package/dist/contacts/addresses.js.map +1 -0
- package/dist/contacts/emails.d.ts +11 -0
- package/dist/contacts/emails.d.ts.map +1 -0
- package/dist/contacts/emails.js +51 -0
- package/dist/contacts/emails.js.map +1 -0
- package/dist/contacts/variants.d.ts +14 -0
- package/dist/contacts/variants.d.ts.map +1 -0
- package/dist/contacts/variants.js +25 -0
- package/dist/contacts/variants.js.map +1 -0
- package/dist/derived/battery-runtime.d.ts +85 -0
- package/dist/derived/battery-runtime.d.ts.map +1 -0
- package/dist/derived/battery-runtime.js +217 -0
- package/dist/derived/battery-runtime.js.map +1 -0
- package/dist/derived/period-counts.d.ts +48 -0
- package/dist/derived/period-counts.d.ts.map +1 -0
- package/dist/derived/period-counts.js +128 -0
- package/dist/derived/period-counts.js.map +1 -0
- package/dist/derived/session-hours.d.ts +26 -0
- package/dist/derived/session-hours.d.ts.map +1 -0
- package/dist/derived/session-hours.js +29 -0
- package/dist/derived/session-hours.js.map +1 -0
- package/dist/derived/time-lengths.d.ts +37 -0
- package/dist/derived/time-lengths.d.ts.map +1 -0
- package/dist/derived/time-lengths.js +171 -0
- package/dist/derived/time-lengths.js.map +1 -0
- package/dist/derived/unit-counts.d.ts +7 -0
- package/dist/derived/unit-counts.d.ts.map +1 -0
- package/dist/derived/unit-counts.js +13 -0
- package/dist/derived/unit-counts.js.map +1 -0
- package/dist/derived/use-interval.d.ts +33 -0
- package/dist/derived/use-interval.d.ts.map +1 -0
- package/dist/derived/use-interval.js +93 -0
- package/dist/derived/use-interval.js.map +1 -0
- package/dist/derived/working-hours.d.ts +36 -0
- package/dist/derived/working-hours.d.ts.map +1 -0
- package/dist/derived/working-hours.js +55 -0
- package/dist/derived/working-hours.js.map +1 -0
- package/dist/detectors/acronym-expansion.d.ts +1 -1
- package/dist/detectors/acronym-expansion.d.ts.map +1 -1
- package/dist/detectors/acronym-expansion.js +46 -2
- package/dist/detectors/acronym-expansion.js.map +1 -1
- package/dist/detectors/announced-count.d.ts.map +1 -1
- package/dist/detectors/announced-count.js +1 -0
- package/dist/detectors/announced-count.js.map +1 -1
- package/dist/detectors/capacity-runtime.d.ts +7 -0
- package/dist/detectors/capacity-runtime.d.ts.map +1 -0
- package/dist/detectors/capacity-runtime.js +98 -0
- package/dist/detectors/capacity-runtime.js.map +1 -0
- package/dist/detectors/capitalised-term.d.ts +44 -0
- package/dist/detectors/capitalised-term.d.ts.map +1 -0
- package/dist/detectors/capitalised-term.js +101 -0
- package/dist/detectors/capitalised-term.js.map +1 -0
- package/dist/detectors/contact-variant.d.ts +3 -0
- package/dist/detectors/contact-variant.d.ts.map +1 -0
- package/dist/detectors/contact-variant.js +21 -0
- package/dist/detectors/contact-variant.js.map +1 -0
- package/dist/detectors/count-over-capacity.d.ts +4 -0
- package/dist/detectors/count-over-capacity.d.ts.map +1 -0
- package/dist/detectors/count-over-capacity.js +26 -0
- package/dist/detectors/count-over-capacity.js.map +1 -0
- package/dist/detectors/date-outside-period.d.ts.map +1 -1
- package/dist/detectors/date-outside-period.js +5 -1
- package/dist/detectors/date-outside-period.js.map +1 -1
- package/dist/detectors/date-stamp-order.d.ts +3 -0
- package/dist/detectors/date-stamp-order.d.ts.map +1 -0
- package/dist/detectors/date-stamp-order.js +24 -0
- package/dist/detectors/date-stamp-order.js.map +1 -0
- package/dist/detectors/defined-term-form.d.ts.map +1 -1
- package/dist/detectors/defined-term-form.js +57 -7
- package/dist/detectors/defined-term-form.js.map +1 -1
- package/dist/detectors/definition-use.d.ts +1 -1
- package/dist/detectors/definition-use.d.ts.map +1 -1
- package/dist/detectors/definition-use.js +4 -2
- package/dist/detectors/definition-use.js.map +1 -1
- package/dist/detectors/derived-numbers.d.ts +11 -1
- package/dist/detectors/derived-numbers.d.ts.map +1 -1
- package/dist/detectors/derived-numbers.js +74 -20
- package/dist/detectors/derived-numbers.js.map +1 -1
- package/dist/detectors/due-date.d.ts.map +1 -1
- package/dist/detectors/due-date.js +6 -0
- package/dist/detectors/due-date.js.map +1 -1
- package/dist/detectors/en-shape.d.ts.map +1 -1
- package/dist/detectors/en-shape.js +7 -4
- package/dist/detectors/en-shape.js.map +1 -1
- package/dist/detectors/event-deadline.d.ts +3 -0
- package/dist/detectors/event-deadline.d.ts.map +1 -0
- package/dist/detectors/event-deadline.js +24 -0
- package/dist/detectors/event-deadline.js.map +1 -0
- package/dist/detectors/fact-consistency.d.ts +1 -1
- package/dist/detectors/fact-consistency.d.ts.map +1 -1
- package/dist/detectors/fact-consistency.js +52 -3
- package/dist/detectors/fact-consistency.js.map +1 -1
- package/dist/detectors/heading-case.d.ts +5 -2
- package/dist/detectors/heading-case.d.ts.map +1 -1
- package/dist/detectors/heading-case.js +12 -4
- package/dist/detectors/heading-case.js.map +1 -1
- package/dist/detectors/heading-echo.d.ts +5 -0
- package/dist/detectors/heading-echo.d.ts.map +1 -1
- package/dist/detectors/heading-echo.js +14 -1
- package/dist/detectors/heading-echo.js.map +1 -1
- package/dist/detectors/layout-code.d.ts +5 -0
- package/dist/detectors/layout-code.d.ts.map +1 -0
- package/dist/detectors/layout-code.js +124 -0
- package/dist/detectors/layout-code.js.map +1 -0
- package/dist/detectors/measured-facts.d.ts +8 -0
- package/dist/detectors/measured-facts.d.ts.map +1 -0
- package/dist/detectors/measured-facts.js +18 -0
- package/dist/detectors/measured-facts.js.map +1 -0
- package/dist/detectors/name-variant-model-codes.d.ts +11 -0
- package/dist/detectors/name-variant-model-codes.d.ts.map +1 -0
- package/dist/detectors/name-variant-model-codes.js +21 -0
- package/dist/detectors/name-variant-model-codes.js.map +1 -0
- package/dist/detectors/name-variant.d.ts.map +1 -1
- package/dist/detectors/name-variant.js +78 -10
- package/dist/detectors/name-variant.js.map +1 -1
- package/dist/detectors/orthographic-variant.d.ts.map +1 -1
- package/dist/detectors/orthographic-variant.js +62 -7
- package/dist/detectors/orthographic-variant.js.map +1 -1
- package/dist/detectors/orthography.d.ts.map +1 -1
- package/dist/detectors/orthography.js +12 -6
- package/dist/detectors/orthography.js.map +1 -1
- package/dist/detectors/party-order.d.ts +3 -0
- package/dist/detectors/party-order.d.ts.map +1 -0
- package/dist/detectors/party-order.js +46 -0
- package/dist/detectors/party-order.js.map +1 -0
- package/dist/detectors/quantity-range.d.ts +3 -0
- package/dist/detectors/quantity-range.d.ts.map +1 -0
- package/dist/detectors/quantity-range.js +35 -0
- package/dist/detectors/quantity-range.js.map +1 -0
- package/dist/detectors/range-band.d.ts +5 -0
- package/dist/detectors/range-band.d.ts.map +1 -0
- package/dist/detectors/range-band.js +80 -0
- package/dist/detectors/range-band.js.map +1 -0
- package/dist/detectors/registry/capacity-runtime-mismatch.d.ts +3 -0
- package/dist/detectors/registry/capacity-runtime-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/capacity-runtime-mismatch.js +3 -0
- package/dist/detectors/registry/capacity-runtime-mismatch.js.map +1 -0
- package/dist/detectors/registry/connection-time-short.d.ts +3 -0
- package/dist/detectors/registry/connection-time-short.d.ts.map +1 -0
- package/dist/detectors/registry/connection-time-short.js +3 -0
- package/dist/detectors/registry/connection-time-short.js.map +1 -0
- package/dist/detectors/registry/contact-variant.d.ts +3 -0
- package/dist/detectors/registry/contact-variant.d.ts.map +1 -0
- package/dist/detectors/registry/contact-variant.js +3 -0
- package/dist/detectors/registry/contact-variant.js.map +1 -0
- package/dist/detectors/registry/count-over-capacity.d.ts +3 -0
- package/dist/detectors/registry/count-over-capacity.d.ts.map +1 -0
- package/dist/detectors/registry/count-over-capacity.js +3 -0
- package/dist/detectors/registry/count-over-capacity.js.map +1 -0
- package/dist/detectors/registry/date-stamp-order.d.ts +3 -0
- package/dist/detectors/registry/date-stamp-order.d.ts.map +1 -0
- package/dist/detectors/registry/date-stamp-order.js +3 -0
- package/dist/detectors/registry/date-stamp-order.js.map +1 -0
- package/dist/detectors/registry/duration-product-mismatch.d.ts +3 -0
- package/dist/detectors/registry/duration-product-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/duration-product-mismatch.js +3 -0
- package/dist/detectors/registry/duration-product-mismatch.js.map +1 -0
- package/dist/detectors/registry/event-deadline.d.ts +3 -0
- package/dist/detectors/registry/event-deadline.d.ts.map +1 -0
- package/dist/detectors/registry/event-deadline.js +3 -0
- package/dist/detectors/registry/event-deadline.js.map +1 -0
- package/dist/detectors/registry/interval-count-mismatch.d.ts +3 -0
- package/dist/detectors/registry/interval-count-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/interval-count-mismatch.js +3 -0
- package/dist/detectors/registry/interval-count-mismatch.js.map +1 -0
- package/dist/detectors/registry/layout-code-mismatch.d.ts +3 -0
- package/dist/detectors/registry/layout-code-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/layout-code-mismatch.js +3 -0
- package/dist/detectors/registry/layout-code-mismatch.js.map +1 -0
- package/dist/detectors/registry/party-order.d.ts +3 -0
- package/dist/detectors/registry/party-order.d.ts.map +1 -0
- package/dist/detectors/registry/party-order.js +3 -0
- package/dist/detectors/registry/party-order.js.map +1 -0
- package/dist/detectors/registry/quantity-range.d.ts +3 -0
- package/dist/detectors/registry/quantity-range.d.ts.map +1 -0
- package/dist/detectors/registry/quantity-range.js +3 -0
- package/dist/detectors/registry/quantity-range.js.map +1 -0
- package/dist/detectors/registry/range-band-mismatch.d.ts +3 -0
- package/dist/detectors/registry/range-band-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/range-band-mismatch.js +3 -0
- package/dist/detectors/registry/range-band-mismatch.js.map +1 -0
- package/dist/detectors/registry/rent-multiple-mismatch.d.ts +3 -0
- package/dist/detectors/registry/rent-multiple-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/rent-multiple-mismatch.js +3 -0
- package/dist/detectors/registry/rent-multiple-mismatch.js.map +1 -0
- package/dist/detectors/registry/requirement-lists.d.ts +3 -0
- package/dist/detectors/registry/requirement-lists.d.ts.map +1 -0
- package/dist/detectors/registry/requirement-lists.js +3 -0
- package/dist/detectors/registry/requirement-lists.js.map +1 -0
- package/dist/detectors/registry/return-type.d.ts +3 -0
- package/dist/detectors/registry/return-type.d.ts.map +1 -0
- package/dist/detectors/registry/return-type.js +3 -0
- package/dist/detectors/registry/return-type.js.map +1 -0
- package/dist/detectors/registry/scaled-quantity-mismatch.d.ts +3 -0
- package/dist/detectors/registry/scaled-quantity-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/scaled-quantity-mismatch.js +3 -0
- package/dist/detectors/registry/scaled-quantity-mismatch.js.map +1 -0
- package/dist/detectors/registry/step-time-sum-mismatch.d.ts +3 -0
- package/dist/detectors/registry/step-time-sum-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/step-time-sum-mismatch.js +3 -0
- package/dist/detectors/registry/step-time-sum-mismatch.js.map +1 -0
- package/dist/detectors/registry/time-range-reversed.d.ts +3 -0
- package/dist/detectors/registry/time-range-reversed.d.ts.map +1 -0
- package/dist/detectors/registry/time-range-reversed.js +3 -0
- package/dist/detectors/registry/time-range-reversed.js.map +1 -0
- package/dist/detectors/registry/unlisted-item-used.d.ts +3 -0
- package/dist/detectors/registry/unlisted-item-used.d.ts.map +1 -0
- package/dist/detectors/registry/unlisted-item-used.js +3 -0
- package/dist/detectors/registry/unlisted-item-used.js.map +1 -0
- package/dist/detectors/registry/walk-time-distance-mismatch.d.ts +3 -0
- package/dist/detectors/registry/walk-time-distance-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/walk-time-distance-mismatch.js +3 -0
- package/dist/detectors/registry/walk-time-distance-mismatch.js.map +1 -0
- package/dist/detectors/rent-multiple-mismatch.d.ts +3 -0
- package/dist/detectors/rent-multiple-mismatch.d.ts.map +1 -0
- package/dist/detectors/rent-multiple-mismatch.js +39 -0
- package/dist/detectors/rent-multiple-mismatch.js.map +1 -0
- package/dist/detectors/requirement-lists.d.ts +3 -0
- package/dist/detectors/requirement-lists.d.ts.map +1 -0
- package/dist/detectors/requirement-lists.js +46 -0
- package/dist/detectors/requirement-lists.js.map +1 -0
- package/dist/detectors/return-type.d.ts +3 -0
- package/dist/detectors/return-type.d.ts.map +1 -0
- package/dist/detectors/return-type.js +24 -0
- package/dist/detectors/return-type.js.map +1 -0
- package/dist/detectors/scaled-quantity.d.ts +3 -0
- package/dist/detectors/scaled-quantity.d.ts.map +1 -0
- package/dist/detectors/scaled-quantity.js +37 -0
- package/dist/detectors/scaled-quantity.js.map +1 -0
- package/dist/detectors/signals.d.ts.map +1 -1
- package/dist/detectors/signals.js +3 -1
- package/dist/detectors/signals.js.map +1 -1
- package/dist/detectors/step-time-sum.d.ts +3 -0
- package/dist/detectors/step-time-sum.d.ts.map +1 -0
- package/dist/detectors/step-time-sum.js +46 -0
- package/dist/detectors/step-time-sum.js.map +1 -0
- package/dist/detectors/structure-tree.d.ts +2 -0
- package/dist/detectors/structure-tree.d.ts.map +1 -1
- package/dist/detectors/structure-tree.js +31 -6
- package/dist/detectors/structure-tree.js.map +1 -1
- package/dist/detectors/structure.js +1 -1
- package/dist/detectors/structure.js.map +1 -1
- package/dist/detectors/technical-docs.d.ts +5 -0
- package/dist/detectors/technical-docs.d.ts.map +1 -1
- package/dist/detectors/technical-docs.js +12 -0
- package/dist/detectors/technical-docs.js.map +1 -1
- package/dist/detectors/time-order.d.ts +2 -0
- package/dist/detectors/time-order.d.ts.map +1 -1
- package/dist/detectors/time-order.js +33 -5
- package/dist/detectors/time-order.js.map +1 -1
- package/dist/detectors/undefined-term.d.ts.map +1 -1
- package/dist/detectors/undefined-term.js +19 -3
- package/dist/detectors/undefined-term.js.map +1 -1
- package/dist/detectors/unit-consistency.d.ts +1 -1
- package/dist/detectors/unit-consistency.d.ts.map +1 -1
- package/dist/detectors/unit-consistency.js +46 -38
- package/dist/detectors/unit-consistency.js.map +1 -1
- package/dist/detectors/unlisted-items.d.ts +3 -0
- package/dist/detectors/unlisted-items.d.ts.map +1 -0
- package/dist/detectors/unlisted-items.js +57 -0
- package/dist/detectors/unlisted-items.js.map +1 -0
- package/dist/detectors/use-count-words.d.ts +8 -0
- package/dist/detectors/use-count-words.d.ts.map +1 -0
- package/dist/detectors/use-count-words.js +20 -0
- package/dist/detectors/use-count-words.js.map +1 -0
- package/dist/detectors/use-interval.d.ts +3 -0
- package/dist/detectors/use-interval.d.ts.map +1 -0
- package/dist/detectors/use-interval.js +39 -0
- package/dist/detectors/use-interval.js.map +1 -0
- package/dist/detectors/walk-time-distance-mismatch.d.ts +4 -0
- package/dist/detectors/walk-time-distance-mismatch.d.ts.map +1 -0
- package/dist/detectors/walk-time-distance-mismatch.js +38 -0
- package/dist/detectors/walk-time-distance-mismatch.js.map +1 -0
- package/dist/document.d.ts.map +1 -1
- package/dist/document.js +4 -1
- package/dist/document.js.map +1 -1
- package/dist/facts/approximate-tolerance.d.ts +7 -0
- package/dist/facts/approximate-tolerance.d.ts.map +1 -0
- package/dist/facts/approximate-tolerance.js +16 -0
- package/dist/facts/approximate-tolerance.js.map +1 -0
- package/dist/facts/item-amounts.d.ts +18 -0
- package/dist/facts/item-amounts.d.ts.map +1 -0
- package/dist/facts/item-amounts.js +67 -0
- package/dist/facts/item-amounts.js.map +1 -0
- package/dist/facts/labelled-facts.d.ts +4 -0
- package/dist/facts/labelled-facts.d.ts.map +1 -1
- package/dist/facts/labelled-facts.js +21 -6
- package/dist/facts/labelled-facts.js.map +1 -1
- package/dist/facts/measure-units.d.ts +5 -0
- package/dist/facts/measure-units.d.ts.map +1 -0
- package/dist/facts/measure-units.js +28 -0
- package/dist/facts/measure-units.js.map +1 -0
- package/dist/facts/measures.d.ts +23 -4
- package/dist/facts/measures.d.ts.map +1 -1
- package/dist/facts/measures.js +68 -19
- package/dist/facts/measures.js.map +1 -1
- package/dist/facts/retention-periods.d.ts +51 -0
- package/dist/facts/retention-periods.d.ts.map +1 -0
- package/dist/facts/retention-periods.js +148 -0
- package/dist/facts/retention-periods.js.map +1 -0
- package/dist/facts/table-facts.d.ts +2 -0
- package/dist/facts/table-facts.d.ts.map +1 -1
- package/dist/facts/table-facts.js +2 -0
- package/dist/facts/table-facts.js.map +1 -1
- package/dist/facts/unit-conflicts.d.ts +3 -2
- package/dist/facts/unit-conflicts.d.ts.map +1 -1
- package/dist/facts/unit-conflicts.js +15 -7
- package/dist/facts/unit-conflicts.js.map +1 -1
- package/dist/facts/unit-equivalents.d.ts +13 -0
- package/dist/facts/unit-equivalents.d.ts.map +1 -0
- package/dist/facts/unit-equivalents.js +56 -0
- package/dist/facts/unit-equivalents.js.map +1 -0
- package/dist/facts/unit-tolerance.d.ts +4 -0
- package/dist/facts/unit-tolerance.d.ts.map +1 -0
- package/dist/facts/unit-tolerance.js +13 -0
- package/dist/facts/unit-tolerance.js.map +1 -0
- package/dist/facts/unit-word.d.ts +8 -0
- package/dist/facts/unit-word.d.ts.map +1 -0
- package/dist/facts/unit-word.js +34 -0
- package/dist/facts/unit-word.js.map +1 -0
- package/dist/facts/written-precision.d.ts +10 -0
- package/dist/facts/written-precision.d.ts.map +1 -0
- package/dist/facts/written-precision.js +20 -0
- package/dist/facts/written-precision.js.map +1 -0
- package/dist/kana-spelling.d.ts +12 -0
- package/dist/kana-spelling.d.ts.map +1 -1
- package/dist/kana-spelling.js +23 -0
- package/dist/kana-spelling.js.map +1 -1
- package/dist/model-codes.d.ts +23 -0
- package/dist/model-codes.d.ts.map +1 -0
- package/dist/model-codes.js +81 -0
- package/dist/model-codes.js.map +1 -0
- package/dist/name-spelling-chars.d.ts +16 -0
- package/dist/name-spelling-chars.d.ts.map +1 -0
- package/dist/name-spelling-chars.js +14 -0
- package/dist/name-spelling-chars.js.map +1 -0
- package/dist/name-variants.d.ts +8 -2
- package/dist/name-variants.d.ts.map +1 -1
- package/dist/name-variants.js +72 -7
- package/dist/name-variants.js.map +1 -1
- package/dist/name-word-order.d.ts +49 -0
- package/dist/name-word-order.d.ts.map +1 -0
- package/dist/name-word-order.js +114 -0
- package/dist/name-word-order.js.map +1 -0
- package/dist/phone-numbers.d.ts.map +1 -1
- package/dist/phone-numbers.js +22 -5
- package/dist/phone-numbers.js.map +1 -1
- package/dist/place-names.d.ts +12 -5
- package/dist/place-names.d.ts.map +1 -1
- package/dist/place-names.js +34 -14
- package/dist/place-names.js.map +1 -1
- package/dist/plugin.d.ts +12 -0
- package/dist/plugin.d.ts.map +1 -1
- package/dist/preamble-paragraphs.d.ts +2 -1
- package/dist/preamble-paragraphs.d.ts.map +1 -1
- package/dist/preamble-paragraphs.js +16 -1
- package/dist/preamble-paragraphs.js.map +1 -1
- package/dist/profile/parse.d.ts.map +1 -1
- package/dist/profile/parse.js +11 -0
- package/dist/profile/parse.js.map +1 -1
- package/dist/return-type.d.ts +33 -0
- package/dist/return-type.d.ts.map +1 -0
- package/dist/return-type.js +302 -0
- package/dist/return-type.js.map +1 -0
- package/dist/spacing-code.d.ts +6 -0
- package/dist/spacing-code.d.ts.map +1 -0
- package/dist/spacing-code.js +16 -0
- package/dist/spacing-code.js.map +1 -0
- package/dist/structure/amount-range.d.ts +2 -2
- package/dist/structure/amount-range.d.ts.map +1 -1
- package/dist/structure/amount-range.js +12 -5
- package/dist/structure/amount-range.js.map +1 -1
- package/dist/structure/capacity-count.d.ts +59 -0
- package/dist/structure/capacity-count.d.ts.map +1 -0
- package/dist/structure/capacity-count.js +118 -0
- package/dist/structure/capacity-count.js.map +1 -0
- package/dist/structure/connection-times.d.ts +56 -0
- package/dist/structure/connection-times.d.ts.map +1 -0
- package/dist/structure/connection-times.js +165 -0
- package/dist/structure/connection-times.js.map +1 -0
- package/dist/structure/counted-amounts.d.ts +6 -0
- package/dist/structure/counted-amounts.d.ts.map +1 -1
- package/dist/structure/counted-amounts.js +4 -4
- package/dist/structure/counted-amounts.js.map +1 -1
- package/dist/structure/date-order-tie.d.ts +13 -0
- package/dist/structure/date-order-tie.d.ts.map +1 -0
- package/dist/structure/date-order-tie.js +61 -0
- package/dist/structure/date-order-tie.js.map +1 -0
- package/dist/structure/date-order.d.ts +2 -2
- package/dist/structure/date-order.d.ts.map +1 -1
- package/dist/structure/date-order.js +26 -9
- package/dist/structure/date-order.js.map +1 -1
- package/dist/structure/date-outside-period.d.ts +8 -0
- package/dist/structure/date-outside-period.d.ts.map +1 -1
- package/dist/structure/date-outside-period.js +52 -3
- package/dist/structure/date-outside-period.js.map +1 -1
- package/dist/structure/date-range.d.ts +6 -2
- package/dist/structure/date-range.d.ts.map +1 -1
- package/dist/structure/date-range.js +37 -9
- package/dist/structure/date-range.js.map +1 -1
- package/dist/structure/deadline-after-event.d.ts +23 -0
- package/dist/structure/deadline-after-event.d.ts.map +1 -0
- package/dist/structure/deadline-after-event.js +42 -0
- package/dist/structure/deadline-after-event.js.map +1 -0
- package/dist/structure/definition-use.d.ts +1 -1
- package/dist/structure/definition-use.d.ts.map +1 -1
- package/dist/structure/definition-use.js +55 -2
- package/dist/structure/definition-use.js.map +1 -1
- package/dist/structure/due-date.d.ts.map +1 -1
- package/dist/structure/due-date.js +5 -27
- package/dist/structure/due-date.js.map +1 -1
- package/dist/structure/labelled-date-order.d.ts +38 -0
- package/dist/structure/labelled-date-order.d.ts.map +1 -0
- package/dist/structure/labelled-date-order.js +41 -0
- package/dist/structure/labelled-date-order.js.map +1 -0
- package/dist/structure/layout-codes.d.ts +68 -0
- package/dist/structure/layout-codes.d.ts.map +1 -0
- package/dist/structure/layout-codes.js +161 -0
- package/dist/structure/layout-codes.js.map +1 -0
- package/dist/structure/leg-times.d.ts +2 -0
- package/dist/structure/leg-times.d.ts.map +1 -1
- package/dist/structure/leg-times.js +13 -0
- package/dist/structure/leg-times.js.map +1 -1
- package/dist/structure/measured-amounts.d.ts +17 -0
- package/dist/structure/measured-amounts.d.ts.map +1 -0
- package/dist/structure/measured-amounts.js +110 -0
- package/dist/structure/measured-amounts.js.map +1 -0
- package/dist/structure/party-order.d.ts +33 -0
- package/dist/structure/party-order.d.ts.map +1 -0
- package/dist/structure/party-order.js +79 -0
- package/dist/structure/party-order.js.map +1 -0
- package/dist/structure/quantity-range.d.ts +8 -0
- package/dist/structure/quantity-range.d.ts.map +1 -0
- package/dist/structure/quantity-range.js +36 -0
- package/dist/structure/quantity-range.js.map +1 -0
- package/dist/structure/range-bands.d.ts +75 -0
- package/dist/structure/range-bands.d.ts.map +1 -0
- package/dist/structure/range-bands.js +244 -0
- package/dist/structure/range-bands.js.map +1 -0
- package/dist/structure/rent-multiple.d.ts +76 -0
- package/dist/structure/rent-multiple.d.ts.map +1 -0
- package/dist/structure/rent-multiple.js +186 -0
- package/dist/structure/rent-multiple.js.map +1 -0
- package/dist/structure/requirement-lists.d.ts +37 -0
- package/dist/structure/requirement-lists.d.ts.map +1 -0
- package/dist/structure/requirement-lists.js +89 -0
- package/dist/structure/requirement-lists.js.map +1 -0
- package/dist/structure/scaled-quantities.d.ts +50 -0
- package/dist/structure/scaled-quantities.d.ts.map +1 -0
- package/dist/structure/scaled-quantities.js +153 -0
- package/dist/structure/scaled-quantities.js.map +1 -0
- package/dist/structure/stamp-order.d.ts +16 -0
- package/dist/structure/stamp-order.d.ts.map +1 -0
- package/dist/structure/stamp-order.js +78 -0
- package/dist/structure/stamp-order.js.map +1 -0
- package/dist/structure/step-times.d.ts +49 -0
- package/dist/structure/step-times.d.ts.map +1 -0
- package/dist/structure/step-times.js +128 -0
- package/dist/structure/step-times.js.map +1 -0
- package/dist/structure/term-deadline.d.ts +19 -0
- package/dist/structure/term-deadline.d.ts.map +1 -0
- package/dist/structure/term-deadline.js +28 -0
- package/dist/structure/term-deadline.js.map +1 -0
- package/dist/structure/time-order.d.ts +21 -0
- package/dist/structure/time-order.d.ts.map +1 -1
- package/dist/structure/time-order.js +5 -6
- package/dist/structure/time-order.js.map +1 -1
- package/dist/structure/time-range.d.ts +16 -0
- package/dist/structure/time-range.d.ts.map +1 -0
- package/dist/structure/time-range.js +57 -0
- package/dist/structure/time-range.js.map +1 -0
- package/dist/structure/total-line.d.ts +16 -0
- package/dist/structure/total-line.d.ts.map +1 -0
- package/dist/structure/total-line.js +44 -0
- package/dist/structure/total-line.js.map +1 -0
- package/dist/structure/total.d.ts +7 -1
- package/dist/structure/total.d.ts.map +1 -1
- package/dist/structure/total.js +28 -5
- package/dist/structure/total.js.map +1 -1
- package/dist/structure/unlisted-items.d.ts +70 -0
- package/dist/structure/unlisted-items.d.ts.map +1 -0
- package/dist/structure/unlisted-items.js +152 -0
- package/dist/structure/unlisted-items.js.map +1 -0
- package/dist/structure/version-order.d.ts +2 -0
- package/dist/structure/version-order.d.ts.map +1 -1
- package/dist/structure/version-order.js +10 -0
- package/dist/structure/version-order.js.map +1 -1
- package/dist/structure/walk-time.d.ts +87 -0
- package/dist/structure/walk-time.d.ts.map +1 -0
- package/dist/structure/walk-time.js +195 -0
- package/dist/structure/walk-time.js.map +1 -0
- package/dist/surname-near.d.ts +6 -0
- package/dist/surname-near.d.ts.map +1 -0
- package/dist/surname-near.js +31 -0
- package/dist/surname-near.js.map +1 -0
- package/dist/table-cells.d.ts +13 -0
- package/dist/table-cells.d.ts.map +1 -0
- package/dist/table-cells.js +36 -0
- package/dist/table-cells.js.map +1 -0
- package/dist/table-names.d.ts +42 -0
- package/dist/table-names.d.ts.map +1 -0
- package/dist/table-names.js +94 -0
- package/dist/table-names.js.map +1 -0
- package/package.json +3 -3
- package/profiles/listing.yaml +20 -0
- package/rules/announced-count-mismatch.yaml +2 -2
- package/rules/capacity-runtime-mismatch.yaml +66 -0
- package/rules/connection-time-short.yaml +52 -0
- package/rules/contact-variant.yaml +76 -0
- package/rules/count-over-capacity.yaml +55 -0
- package/rules/date-outside-period.yaml +4 -4
- package/rules/date-stamp-order.yaml +82 -0
- package/rules/deadline-after-event.yaml +67 -0
- package/rules/defined-name-repeated.yaml +2 -2
- package/rules/due-before-issue.yaml +11 -7
- package/rules/duration-mismatch.yaml +7 -4
- package/rules/duration-product-mismatch.yaml +73 -0
- package/rules/fact-conflict.yaml +9 -4
- package/rules/heading-echo.yaml +2 -2
- package/rules/interval-count-mismatch.yaml +54 -0
- package/rules/latin-spacing.yaml +2 -2
- package/rules/layout-code-mismatch.yaml +68 -0
- package/rules/name-variant.yaml +14 -2
- package/rules/no-em-dash.yaml +2 -2
- package/rules/party-order.yaml +84 -0
- package/rules/preamble-length.yaml +2 -2
- package/rules/quantity-range-reversed.yaml +53 -0
- package/rules/range-band-mismatch.yaml +70 -0
- package/rules/rent-multiple-mismatch.yaml +61 -0
- package/rules/required-listed-as-preferred.yaml +102 -0
- package/rules/return-type-mismatch.yaml +79 -0
- package/rules/scaled-quantity-mismatch.yaml +69 -0
- package/rules/step-time-sum-mismatch.yaml +65 -0
- package/rules/time-range-reversed.yaml +48 -0
- package/rules/title-case-consistency.yaml +2 -2
- package/rules/total-mismatch.yaml +2 -2
- package/rules/undefined-term.yaml +21 -7
- package/rules/unit-mismatch.yaml +12 -4
- package/rules/unlisted-item-used.yaml +90 -0
- package/rules/unused-definition.yaml +2 -2
- package/rules/use-before-definition.yaml +2 -2
- package/rules/walk-time-distance-mismatch.yaml +55 -0
- package/src/announced-count.ts +6 -3
- package/src/contacts/addresses.ts +179 -0
- package/src/contacts/emails.ts +63 -0
- package/src/contacts/variants.ts +33 -0
- package/src/derived/battery-runtime.ts +284 -0
- package/src/derived/period-counts.ts +178 -0
- package/src/derived/session-hours.ts +62 -0
- package/src/derived/time-lengths.ts +229 -0
- package/src/derived/unit-counts.ts +18 -0
- package/src/derived/use-interval.ts +151 -0
- package/src/derived/working-hours.ts +97 -0
- package/src/detectors/acronym-expansion.ts +57 -2
- package/src/detectors/announced-count.ts +1 -0
- package/src/detectors/capacity-runtime.ts +128 -0
- package/src/detectors/capitalised-term.ts +147 -0
- package/src/detectors/contact-variant.ts +24 -0
- package/src/detectors/count-over-capacity.ts +37 -0
- package/src/detectors/date-outside-period.ts +5 -1
- package/src/detectors/date-stamp-order.ts +28 -0
- package/src/detectors/defined-term-form.ts +63 -7
- package/src/detectors/definition-use.ts +6 -2
- package/src/detectors/derived-numbers.ts +97 -24
- package/src/detectors/due-date.ts +10 -2
- package/src/detectors/en-shape.ts +11 -4
- package/src/detectors/event-deadline.ts +29 -0
- package/src/detectors/fact-consistency.ts +64 -3
- package/src/detectors/heading-case.ts +13 -4
- package/src/detectors/heading-echo.ts +17 -1
- package/src/detectors/layout-code.ts +174 -0
- package/src/detectors/measured-facts.ts +20 -0
- package/src/detectors/name-variant-model-codes.ts +27 -0
- package/src/detectors/name-variant.ts +99 -15
- package/src/detectors/orthographic-variant.ts +78 -9
- package/src/detectors/orthography.ts +16 -6
- package/src/detectors/party-order.ts +50 -0
- package/src/detectors/quantity-range.ts +47 -0
- package/src/detectors/range-band.ts +125 -0
- package/src/detectors/registry/capacity-runtime-mismatch.ts +4 -0
- package/src/detectors/registry/connection-time-short.ts +4 -0
- package/src/detectors/registry/contact-variant.ts +4 -0
- package/src/detectors/registry/count-over-capacity.ts +4 -0
- package/src/detectors/registry/date-stamp-order.ts +4 -0
- package/src/detectors/registry/duration-product-mismatch.ts +4 -0
- package/src/detectors/registry/event-deadline.ts +4 -0
- package/src/detectors/registry/interval-count-mismatch.ts +4 -0
- package/src/detectors/registry/layout-code-mismatch.ts +4 -0
- package/src/detectors/registry/party-order.ts +4 -0
- package/src/detectors/registry/quantity-range.ts +4 -0
- package/src/detectors/registry/range-band-mismatch.ts +4 -0
- package/src/detectors/registry/rent-multiple-mismatch.ts +4 -0
- package/src/detectors/registry/requirement-lists.ts +4 -0
- package/src/detectors/registry/return-type.ts +4 -0
- package/src/detectors/registry/scaled-quantity-mismatch.ts +4 -0
- package/src/detectors/registry/step-time-sum-mismatch.ts +4 -0
- package/src/detectors/registry/time-range-reversed.ts +4 -0
- package/src/detectors/registry/unlisted-item-used.ts +4 -0
- package/src/detectors/registry/walk-time-distance-mismatch.ts +4 -0
- package/src/detectors/rent-multiple-mismatch.ts +56 -0
- package/src/detectors/requirement-lists.ts +65 -0
- package/src/detectors/return-type.ts +30 -0
- package/src/detectors/scaled-quantity.ts +49 -0
- package/src/detectors/signals.ts +3 -1
- package/src/detectors/step-time-sum.ts +55 -0
- package/src/detectors/structure-tree.ts +42 -6
- package/src/detectors/structure.ts +1 -1
- package/src/detectors/technical-docs.ts +12 -0
- package/src/detectors/time-order.ts +45 -6
- package/src/detectors/undefined-term.ts +20 -3
- package/src/detectors/unit-consistency.ts +50 -38
- package/src/detectors/unlisted-items.ts +72 -0
- package/src/detectors/use-count-words.ts +32 -0
- package/src/detectors/use-interval.ts +51 -0
- package/src/detectors/walk-time-distance-mismatch.ts +45 -0
- package/src/document.ts +4 -1
- package/src/facts/approximate-tolerance.ts +19 -0
- package/src/facts/item-amounts.ts +94 -0
- package/src/facts/labelled-facts.ts +29 -7
- package/src/facts/measure-units.ts +31 -0
- package/src/facts/measures.ts +113 -25
- package/src/facts/retention-periods.ts +216 -0
- package/src/facts/table-facts.ts +3 -0
- package/src/facts/unit-conflicts.ts +22 -9
- package/src/facts/unit-equivalents.ts +70 -0
- package/src/facts/unit-tolerance.ts +17 -0
- package/src/facts/unit-word.ts +35 -0
- package/src/facts/written-precision.ts +23 -0
- package/src/kana-spelling.ts +25 -0
- package/src/model-codes.ts +104 -0
- package/src/name-spelling-chars.ts +34 -0
- package/src/name-variants.ts +83 -7
- package/src/name-word-order.ts +149 -0
- package/src/phone-numbers.ts +26 -6
- package/src/place-names.ts +53 -14
- package/src/plugin.ts +7 -0
- package/src/preamble-paragraphs.ts +21 -2
- package/src/profile/parse.ts +10 -0
- package/src/return-type.ts +361 -0
- package/src/spacing-code.ts +26 -0
- package/src/structure/amount-range.ts +16 -7
- package/src/structure/capacity-count.ts +196 -0
- package/src/structure/connection-times.ts +226 -0
- package/src/structure/counted-amounts.ts +5 -4
- package/src/structure/date-order-tie.ts +86 -0
- package/src/structure/date-order.ts +41 -14
- package/src/structure/date-outside-period.ts +77 -7
- package/src/structure/date-range.ts +45 -9
- package/src/structure/deadline-after-event.ts +67 -0
- package/src/structure/definition-use.ts +59 -2
- package/src/structure/due-date.ts +8 -32
- package/src/structure/labelled-date-order.ts +84 -0
- package/src/structure/layout-codes.ts +210 -0
- package/src/structure/leg-times.ts +15 -0
- package/src/structure/measured-amounts.ts +138 -0
- package/src/structure/party-order.ts +115 -0
- package/src/structure/quantity-range.ts +54 -0
- package/src/structure/range-bands.ts +316 -0
- package/src/structure/rent-multiple.ts +277 -0
- package/src/structure/requirement-lists.ts +145 -0
- package/src/structure/scaled-quantities.ts +225 -0
- package/src/structure/stamp-order.ts +100 -0
- package/src/structure/step-times.ts +169 -0
- package/src/structure/term-deadline.ts +35 -0
- package/src/structure/time-order.ts +8 -7
- package/src/structure/time-range.ts +64 -0
- package/src/structure/total-line.ts +63 -0
- package/src/structure/total.ts +41 -6
- package/src/structure/unlisted-items.ts +207 -0
- package/src/structure/version-order.ts +10 -0
- package/src/structure/walk-time.ts +285 -0
- package/src/surname-near.ts +31 -0
- package/src/table-cells.ts +41 -0
- package/src/table-names.ts +113 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walk-time.js","sourceRoot":"","sources":["../../src/structure/walk-time.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surname-near.d.ts","sourceRoot":"","sources":["../src/surname-near.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,EAAE,OAAO,MAAM,KAAG,OAU3D,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// 名が同じ人の名前の、姓だけの書き損じ(Whitford と Whitfield)。一字違い(isNearWord)より遠い違いを、英字の長い姓に限って見る。
|
|
2
|
+
const LATIN_WORD = /^[a-z]+$/u;
|
|
3
|
+
/** 二字違いまで見る姓の長さ。短い姓(Martin と Marten、Hansen と Hanson)は別の姓のことが多い。 */
|
|
4
|
+
const MIN_SURNAME_LENGTH = 7;
|
|
5
|
+
/** 頭からそろう字の数。頭が違えば別の姓(Robertson と Robinson)。 */
|
|
6
|
+
const MIN_SURNAME_PREFIX = 4;
|
|
7
|
+
/** 頭と終わりのそろった字のあいだに残る字の数。短いほうで二字まで、長いほうで三字まで(Whitford の or と Whitfield の iel)。 */
|
|
8
|
+
const MAX_SURNAME_GAP = 2;
|
|
9
|
+
const sharedPrefix = (left, right) => {
|
|
10
|
+
const differ = [...left].findIndex((char, index) => char !== right.charAt(index));
|
|
11
|
+
return differ < 0 ? left.length : differ;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* 二つの英字の姓が、頭が四字以上そろい、終わりの字もそろい、あいだの二字(長いほうは三字)までだけ違うか。どちらも七字以上で。
|
|
15
|
+
* 終わりだけの違い(Whitford と Whitfords)は語の形の違い。
|
|
16
|
+
*/
|
|
17
|
+
export const isNearSurname = (left, right) => {
|
|
18
|
+
if (left === right || !LATIN_WORD.test(left) || !LATIN_WORD.test(right) || Math.min(left.length, right.length) < MIN_SURNAME_LENGTH)
|
|
19
|
+
return false;
|
|
20
|
+
const prefix = sharedPrefix(left, right);
|
|
21
|
+
if (prefix < MIN_SURNAME_PREFIX)
|
|
22
|
+
return false;
|
|
23
|
+
const [leftRest, rightRest] = [left.slice(prefix), right.slice(prefix)];
|
|
24
|
+
const suffix = sharedPrefix([...leftRest].toReversed().join(""), [...rightRest].toReversed().join(""));
|
|
25
|
+
if (suffix === 0)
|
|
26
|
+
return false;
|
|
27
|
+
const gaps = [leftRest.length - suffix, rightRest.length - suffix].toSorted((first, second) => first - second);
|
|
28
|
+
const [shorter = 0, longer = 0] = gaps;
|
|
29
|
+
return shorter <= MAX_SURNAME_GAP && longer <= MAX_SURNAME_GAP + 1;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=surname-near.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surname-near.js","sourceRoot":"","sources":["../src/surname-near.ts"],"names":[],"mappings":"AAAA,iFAAiF;AAEjF,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B,mEAAmE;AACnE,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,gDAAgD;AAChD,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,kFAAkF;AAClF,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,MAAM,YAAY,GAAG,CAAC,IAAY,EAAE,KAAa,EAAU,EAAE;IAC3D,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAClF,OAAO,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;AAC3C,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,KAAa,EAAW,EAAE;IACpE,IAAI,IAAI,KAAK,KAAK,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,kBAAkB;QAAE,OAAO,KAAK,CAAC;IAClJ,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,IAAI,MAAM,GAAG,kBAAkB;QAAE,OAAO,KAAK,CAAC;IAC9C,MAAM,CAAC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvG,IAAI,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC/B,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;IAC/G,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;IACvC,OAAO,OAAO,IAAI,eAAe,IAAI,MAAM,IAAI,eAAe,GAAG,CAAC,CAAC;AACrE,CAAC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ProseDocument, Segmentation, Span, TableCell } from "./plugin.ts";
|
|
2
|
+
import { type Cell } from "./facts/table-facts.ts";
|
|
3
|
+
/** 升一つの語。字の無い升(数だけ、空)は解析しない。adapter が語を返さなければ tokens は無い。 */
|
|
4
|
+
export declare const cellWithTokens: (cell: Cell, segment: (text: string) => Segmentation) => TableCell;
|
|
5
|
+
/** 文書の表(引用とコードの外)の本体の升と、その語。 */
|
|
6
|
+
export declare const tableCellsOf: (doc: ProseDocument, segment: (text: string) => Segmentation) => TableCell[];
|
|
7
|
+
/** prose に、升の字だけを書き戻したもの(表の見出しの行と区切りの | は覆ったまま)。位置は変えない。 */
|
|
8
|
+
export declare const proseWithCells: (prose: string, cells: readonly (Span & {
|
|
9
|
+
readonly text: string;
|
|
10
|
+
})[]) => string;
|
|
11
|
+
/** 表の升の語は、読む rule があるときに一度だけ作る。升ごとの解析を、表を読まない rule に払わせない。 */
|
|
12
|
+
export declare const lazyCells: (make: () => readonly TableCell[]) => (() => readonly TableCell[]);
|
|
13
|
+
//# sourceMappingURL=table-cells.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-cells.d.ts","sourceRoot":"","sources":["../src/table-cells.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAS,MAAM,aAAa,CAAC;AAEvF,OAAO,EAAkB,KAAK,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAQnE,6DAA6D;AAC7D,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,KAAG,SAKpF,CAAC;AAEF,gCAAgC;AAChC,eAAO,MAAM,YAAY,GAAI,KAAK,aAAa,EAAE,SAAS,CAAC,IAAI,EAAE,MAAM,KAAK,YAAY,KAAG,SAAS,EAChB,CAAC;AAErF,4DAA4D;AAC5D,eAAO,MAAM,cAAc,GAAI,OAAO,MAAM,EAAE,OAAO,SAAS,CAAC,IAAI,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,EAAE,KAAG,MAWpG,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,SAAS,SAAS,EAAE,KAAG,CAAC,MAAM,SAAS,SAAS,EAAE,CAGvF,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { proseAndTablesOf } from "./table-text.js";
|
|
2
|
+
import { tableBodyCells } from "./facts/table-facts.js";
|
|
3
|
+
// 表の升の語。本文は表を覆うので、升の字は文の分割も品詞解析も通らない。升ごとに adapter に渡し、語の位置を source の上に戻す。
|
|
4
|
+
const LETTER = /\p{L}/u;
|
|
5
|
+
const shiftToken = (token, by) => ({ ...token, span: { start: token.span.start + by, end: token.span.end + by } });
|
|
6
|
+
/** 升一つの語。字の無い升(数だけ、空)は解析しない。adapter が語を返さなければ tokens は無い。 */
|
|
7
|
+
export const cellWithTokens = (cell, segment) => {
|
|
8
|
+
if (!LETTER.test(cell.text))
|
|
9
|
+
return cell;
|
|
10
|
+
const sentences = segment(cell.text).sentences;
|
|
11
|
+
if (!sentences.some((sentence) => sentence.tokens !== undefined))
|
|
12
|
+
return cell;
|
|
13
|
+
return { ...cell, tokens: sentences.flatMap((sentence) => (sentence.tokens ?? []).map((token) => shiftToken(token, cell.start))) };
|
|
14
|
+
};
|
|
15
|
+
/** 文書の表(引用とコードの外)の本体の升と、その語。 */
|
|
16
|
+
export const tableCellsOf = (doc, segment) => tableBodyCells(proseAndTablesOf(doc)).map((cell) => cellWithTokens(cell, segment));
|
|
17
|
+
/** prose に、升の字だけを書き戻したもの(表の見出しの行と区切りの | は覆ったまま)。位置は変えない。 */
|
|
18
|
+
export const proseWithCells = (prose, cells) => {
|
|
19
|
+
const pieces = [];
|
|
20
|
+
const end = cells
|
|
21
|
+
.toSorted((left, right) => left.start - right.start)
|
|
22
|
+
.reduce((from, cell) => {
|
|
23
|
+
if (cell.start < from || cell.end - cell.start !== cell.text.length)
|
|
24
|
+
return from;
|
|
25
|
+
pieces.push(prose.slice(from, cell.start), cell.text);
|
|
26
|
+
return cell.end;
|
|
27
|
+
}, 0);
|
|
28
|
+
pieces.push(prose.slice(end));
|
|
29
|
+
return pieces.join("");
|
|
30
|
+
};
|
|
31
|
+
/** 表の升の語は、読む rule があるときに一度だけ作る。升ごとの解析を、表を読まない rule に払わせない。 */
|
|
32
|
+
export const lazyCells = (make) => {
|
|
33
|
+
const cells = {};
|
|
34
|
+
return () => (cells.value ??= make());
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=table-cells.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-cells.js","sourceRoot":"","sources":["../src/table-cells.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAa,MAAM,wBAAwB,CAAC;AAEnE,0EAA0E;AAE1E,MAAM,MAAM,GAAG,QAAQ,CAAC;AAExB,MAAM,UAAU,GAAG,CAAC,KAAY,EAAE,EAAU,EAAS,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;AAEzI,6DAA6D;AAC7D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAU,EAAE,OAAuC,EAAa,EAAE;IAC/F,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC;IAC/C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9E,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACrI,CAAC,CAAC;AAEF,gCAAgC;AAChC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,OAAuC,EAAe,EAAE,CACvG,cAAc,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AAErF,4DAA4D;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,KAAoD,EAAU,EAAE;IAC5G,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,GAAG,GAAG,KAAK;SACd,QAAQ,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;SACnD,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QACrB,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACjF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC,EAAE,CAAC,CAAC,CAAC;IACR,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,IAAgC,EAAgC,EAAE;IAC1F,MAAM,KAAK,GAAqC,EAAE,CAAC;IACnD,OAAO,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,CAAC;AACxC,CAAC,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type NameMention } from "./name-variants.ts";
|
|
2
|
+
import type { TableCell, Token } from "./plugin.ts";
|
|
3
|
+
/** 表の升の名前。words は空白で分けた語。reading は升の語の読み(読めなければ無い)。 */
|
|
4
|
+
export type CellName = {
|
|
5
|
+
readonly surface: string;
|
|
6
|
+
readonly offset: number;
|
|
7
|
+
readonly words: readonly string[];
|
|
8
|
+
readonly reading?: string | undefined;
|
|
9
|
+
};
|
|
10
|
+
/** 本文の名前の書き方と、その数。reading は最初の現れの読み。 */
|
|
11
|
+
export type ProseName = {
|
|
12
|
+
readonly surface: string;
|
|
13
|
+
readonly words: readonly string[];
|
|
14
|
+
readonly count: number;
|
|
15
|
+
readonly reading?: string | undefined;
|
|
16
|
+
};
|
|
17
|
+
export type CellNameVariant = {
|
|
18
|
+
readonly name: CellName;
|
|
19
|
+
readonly usual: string;
|
|
20
|
+
readonly kind: "spelling" | "reading" | "near";
|
|
21
|
+
};
|
|
22
|
+
/** 範囲の中の語の読みをつないだもの。記号と空白の語は読まない。読めない語があれば無い。 */
|
|
23
|
+
export declare const readingWithin: (tokens: readonly Token[], start: number, end: number) => string | undefined;
|
|
24
|
+
/** 名前の形をした升。升の字の前後の空白と強調の印は名前の外。 */
|
|
25
|
+
export declare const cellNamesIn: (cells: readonly TableCell[]) => CellName[];
|
|
26
|
+
/**
|
|
27
|
+
* 本文の名前の書き方ごとの数。空白一つで並んだ名前の現れ(佐々木 と 美穂)は、一つの名前(佐々木 美穂)としても数える。
|
|
28
|
+
* 日本語の解析器は姓と名のあいだの空白で名前を切る。
|
|
29
|
+
*/
|
|
30
|
+
export declare const proseNamesOf: (mentions: readonly NameMention[], source: string) => ProseName[];
|
|
31
|
+
/**
|
|
32
|
+
* 升の名前が、本文の名前の書き分けか。記号・幅・大小だけの違いか、語の数が同じで一語だけが違い、残りの語が同じとき。違う一語は、
|
|
33
|
+
* 英字なら一字違い、漢字・かなら名前全体の読みが同じ(本文の名前の見方と同じ)。この二つは、本文の形が二度以上、升の形が文書の
|
|
34
|
+
* 中で一度だけのとき(別の人のこともある)。
|
|
35
|
+
*/
|
|
36
|
+
export declare const cellNameRelation: (name: CellName, uses: number, prose: ProseName) => CellNameVariant["kind"] | undefined;
|
|
37
|
+
/**
|
|
38
|
+
* 表の升の名前のうち、本文の名前の書き分けのもの。記号だけの違いを先に、その中で本文の形のうち一番多いものと比べる。
|
|
39
|
+
* 書き方ごとに最初の升を一つ。
|
|
40
|
+
*/
|
|
41
|
+
export declare const cellNameVariants: (names: readonly CellName[], prose: readonly ProseName[]) => CellNameVariant[];
|
|
42
|
+
//# sourceMappingURL=table-names.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-names.d.ts","sourceRoot":"","sources":["../src/table-names.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAQpD,uDAAuD;AACvD,MAAM,MAAM,QAAQ,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAEvJ,wCAAwC;AACxC,MAAM,MAAM,SAAS,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAC;AAEvJ,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,CAAA;CAAE,CAAC;AASlI,iDAAiD;AACjD,eAAO,MAAM,aAAa,GAAI,QAAQ,SAAS,KAAK,EAAE,EAAE,OAAO,MAAM,EAAE,KAAK,MAAM,KAAG,MAAM,GAAG,SAI7F,CAAC;AAEF,oCAAoC;AACpC,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,SAAS,EAAE,KAAG,QAAQ,EAM9D,CAAC;AAEL;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,UAAU,SAAS,WAAW,EAAE,EAAE,QAAQ,MAAM,KAAG,SAAS,EAexF,CAAC;AAeF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,QAAQ,EAAE,MAAM,MAAM,EAAE,OAAO,SAAS,KAAG,eAAe,CAAC,MAAM,CAAC,GAAG,SAQ3G,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,gBAAgB,GAAI,OAAO,SAAS,QAAQ,EAAE,EAAE,OAAO,SAAS,SAAS,EAAE,KAAG,eAAe,EAgBzG,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { isNearWord, nameKey } from "./name-variants.js";
|
|
2
|
+
import { withoutEdgeMarks } from "./facts/trim-marks.js";
|
|
3
|
+
/** 英字の名前の升: 大文字で始まる語が二つから四つ。小文字の語(Write the procedure)を含む升は名前でない。 */
|
|
4
|
+
const LATIN_NAME = /^\p{Lu}[\p{L}'’.-]*(?: \p{Lu}[\p{L}'’.-]*){1,3}$/u;
|
|
5
|
+
/** 漢字・カタカナの名前の升: 名前の字の語が、空白一つを挟んで二つか三つ(佐々木 美穂)。 */
|
|
6
|
+
const CJK_NAME = /^[\p{Script=Han}\p{Script=Katakana}ー々]+(?:[ \u3000][\p{Script=Han}\p{Script=Katakana}ー々]+){1,2}$/u;
|
|
7
|
+
const SPACE = /[ \u3000]/u;
|
|
8
|
+
const LOWER = /\p{Ll}/u;
|
|
9
|
+
/** 範囲の中の語の読みをつないだもの。記号と空白の語は読まない。読めない語があれば無い。 */
|
|
10
|
+
export const readingWithin = (tokens, start, end) => {
|
|
11
|
+
const words = tokens.filter((token) => token.span.start >= start && token.span.end <= end && token.pos !== "PUNCT" && token.surface.trim() !== "");
|
|
12
|
+
const readings = words.map((token) => token.reading);
|
|
13
|
+
return words.length > 0 && readings.every((reading) => reading !== undefined && reading !== "") ? readings.join("") : undefined;
|
|
14
|
+
};
|
|
15
|
+
/** 名前の形をした升。升の字の前後の空白と強調の印は名前の外。 */
|
|
16
|
+
export const cellNamesIn = (cells) => cells.flatMap((cell) => {
|
|
17
|
+
const surface = withoutEdgeMarks(cell.text.trim());
|
|
18
|
+
if (!(LATIN_NAME.test(surface) && LOWER.test(surface)) && !CJK_NAME.test(surface))
|
|
19
|
+
return [];
|
|
20
|
+
const offset = cell.start + cell.text.indexOf(surface);
|
|
21
|
+
return [{ surface, offset, words: surface.split(SPACE), reading: readingWithin(cell.tokens ?? [], offset, offset + surface.length) }];
|
|
22
|
+
});
|
|
23
|
+
/**
|
|
24
|
+
* 本文の名前の書き方ごとの数。空白一つで並んだ名前の現れ(佐々木 と 美穂)は、一つの名前(佐々木 美穂)としても数える。
|
|
25
|
+
* 日本語の解析器は姓と名のあいだの空白で名前を切る。
|
|
26
|
+
*/
|
|
27
|
+
export const proseNamesOf = (mentions, source) => {
|
|
28
|
+
const sorted = mentions.toSorted((left, right) => left.offset - right.offset);
|
|
29
|
+
const joined = sorted.flatMap((mention, index) => {
|
|
30
|
+
const next = sorted[index + 1];
|
|
31
|
+
const end = mention.offset + mention.surface.length;
|
|
32
|
+
if (next === undefined || next.offset !== end + 1 || !SPACE.test(source.charAt(end)))
|
|
33
|
+
return [];
|
|
34
|
+
const reading = mention.reading === undefined || next.reading === undefined ? undefined : `${mention.reading}${next.reading}`;
|
|
35
|
+
return [{ surface: `${mention.surface}${source.charAt(end)}${next.surface}`, reading }];
|
|
36
|
+
});
|
|
37
|
+
const forms = new Map();
|
|
38
|
+
[...sorted, ...joined].forEach(({ surface, reading }) => {
|
|
39
|
+
const form = forms.get(surface);
|
|
40
|
+
forms.set(surface, form === undefined ? { surface, words: surface.split(SPACE), count: 1, reading } : { ...form, count: form.count + 1 });
|
|
41
|
+
});
|
|
42
|
+
return [...forms.values()];
|
|
43
|
+
};
|
|
44
|
+
const LATIN = /\p{Script=Latin}/u;
|
|
45
|
+
/** 英字の語の中の記号(O'Connor、Anne-Marie)。一字違いは字だけで見る。 */
|
|
46
|
+
const WORD_MARKS = /['’.-]/gu;
|
|
47
|
+
/**
|
|
48
|
+
* 二つの英字の語が一字違いか(名前の見方と同じ isNearWord)。漢字・かなの語は見ない。升は読みが分からず、一字違いの名前
|
|
49
|
+
* (佐藤 太郎 と 佐藤 次郎)は別の人のことが多い。
|
|
50
|
+
*/
|
|
51
|
+
const isNearNameWord = (left, right) => LATIN.test(left) && LATIN.test(right) && isNearWord(left.toLowerCase().replaceAll(WORD_MARKS, ""), right.toLowerCase().replaceAll(WORD_MARKS, ""));
|
|
52
|
+
/**
|
|
53
|
+
* 升の名前が、本文の名前の書き分けか。記号・幅・大小だけの違いか、語の数が同じで一語だけが違い、残りの語が同じとき。違う一語は、
|
|
54
|
+
* 英字なら一字違い、漢字・かなら名前全体の読みが同じ(本文の名前の見方と同じ)。この二つは、本文の形が二度以上、升の形が文書の
|
|
55
|
+
* 中で一度だけのとき(別の人のこともある)。
|
|
56
|
+
*/
|
|
57
|
+
export const cellNameRelation = (name, uses, prose) => {
|
|
58
|
+
if (name.surface === prose.surface || name.words.length !== prose.words.length)
|
|
59
|
+
return undefined;
|
|
60
|
+
if (nameKey(name.surface) === nameKey(prose.surface))
|
|
61
|
+
return "spelling";
|
|
62
|
+
const differ = name.words.flatMap((word, index) => (word === prose.words[index] ? [] : [index]));
|
|
63
|
+
const [at] = differ;
|
|
64
|
+
if (differ.length !== 1 || at === undefined || uses !== 1 || prose.count < 2)
|
|
65
|
+
return undefined;
|
|
66
|
+
if (isNearNameWord(name.words[at] ?? "", prose.words[at] ?? ""))
|
|
67
|
+
return "near";
|
|
68
|
+
return name.reading !== undefined && name.reading === prose.reading ? "reading" : undefined;
|
|
69
|
+
};
|
|
70
|
+
/** 記号・幅・大小だけの違いを、読みの同じものと一字違いより先に取る。 */
|
|
71
|
+
const KIND_ORDER = ["spelling", "reading", "near"];
|
|
72
|
+
/**
|
|
73
|
+
* 表の升の名前のうち、本文の名前の書き分けのもの。記号だけの違いを先に、その中で本文の形のうち一番多いものと比べる。
|
|
74
|
+
* 書き方ごとに最初の升を一つ。
|
|
75
|
+
*/
|
|
76
|
+
export const cellNameVariants = (names, prose) => {
|
|
77
|
+
const uses = new Map(prose.map((form) => [form.surface, form.count]));
|
|
78
|
+
const firsts = new Map();
|
|
79
|
+
names.forEach((name) => {
|
|
80
|
+
uses.set(name.surface, (uses.get(name.surface) ?? 0) + 1);
|
|
81
|
+
if (!firsts.has(name.surface))
|
|
82
|
+
firsts.set(name.surface, name);
|
|
83
|
+
});
|
|
84
|
+
return [...firsts.values()].flatMap((name) => {
|
|
85
|
+
const [usual] = prose
|
|
86
|
+
.flatMap((form) => {
|
|
87
|
+
const kind = cellNameRelation(name, uses.get(name.surface) ?? 0, form);
|
|
88
|
+
return kind === undefined ? [] : [{ form, kind }];
|
|
89
|
+
})
|
|
90
|
+
.toSorted((left, right) => KIND_ORDER.indexOf(left.kind) - KIND_ORDER.indexOf(right.kind) || right.form.count - left.form.count);
|
|
91
|
+
return usual === undefined ? [] : [{ name, usual: usual.form.surface, kind: usual.kind }];
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=table-names.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-names.js","sourceRoot":"","sources":["../src/table-names.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chaffjs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.0",
|
|
4
4
|
"description": "Prose validation harness. Finds what is hard to read, and never rewrites it for you.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"chaff",
|
|
@@ -87,8 +87,8 @@
|
|
|
87
87
|
},
|
|
88
88
|
"dependencies": {
|
|
89
89
|
"@anthropic-ai/sdk": "^0.125.0",
|
|
90
|
-
"@chaffjs/lang-en": "0.
|
|
91
|
-
"@chaffjs/lang-ja": "0.
|
|
90
|
+
"@chaffjs/lang-en": "0.28.0",
|
|
91
|
+
"@chaffjs/lang-ja": "0.30.0",
|
|
92
92
|
"character-entities": "^2.0.2",
|
|
93
93
|
"mdast-util-from-markdown": "^2.0.3",
|
|
94
94
|
"mdast-util-frontmatter": "^2.0.1",
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
id: listing
|
|
2
|
+
|
|
3
|
+
name:
|
|
4
|
+
ja: 不動産の物件広告
|
|
5
|
+
en: Property listing
|
|
6
|
+
|
|
7
|
+
why:
|
|
8
|
+
ja: 日本の不動産の広告は、徒歩の分数を道路距離80mを1分として出し、1分未満の端数を1分に切り上げると決められています(不動産の表示に関する公正競争規約施行規則)。物件広告では、速さを書いていなくても、この速さで徒歩の分数と距離を比べます。ほかの文書の徒歩の分数は、速さを書いたときだけ比べます。
|
|
9
|
+
en: Japanese property advertising computes walking times at 80 m of road per minute, a part minute rounded up (the real-estate fair-competition code). In a Japanese listing, walking times are compared with their distances at that rate even when it is not written. There is no such standard for English listings, so this profile has no English part.
|
|
10
|
+
|
|
11
|
+
# 設定(chaff.yaml の profile / by_path)が無いときに、内容から選ぶ。物件概要の項目(交通、賃料、敷金、間取り…)の行が
|
|
12
|
+
# min_lines 行以上あれば物件広告として読む。表の行(| 賃料 | …)も、「賃料:…」の行も数える。
|
|
13
|
+
detect:
|
|
14
|
+
ja:
|
|
15
|
+
line: "^[ \\t]*\\|?[ \\t]*(?:交通|賃料|家賃|管理費|共益費|敷金|礼金|保証金|間取り|専有面積|入居可能日|築年月)[ \\t]*[||::]"
|
|
16
|
+
min_lines: 3
|
|
17
|
+
|
|
18
|
+
ja:
|
|
19
|
+
# 文書に速さを書いていないときの、徒歩の分数の速さ。1分に歩く m と、端数を切り上げるか(walk-time-distance-mismatch)。
|
|
20
|
+
walk_rate: { metres_per_minute: 80, round_up: true }
|
|
@@ -60,5 +60,5 @@ example:
|
|
|
60
60
|
- Your bank account
|
|
61
61
|
|
|
62
62
|
not_flagged:
|
|
63
|
-
ja: 目安の数(約3点、3つ以上)、順番(3つ目)、選ぶ数(以下から1
|
|
64
|
-
en: An estimate (about three, three or more), a rank (the first three), how many to pick (choose two), a number before a heading or a table, and a number with no list right after it are not compared. Nor is a sentence with two numbers in it. When only a colon announces the list, the number nearest the colon is the count, so a number followed by another one is not compared ("We merged three tasks into 2 pages:"). A list whose every item is a label, a colon and members split at slashes is not reported when the members add up to the count. Names listed on one line are not compared when the split is unclear ("and" or "&" inside a name, an unclosed bracket, a sentence ending midway) or the list is left open ("etc.", "and others").
|
|
63
|
+
ja: 目安の数(約3点、3つ以上)、順番(3つ目)、選ぶ数(以下から1つ選ぶ)、条や節の番号(7.1、第3条)、見出しや表の前の数、箇条書きがすぐ後ろに無い数は比べません。予告の文に数が二つあるときも比べません。コロンだけで予告する文は、コロンにいちばん近い数を予告の数とみなし、その数の後ろにまだ数があれば比べません(「1 つのページを 2 ページに分けました:」)。どの行も「ラベル:A / B」の形の箇条書きは、斜線(/)で区切って並べた項目の数が合っていれば指摘しません。一行に並べた名前は、区切りが決まらないとき(名前の中に「と」「・」がある、括弧が閉じていない、途中で文が終わる)と、並びが閉じていないとき(「ほか」「など」で終わる、「5名ほか」)は比べません。
|
|
64
|
+
en: An estimate (about three, three or more), a rank (the first three), how many to pick (choose two), the number of a clause or section (7.1, Article 7), a number before a heading or a table, and a number with no list right after it are not compared. Nor is a sentence with two numbers in it. When only a colon announces the list, the number nearest the colon is the count, so a number followed by another one is not compared ("We merged three tasks into 2 pages:"). A list whose every item is a label, a colon and members split at slashes is not reported when the members add up to the count. Names listed on one line are not compared when the split is unclear ("and" or "&" inside a name, an unclosed bracket, a sentence ending midway) or the list is left open ("etc.", "and others").
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
id: capacity-runtime-mismatch
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: capacity-runtime-mismatch
|
|
5
|
+
# Item names are read with battery-label (capacity, consumption, runtime, standby, peak, bound), units with battery-unit and
|
|
6
|
+
# unit-time, ranges with range-connector, rough values with approximate-marker.
|
|
7
|
+
severity: warning
|
|
8
|
+
|
|
9
|
+
name:
|
|
10
|
+
ja: 電池の容量を消費電流で割った時間より長い使用時間
|
|
11
|
+
en: A runtime longer than the battery capacity divided by the consumption
|
|
12
|
+
|
|
13
|
+
why:
|
|
14
|
+
ja: 「容量 5000 mAh、消費電流 500 mA、連続使用時間 15時間」のように書くと、5000 mAh ÷ 500 mA は 10時間なので、15時間はどうやっても届きません。消費電流か使用時間のどちらかを、別の条件の値や別の機種の値に書き換えたときに起きます。実際の使用時間は変換の損失で割り算の値より短くなるのが普通なので、短いほうは言いません。割り算の値を、使用時間の書いた桁の一つ分(15時間なら1時間)より大きく超えたときだけ言います。三つのどれかに「約」「最大」などが付いていれば、その幅を二倍にします。
|
|
15
|
+
en: 'When a spec states "Capacity 5000 mAh, current draw 500 mA, runtime 15 hours", 5000 mAh at 500 mA lasts 10 hours, so 15 hours cannot be reached. It happens when the consumption or the runtime is replaced with the value of another condition or another model. A real runtime is normally shorter than the division because of conversion losses, so a shorter one is not reported. Only a runtime above the division by more than one step of its last written digit (1 hour for "15 hours") is reported; when any of the three is marked "about" or "up to", that margin is doubled.'
|
|
16
|
+
|
|
17
|
+
message:
|
|
18
|
+
ja: "{capacity} ÷ {consumption} は {expected} 時間ですが、使用時間は{runtime}と書かれています"
|
|
19
|
+
en: "{capacity} at {consumption} lasts {expected} hours, but the runtime is given as {runtime}"
|
|
20
|
+
|
|
21
|
+
how_to_fix:
|
|
22
|
+
ja: 容量・消費電流・使用時間が同じ条件の値かを確かめて、違っているほうを直してください。
|
|
23
|
+
en: Check that the capacity, the consumption and the runtime are values of the same condition, and correct the one that is not.
|
|
24
|
+
|
|
25
|
+
levels: { normal: warning, relaxed: info }
|
|
26
|
+
|
|
27
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
28
|
+
|
|
29
|
+
group: facts
|
|
30
|
+
summary:
|
|
31
|
+
ja: 「5000 mAh、500 mA、連続使用時間15時間」のように、容量を消費電流で割った時間より長い使用時間
|
|
32
|
+
en: A runtime longer than the capacity divided by the consumption, such as 5000 mAh at 500 mA stated as 15 hours
|
|
33
|
+
example:
|
|
34
|
+
ja:
|
|
35
|
+
before: |
|
|
36
|
+
| 項目 | 仕様 |
|
|
37
|
+
| --- | --- |
|
|
38
|
+
| バッテリー容量 | 5000 mAh |
|
|
39
|
+
| 消費電流 | 500 mA |
|
|
40
|
+
| 連続使用時間 | 15時間 |
|
|
41
|
+
after: |
|
|
42
|
+
| 項目 | 仕様 |
|
|
43
|
+
| --- | --- |
|
|
44
|
+
| バッテリー容量 | 5000 mAh |
|
|
45
|
+
| 消費電流 | 500 mA |
|
|
46
|
+
| 連続使用時間 | 10時間 |
|
|
47
|
+
en:
|
|
48
|
+
before: |
|
|
49
|
+
| Item | Specification |
|
|
50
|
+
| --- | --- |
|
|
51
|
+
| Battery capacity | 50 Wh |
|
|
52
|
+
| Power consumption | 10 W |
|
|
53
|
+
| Runtime | 8 hours |
|
|
54
|
+
after: |
|
|
55
|
+
| Item | Specification |
|
|
56
|
+
| --- | --- |
|
|
57
|
+
| Battery capacity | 50 Wh |
|
|
58
|
+
| Power consumption | 10 W |
|
|
59
|
+
| Runtime | 5 hours |
|
|
60
|
+
|
|
61
|
+
not_flagged:
|
|
62
|
+
ja: 容量・消費電流・使用時間を、表の行(項目名と値)か「項目名:値」の行に書き、同じ節の同じ表か行にそろっているときだけ読みます。幅の広い表は列ごとに一台と読みます。mAh は mA でだけ、Wh は W でだけ割り、mAh を W で割ることはしません(電圧が公称か動作時かを決められないため)。最大の消費電流(項目名の「最大」、列の見出しの「最大」)は使わず、待機の消費電流は待受時間とだけ組みます。消費電流と使用時間が二つ以上あれば、括弧の中の条件(音量50%)が同じものどうしだけを組みます。範囲(8〜10時間、300〜500 mA)は書き手に有利な端(使用時間の短いほう、消費電流の小さいほう、容量の大きいほう)で比べます。「以上」「以下」「以内」で片側だけを決めた値と、文の中に書いた値は読みません。
|
|
63
|
+
en: 'Only a capacity, a consumption and a runtime written as table rows (item name and value) or "item name: value" lines, in the same table or the lines of the same section, are read; a wider table is one device per column. mAh is divided only by mA and Wh only by W; mAh is never divided by W, since whether the voltage is the nominal or the operating one cannot be told. A maximum consumption ("max" in the item name, a "Max" column) is not used, and a standby consumption pairs only with a standby time. With two or more consumptions and runtimes, only those with the same condition in brackets ("(50% volume)") are paired. A range ("8-10 hours", "300-500 mA") is compared at the end that favours the writer (the shorter runtime, the smaller consumption, the larger capacity). A value bounded on one side ("at least", "under") and values in running sentences are not read.'
|
|
64
|
+
level_meaning:
|
|
65
|
+
ja: 容量を消費電流で割った時間を、使用時間が書いた桁を超えて上回るとき指摘
|
|
66
|
+
en: reported when the runtime is above the capacity divided by the consumption by more than its written precision
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
id: connection-time-short
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: connection-time-short
|
|
5
|
+
requires: [dates]
|
|
6
|
+
severity: warning
|
|
7
|
+
|
|
8
|
+
name:
|
|
9
|
+
ja: 移動の時間より短い乗り継ぎ
|
|
10
|
+
en: A connection shorter than the stated travel time
|
|
11
|
+
|
|
12
|
+
why:
|
|
13
|
+
ja: 「福岡 09:50着」のあと「09:55 博多駅で合流(福岡空港から地下鉄で約10分)」のように、文書に書いた移動の時間より次の予定までの間が短いと、どちらかの時刻か移動の時間を書き間違えています。そのまま動くと次の予定に遅れます。移動の時間は、文書に書いたもの(移動の語と同じ文の「約10分」「乗り換えに30分」)だけを使い、実際にかかる時間は推し量りません。移動を書いた予定(「10:00 京都駅から貸切バスで清水寺へ(約30分)」)はその時刻から次の予定まで、予定に添えた移動の時間はすぐ前の着の時刻からその予定までの間と比べます。
|
|
14
|
+
en: 'When a schedule leaves less time than the travel time it states itself, as in "arrives Washington Reagan 9:05 AM" followed by "9:15 AM Meet Ms. Tanaka at Metro Center (25 minutes from the airport by Metro)", one of the times or the travel time is wrong, and whoever follows it will be late. Only travel times the document states are used (a length in the same sentence as a word of travel: "about 40 minutes by train", "allow 45 minutes"); real travel times are never assumed. A line that is itself a move ("09:30 Coach from York station to the Minster (about 15 minutes)") is measured from its time to the next item of the day; a travel time added to an item is measured from the arrival just before it.'
|
|
15
|
+
|
|
16
|
+
message:
|
|
17
|
+
ja: 「{from}」から「{time}」まで{gap}分しかなく、書いてある移動の時間({travel})より短いです
|
|
18
|
+
en: "Only {gap} minutes from {from} to {time}, less than the stated travel time ({travel})"
|
|
19
|
+
|
|
20
|
+
how_to_fix:
|
|
21
|
+
ja: 着の時刻、次の予定の時刻、移動の時間を確かめて、書き間違えたものを直してください。
|
|
22
|
+
en: Check the arrival, the next time and the stated travel time, and correct the wrong one.
|
|
23
|
+
|
|
24
|
+
levels: { strict: error, normal: warning, relaxed: info }
|
|
25
|
+
|
|
26
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
27
|
+
off_for:
|
|
28
|
+
literature: "Length, rhythm, repetition and register are the author's choices in literature, and dialogue mixes styles. Only what one work can hold itself to runs: consistent spacing and commas, and numbering without gaps."
|
|
29
|
+
|
|
30
|
+
group: facts
|
|
31
|
+
summary:
|
|
32
|
+
ja: 旅程で、次の予定までの間が文書に書いた移動の時間より短い所
|
|
33
|
+
en: An itinerary that leaves less time for a connection than the travel time it states
|
|
34
|
+
example:
|
|
35
|
+
ja:
|
|
36
|
+
before: |
|
|
37
|
+
- 08:00 JAL 305便(羽田 08:00発、福岡 09:50着)
|
|
38
|
+
- 09:55 博多駅で合流(福岡空港から地下鉄で約10分)
|
|
39
|
+
after: |
|
|
40
|
+
- 08:00 JAL 305便(羽田 08:00発、福岡 09:50着)
|
|
41
|
+
- 10:30 博多駅で合流(福岡空港から地下鉄で約10分)
|
|
42
|
+
en:
|
|
43
|
+
before: |
|
|
44
|
+
- 7:30 AM Flight AA 2140 (departs Boston 7:30 AM, arrives Washington Reagan 9:05 AM)
|
|
45
|
+
- 9:15 AM Meet Ms. Tanaka at Metro Center (25 minutes from the airport by Metro)
|
|
46
|
+
after: |
|
|
47
|
+
- 7:30 AM Flight AA 2140 (departs Boston 7:30 AM, arrives Washington Reagan 9:05 AM)
|
|
48
|
+
- 10:00 AM Meet Ms. Tanaka at Metro Center (25 minutes from the airport by Metro)
|
|
49
|
+
|
|
50
|
+
not_flagged:
|
|
51
|
+
ja: 移動の時間を書いていない所、上限として書いた時間(徒歩10分以内)、すぐ前の時刻が着でない所、日付の違う時刻、翌日の印のある時刻、時刻が戻る所(夜をまたぐ)、時間帯の印の違う時刻は言いません。
|
|
52
|
+
en: 'No stated travel time, a time given as an upper limit ("within 10 minutes"), a time whose previous time is not an arrival, times on different dates, a time marked as the next day, a time that goes back (overnight), and times with different time zones are not reported.'
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
id: contact-variant
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: contact-variant
|
|
5
|
+
word_list: address-label
|
|
6
|
+
# The address labels (住所, 本店所在地, Address, head office) and whose address each names come from the language's
|
|
7
|
+
# address-label lexicon; addresses after labels of different offices (a head office and a branch) are never compared.
|
|
8
|
+
languages: [ja, en]
|
|
9
|
+
severity: warning
|
|
10
|
+
|
|
11
|
+
name:
|
|
12
|
+
ja: 連絡先の書き違い
|
|
13
|
+
en: A contact written two ways
|
|
14
|
+
|
|
15
|
+
why:
|
|
16
|
+
ja: 問合せ先のメールアドレスや会社の住所は、本文の上と下、問合せ先と管轄の条のように何度も書かれます。一か所だけ「privacy@hibari-lab.example」が「privacy@hibarilab.example」に、「丸の内二丁目4番1号」が「丸の内二丁目1番4号」になっていると、読み手はどちらが正しいか分からず、届かない宛先に送ることもあります。メールアドレスは、ハイフンや点が一つ抜けたもの、どこか一語だけが一、二文字違うものを指します。住所は、住所を言う語(住所、本店所在地)の後ろに書いた、同じ町の住所どうしを比べ、番地の数字が入れ替わったもの、一つだけ違うもの、郵便番号だけが違うものを指します。
|
|
17
|
+
en: 'An email address or a company''s address is written more than once: at the top and the bottom, under "Contact" and in the governing-law clause. When one place reads privacy@hibarilab.example for privacy@hibari-lab.example, or 2-1-4 Marunouchi for 2-4-1 Marunouchi, the reader cannot tell which is right and may write to one that never arrives. An email address is reported when it is another with a dot or hyphen dropped, or with one word one or two letters off. Addresses written after an address word (Address, head office) on the same street are compared, and one whose block numbers are swapped or one changed, or whose postcode alone differs, is reported.'
|
|
18
|
+
|
|
19
|
+
message:
|
|
20
|
+
ja: メールアドレス「{written}」は、「{other}」の書き違いかもしれません
|
|
21
|
+
en: "The email address {written} may be a slip for {other}"
|
|
22
|
+
|
|
23
|
+
messages:
|
|
24
|
+
address:
|
|
25
|
+
ja: 住所「{written}」は、「{other}」と番地が違います
|
|
26
|
+
en: "The address {written} has other block numbers than {other}"
|
|
27
|
+
postcode:
|
|
28
|
+
ja: 住所「{written}」は、同じ住所「{other}」と郵便番号が違います
|
|
29
|
+
en: "The address {written} has another postcode than the same address {other}"
|
|
30
|
+
|
|
31
|
+
how_to_fix:
|
|
32
|
+
ja: 正しい宛先を確かめて、もう一方を直してください。
|
|
33
|
+
en: Check which is right and correct the other.
|
|
34
|
+
|
|
35
|
+
levels: { strict: error, normal: warning, relaxed: warning }
|
|
36
|
+
|
|
37
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
38
|
+
off_for:
|
|
39
|
+
literature: A story's addresses are made up and need not agree; one may differ on purpose.
|
|
40
|
+
speech: A transcript writes what was said, slips corrected afterwards included.
|
|
41
|
+
|
|
42
|
+
group: facts
|
|
43
|
+
summary:
|
|
44
|
+
ja: 同じ文書で、メールアドレスや住所が一か所だけ違って書かれている所(hibari-lab と hibarilab、4番1号と1番4号)
|
|
45
|
+
en: One email address or postal address written elsewhere with a slip (hibari-lab and hibarilab, 2-4-1 and 2-1-4)
|
|
46
|
+
example:
|
|
47
|
+
ja:
|
|
48
|
+
before: |
|
|
49
|
+
# お問合せ
|
|
50
|
+
|
|
51
|
+
メールアドレス:support@hibari-lab.example
|
|
52
|
+
|
|
53
|
+
変更の質問は、suport@hibari-lab.example へ送ってください。
|
|
54
|
+
after: |
|
|
55
|
+
# お問合せ
|
|
56
|
+
|
|
57
|
+
メールアドレス:support@hibari-lab.example
|
|
58
|
+
|
|
59
|
+
変更の質問は、support@hibari-lab.example へ送ってください。
|
|
60
|
+
en:
|
|
61
|
+
before: |
|
|
62
|
+
# Contact
|
|
63
|
+
|
|
64
|
+
Email: support@hibari-lab.example
|
|
65
|
+
|
|
66
|
+
Questions about a change can be sent to suport@hibari-lab.example.
|
|
67
|
+
after: |
|
|
68
|
+
# Contact
|
|
69
|
+
|
|
70
|
+
Email: support@hibari-lab.example
|
|
71
|
+
|
|
72
|
+
Questions about a change can be sent to support@hibari-lab.example.
|
|
73
|
+
|
|
74
|
+
not_flagged:
|
|
75
|
+
ja: 別のメールアドレス(sales@ と support@)、数字だけが違うもの(support1@ と support2@)、5文字より短い語の違い(hr@ と pr@、sale@ と sales@)は指しません。住所は、同じ行で前に「住所」「本店所在地」のような語があるものだけを読みます。持ち主の違う住所(本店と支店)、町の違う住所、同じ名の町でも市や区の違う住所、番地の数の違う住所、二つ以上の番地が違う住所は比べません。都道府県・市・区・郡の無い住所は読みません。
|
|
76
|
+
en: Two different addresses (sales@ and support@), addresses that differ only in a digit (support1@ and support2@) and a difference in a word shorter than five letters (hr@ and pr@, sale@ and sales@) are not reported. Only a postal address with an address word (Address, head office) before it on its line is read. Addresses of different offices (a head office and a branch), on different streets, on a street of the same name in another town, with a different count of block numbers, or with two numbers changed are not compared.
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
id: count-over-capacity
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: count-over-capacity
|
|
5
|
+
severity: warning
|
|
6
|
+
|
|
7
|
+
name:
|
|
8
|
+
ja: 定員より多い申込の人数
|
|
9
|
+
en: More registered than the stated capacity
|
|
10
|
+
|
|
11
|
+
why:
|
|
12
|
+
ja: 「定員:90名」と書いた案内に「95名の方にお申し込みいただいております」とあると、定員と人数のどちらかを書き間違えています。読み手は申し込んでよいのか、当日入れるのかを問い合わせることになります。定員の語(定員、先着)と人数の語(申込、招待者、お申し込み)を付けた人の数だけを比べ、語の無い数は読みません。比べるのは文書に定員が一つだけ書いてあるときです。
|
|
13
|
+
en: 'When an invitation says "Capacity: 90 seats" and later "95 members have registered", one of the two numbers is wrong, and readers have to ask whether they can still register or will get in on the day. Only numbers of people that carry a word of capacity ("capacity", "limited to") or of registration ("have registered", "invited") are compared, and only when the document states one capacity.'
|
|
14
|
+
|
|
15
|
+
message:
|
|
16
|
+
ja: 定員「{capacity}」より、人数「{count}」のほうが多いです
|
|
17
|
+
en: "The capacity ({capacity}) is smaller than the number stated later ({count})"
|
|
18
|
+
|
|
19
|
+
how_to_fix:
|
|
20
|
+
ja: 定員と人数を確かめて、書き間違えたほうを直してください。定員を超えた申込をキャンセル待ちや抽選にするなら、そう書いてください。
|
|
21
|
+
en: Check the capacity and the number, and correct the wrong one. If places past the capacity go to a waiting list or a ballot, say so.
|
|
22
|
+
|
|
23
|
+
levels: { strict: error, normal: warning, relaxed: info }
|
|
24
|
+
|
|
25
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
26
|
+
off_for:
|
|
27
|
+
literature: "Length, rhythm, repetition and register are the author's choices in literature, and dialogue mixes styles. Only what one work can hold itself to runs: consistent spacing and commas, and numbering without gaps."
|
|
28
|
+
|
|
29
|
+
group: facts
|
|
30
|
+
summary:
|
|
31
|
+
ja: 「定員90名」の案内に、それより多い申込の人数が書いてある所
|
|
32
|
+
en: A stated capacity smaller than the number registered
|
|
33
|
+
example:
|
|
34
|
+
ja:
|
|
35
|
+
before: |
|
|
36
|
+
定員:90名(先着順)
|
|
37
|
+
|
|
38
|
+
11月6日現在、95名の方にお申し込みいただいております。
|
|
39
|
+
after: |
|
|
40
|
+
定員:120名(先着順)
|
|
41
|
+
|
|
42
|
+
11月6日現在、95名の方にお申し込みいただいております。
|
|
43
|
+
en:
|
|
44
|
+
before: |
|
|
45
|
+
Capacity: 90 seats, first come, first served
|
|
46
|
+
|
|
47
|
+
As of November 6, 95 members have registered.
|
|
48
|
+
after: |
|
|
49
|
+
Capacity: 120 seats, first come, first served
|
|
50
|
+
|
|
51
|
+
As of November 6, 95 members have registered.
|
|
52
|
+
|
|
53
|
+
not_flagged:
|
|
54
|
+
ja: キャンセル待ちや抽選の語のある文書、一回あたりの定員(各回定員20名)、昨年や前回の人数、数える物の違う数(30組と45名、申込45件)、定員が二つ以上ある文書、語の付いていない数は比べません。
|
|
55
|
+
en: 'A document that mentions a waiting list or a ballot, a capacity per session ("20 per session"), last year''s or a previous event''s numbers, numbers of different things (30 groups and 45 people), a document stating more than one capacity, and numbers without a word of capacity or registration are not compared.'
|