chaffjs 0.20.0 → 0.22.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/README.md +7 -5
- package/dist/api.d.ts +16 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js.map +1 -1
- package/dist/cli-text.d.ts +2 -0
- package/dist/cli-text.d.ts.map +1 -1
- package/dist/cli-text.js +18 -5
- package/dist/cli-text.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +8 -11
- package/dist/cli.js.map +1 -1
- package/dist/command-help.d.ts +7 -0
- package/dist/command-help.d.ts.map +1 -0
- package/dist/command-help.js +18 -0
- package/dist/command-help.js.map +1 -0
- package/dist/commands/eval.js +2 -2
- package/dist/commands/eval.js.map +1 -1
- package/dist/commands/fix-plan.d.ts.map +1 -1
- package/dist/commands/fix-plan.js +11 -1
- package/dist/commands/fix-plan.js.map +1 -1
- package/dist/commands/help.d.ts +4 -0
- package/dist/commands/help.d.ts.map +1 -0
- package/dist/commands/help.js +7 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/init-command.d.ts +4 -0
- package/dist/commands/init-command.d.ts.map +1 -0
- package/dist/commands/init-command.js +15 -0
- package/dist/commands/init-command.js.map +1 -0
- package/dist/commands/plugin-init.d.ts +20 -0
- package/dist/commands/plugin-init.d.ts.map +1 -0
- package/dist/commands/plugin-init.js +129 -0
- package/dist/commands/plugin-init.js.map +1 -0
- package/dist/commands/plugin-test.d.ts +11 -0
- package/dist/commands/plugin-test.d.ts.map +1 -0
- package/dist/commands/plugin-test.js +81 -0
- package/dist/commands/plugin-test.js.map +1 -0
- package/dist/config/load.d.ts +2 -0
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +1 -0
- package/dist/config/load.js.map +1 -1
- package/dist/config/option-problems.js +2 -2
- package/dist/config/option-problems.js.map +1 -1
- package/dist/config/rule-problems.js +2 -2
- package/dist/config/rule-problems.js.map +1 -1
- package/dist/custom/checked.d.ts +9 -0
- package/dist/custom/checked.d.ts.map +1 -0
- package/dist/custom/checked.js +3 -0
- package/dist/custom/checked.js.map +1 -0
- package/dist/custom/dsl-fields.d.ts +27 -0
- package/dist/custom/dsl-fields.d.ts.map +1 -0
- package/dist/custom/dsl-fields.js +86 -0
- package/dist/custom/dsl-fields.js.map +1 -0
- package/dist/custom/load.d.ts.map +1 -1
- package/dist/custom/load.js +2 -0
- package/dist/custom/load.js.map +1 -1
- package/dist/custom/parse.d.ts +14 -3
- package/dist/custom/parse.d.ts.map +1 -1
- package/dist/custom/parse.js +44 -40
- package/dist/custom/parse.js.map +1 -1
- package/dist/custom/problems.d.ts.map +1 -1
- package/dist/custom/problems.js +10 -1
- package/dist/custom/problems.js.map +1 -1
- package/dist/detectors/amount-for-count.d.ts +21 -0
- package/dist/detectors/amount-for-count.d.ts.map +1 -0
- package/dist/detectors/amount-for-count.js +55 -0
- package/dist/detectors/amount-for-count.js.map +1 -0
- package/dist/detectors/blank-structure.d.ts.map +1 -1
- package/dist/detectors/blank-structure.js +6 -4
- package/dist/detectors/blank-structure.js.map +1 -1
- package/dist/detectors/clause-shape.d.ts +22 -0
- package/dist/detectors/clause-shape.d.ts.map +1 -0
- package/dist/detectors/clause-shape.js +149 -0
- package/dist/detectors/clause-shape.js.map +1 -0
- package/dist/detectors/code-fences.d.ts +34 -0
- package/dist/detectors/code-fences.d.ts.map +1 -0
- package/dist/detectors/code-fences.js +100 -0
- package/dist/detectors/code-fences.js.map +1 -0
- package/dist/detectors/cross-definitions.d.ts +4 -0
- package/dist/detectors/cross-definitions.d.ts.map +1 -0
- package/dist/detectors/cross-definitions.js +43 -0
- package/dist/detectors/cross-definitions.js.map +1 -0
- package/dist/detectors/cross-facts.d.ts +4 -0
- package/dist/detectors/cross-facts.d.ts.map +1 -0
- package/dist/detectors/cross-facts.js +53 -0
- package/dist/detectors/cross-facts.js.map +1 -0
- package/dist/detectors/cross-registry/cross-doc-duplicate-definition.d.ts +3 -0
- package/dist/detectors/cross-registry/cross-doc-duplicate-definition.d.ts.map +1 -0
- package/dist/detectors/cross-registry/cross-doc-duplicate-definition.js +3 -0
- package/dist/detectors/cross-registry/cross-doc-duplicate-definition.js.map +1 -0
- package/dist/detectors/cross-registry/cross-doc-fact-conflict.d.ts +3 -0
- package/dist/detectors/cross-registry/cross-doc-fact-conflict.d.ts.map +1 -0
- package/dist/detectors/cross-registry/cross-doc-fact-conflict.js +3 -0
- package/dist/detectors/cross-registry/cross-doc-fact-conflict.js.map +1 -0
- package/dist/detectors/currency-notation.d.ts +29 -0
- package/dist/detectors/currency-notation.d.ts.map +1 -0
- package/dist/detectors/currency-notation.js +58 -0
- package/dist/detectors/currency-notation.js.map +1 -0
- package/dist/detectors/custom.d.ts.map +1 -1
- package/dist/detectors/custom.js +4 -1
- package/dist/detectors/custom.js.map +1 -1
- package/dist/detectors/dangling-opener.d.ts +14 -0
- package/dist/detectors/dangling-opener.d.ts.map +1 -0
- package/dist/detectors/dangling-opener.js +55 -0
- package/dist/detectors/dangling-opener.js.map +1 -0
- package/dist/detectors/defined-term-form.d.ts +25 -0
- package/dist/detectors/defined-term-form.d.ts.map +1 -0
- package/dist/detectors/defined-term-form.js +170 -0
- package/dist/detectors/defined-term-form.js.map +1 -0
- package/dist/detectors/email-letter.d.ts +46 -0
- package/dist/detectors/email-letter.d.ts.map +1 -0
- package/dist/detectors/email-letter.js +234 -0
- package/dist/detectors/email-letter.js.map +1 -0
- package/dist/detectors/footnote-mismatch.d.ts +11 -0
- package/dist/detectors/footnote-mismatch.d.ts.map +1 -0
- package/dist/detectors/footnote-mismatch.js +55 -0
- package/dist/detectors/footnote-mismatch.js.map +1 -0
- package/dist/detectors/form-minority.d.ts +13 -0
- package/dist/detectors/form-minority.d.ts.map +1 -0
- package/dist/detectors/form-minority.js +19 -0
- package/dist/detectors/form-minority.js.map +1 -0
- package/dist/detectors/heading-end-mark.d.ts +10 -0
- package/dist/detectors/heading-end-mark.d.ts.map +1 -0
- package/dist/detectors/heading-end-mark.js +59 -0
- package/dist/detectors/heading-end-mark.js.map +1 -0
- package/dist/detectors/impossible-date.d.ts +20 -0
- package/dist/detectors/impossible-date.d.ts.map +1 -0
- package/dist/detectors/impossible-date.js +105 -0
- package/dist/detectors/impossible-date.js.map +1 -0
- package/dist/detectors/impossible-time.d.ts +18 -0
- package/dist/detectors/impossible-time.d.ts.map +1 -0
- package/dist/detectors/impossible-time.js +116 -0
- package/dist/detectors/impossible-time.js.map +1 -0
- package/dist/detectors/link-shape.d.ts +11 -0
- package/dist/detectors/link-shape.d.ts.map +1 -0
- package/dist/detectors/link-shape.js +56 -0
- package/dist/detectors/link-shape.js.map +1 -0
- package/dist/detectors/list-marker.d.ts +7 -0
- package/dist/detectors/list-marker.d.ts.map +1 -0
- package/dist/detectors/list-marker.js +50 -0
- package/dist/detectors/list-marker.js.map +1 -0
- package/dist/detectors/mark-shape.d.ts +53 -0
- package/dist/detectors/mark-shape.d.ts.map +1 -0
- package/dist/detectors/mark-shape.js +160 -0
- package/dist/detectors/mark-shape.js.map +1 -0
- package/dist/detectors/markdown-slip.d.ts +19 -0
- package/dist/detectors/markdown-slip.d.ts.map +1 -0
- package/dist/detectors/markdown-slip.js +122 -0
- package/dist/detectors/markdown-slip.js.map +1 -0
- package/dist/detectors/numeral-opener.d.ts +10 -0
- package/dist/detectors/numeral-opener.d.ts.map +1 -0
- package/dist/detectors/numeral-opener.js +65 -0
- package/dist/detectors/numeral-opener.js.map +1 -0
- package/dist/detectors/ordinal-suffix.d.ts +12 -0
- package/dist/detectors/ordinal-suffix.d.ts.map +1 -0
- package/dist/detectors/ordinal-suffix.js +33 -0
- package/dist/detectors/ordinal-suffix.js.map +1 -0
- package/dist/detectors/range-notation.d.ts +15 -0
- package/dist/detectors/range-notation.d.ts.map +1 -0
- package/dist/detectors/range-notation.js +58 -0
- package/dist/detectors/range-notation.js.map +1 -0
- package/dist/detectors/registry/adverb-polarity.d.ts +3 -0
- package/dist/detectors/registry/adverb-polarity.d.ts.map +1 -0
- package/dist/detectors/registry/adverb-polarity.js +3 -0
- package/dist/detectors/registry/adverb-polarity.js.map +1 -0
- package/dist/detectors/registry/amount-for-count.d.ts +3 -0
- package/dist/detectors/registry/amount-for-count.d.ts.map +1 -0
- package/dist/detectors/registry/amount-for-count.js +3 -0
- package/dist/detectors/registry/amount-for-count.js.map +1 -0
- package/dist/detectors/registry/attachment-missing.d.ts +3 -0
- package/dist/detectors/registry/attachment-missing.d.ts.map +1 -0
- package/dist/detectors/registry/attachment-missing.js +3 -0
- package/dist/detectors/registry/attachment-missing.js.map +1 -0
- package/dist/detectors/registry/bare-url-mix.d.ts +3 -0
- package/dist/detectors/registry/bare-url-mix.d.ts.map +1 -0
- package/dist/detectors/registry/bare-url-mix.js +3 -0
- package/dist/detectors/registry/bare-url-mix.js.map +1 -0
- package/dist/detectors/registry/caps-shouting.d.ts +3 -0
- package/dist/detectors/registry/caps-shouting.d.ts.map +1 -0
- package/dist/detectors/registry/caps-shouting.js +3 -0
- package/dist/detectors/registry/caps-shouting.js.map +1 -0
- package/dist/detectors/registry/code-fence-language.d.ts +3 -0
- package/dist/detectors/registry/code-fence-language.d.ts.map +1 -0
- package/dist/detectors/registry/code-fence-language.js +3 -0
- package/dist/detectors/registry/code-fence-language.js.map +1 -0
- package/dist/detectors/registry/currency-notation.d.ts +3 -0
- package/dist/detectors/registry/currency-notation.d.ts.map +1 -0
- package/dist/detectors/registry/currency-notation.js +3 -0
- package/dist/detectors/registry/currency-notation.js.map +1 -0
- package/dist/detectors/registry/dangling-opener.d.ts +3 -0
- package/dist/detectors/registry/dangling-opener.d.ts.map +1 -0
- package/dist/detectors/registry/dangling-opener.js +3 -0
- package/dist/detectors/registry/dangling-opener.js.map +1 -0
- package/dist/detectors/registry/defined-name-repeated.d.ts +3 -0
- package/dist/detectors/registry/defined-name-repeated.d.ts.map +1 -0
- package/dist/detectors/registry/defined-name-repeated.js +3 -0
- package/dist/detectors/registry/defined-name-repeated.js.map +1 -0
- package/dist/detectors/registry/defined-term-form.d.ts +3 -0
- package/dist/detectors/registry/defined-term-form.d.ts.map +1 -0
- package/dist/detectors/registry/defined-term-form.js +3 -0
- package/dist/detectors/registry/defined-term-form.js.map +1 -0
- package/dist/detectors/registry/email-frame.d.ts +3 -0
- package/dist/detectors/registry/email-frame.d.ts.map +1 -0
- package/dist/detectors/registry/email-frame.js +3 -0
- package/dist/detectors/registry/email-frame.js.map +1 -0
- package/dist/detectors/registry/email-subject.d.ts +3 -0
- package/dist/detectors/registry/email-subject.d.ts.map +1 -0
- package/dist/detectors/registry/email-subject.js +3 -0
- package/dist/detectors/registry/email-subject.js.map +1 -0
- package/dist/detectors/registry/ending-run.d.ts +3 -0
- package/dist/detectors/registry/ending-run.d.ts.map +1 -0
- package/dist/detectors/registry/ending-run.js +3 -0
- package/dist/detectors/registry/ending-run.js.map +1 -0
- package/dist/detectors/registry/footnote-mismatch.d.ts +3 -0
- package/dist/detectors/registry/footnote-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/footnote-mismatch.js +3 -0
- package/dist/detectors/registry/footnote-mismatch.js.map +1 -0
- package/dist/detectors/registry/heading-command.d.ts +3 -0
- package/dist/detectors/registry/heading-command.d.ts.map +1 -0
- package/dist/detectors/registry/heading-command.js +3 -0
- package/dist/detectors/registry/heading-command.js.map +1 -0
- package/dist/detectors/registry/heading-end-punctuation.d.ts +3 -0
- package/dist/detectors/registry/heading-end-punctuation.d.ts.map +1 -0
- package/dist/detectors/registry/heading-end-punctuation.js +3 -0
- package/dist/detectors/registry/heading-end-punctuation.js.map +1 -0
- package/dist/detectors/registry/hyphen-dash.d.ts +3 -0
- package/dist/detectors/registry/hyphen-dash.d.ts.map +1 -0
- package/dist/detectors/registry/hyphen-dash.js +3 -0
- package/dist/detectors/registry/hyphen-dash.js.map +1 -0
- package/dist/detectors/registry/image-file-name-alt.d.ts +3 -0
- package/dist/detectors/registry/image-file-name-alt.d.ts.map +1 -0
- package/dist/detectors/registry/image-file-name-alt.js +3 -0
- package/dist/detectors/registry/image-file-name-alt.js.map +1 -0
- package/dist/detectors/registry/impossible-date.d.ts +3 -0
- package/dist/detectors/registry/impossible-date.d.ts.map +1 -0
- package/dist/detectors/registry/impossible-date.js +3 -0
- package/dist/detectors/registry/impossible-date.js.map +1 -0
- package/dist/detectors/registry/impossible-time.d.ts +3 -0
- package/dist/detectors/registry/impossible-time.d.ts.map +1 -0
- package/dist/detectors/registry/impossible-time.js +3 -0
- package/dist/detectors/registry/impossible-time.js.map +1 -0
- package/dist/detectors/registry/latin-abbreviation.d.ts +3 -0
- package/dist/detectors/registry/latin-abbreviation.d.ts.map +1 -0
- package/dist/detectors/registry/latin-abbreviation.js +3 -0
- package/dist/detectors/registry/latin-abbreviation.js.map +1 -0
- package/dist/detectors/registry/link-text-url-mismatch.d.ts +3 -0
- package/dist/detectors/registry/link-text-url-mismatch.d.ts.map +1 -0
- package/dist/detectors/registry/link-text-url-mismatch.js +3 -0
- package/dist/detectors/registry/link-text-url-mismatch.js.map +1 -0
- package/dist/detectors/registry/list-marker.d.ts +3 -0
- package/dist/detectors/registry/list-marker.d.ts.map +1 -0
- package/dist/detectors/registry/list-marker.js +3 -0
- package/dist/detectors/registry/list-marker.js.map +1 -0
- package/dist/detectors/registry/mark-consistency.d.ts +3 -0
- package/dist/detectors/registry/mark-consistency.d.ts.map +1 -0
- package/dist/detectors/registry/mark-consistency.js +3 -0
- package/dist/detectors/registry/mark-consistency.js.map +1 -0
- package/dist/detectors/registry/numeral-opener.d.ts +3 -0
- package/dist/detectors/registry/numeral-opener.d.ts.map +1 -0
- package/dist/detectors/registry/numeral-opener.js +3 -0
- package/dist/detectors/registry/numeral-opener.js.map +1 -0
- package/dist/detectors/registry/ordinal-suffix.d.ts +3 -0
- package/dist/detectors/registry/ordinal-suffix.d.ts.map +1 -0
- package/dist/detectors/registry/ordinal-suffix.js +3 -0
- package/dist/detectors/registry/ordinal-suffix.js.map +1 -0
- package/dist/detectors/registry/origin-particle.d.ts +3 -0
- package/dist/detectors/registry/origin-particle.d.ts.map +1 -0
- package/dist/detectors/registry/origin-particle.js +3 -0
- package/dist/detectors/registry/origin-particle.js.map +1 -0
- package/dist/detectors/registry/range-notation.d.ts +3 -0
- package/dist/detectors/registry/range-notation.d.ts.map +1 -0
- package/dist/detectors/registry/range-notation.js +3 -0
- package/dist/detectors/registry/range-notation.js.map +1 -0
- package/dist/detectors/registry/relative-pronoun-mix.d.ts +3 -0
- package/dist/detectors/registry/relative-pronoun-mix.d.ts.map +1 -0
- package/dist/detectors/registry/relative-pronoun-mix.js +3 -0
- package/dist/detectors/registry/relative-pronoun-mix.js.map +1 -0
- package/dist/detectors/registry/request-without-deadline.d.ts +3 -0
- package/dist/detectors/registry/request-without-deadline.d.ts.map +1 -0
- package/dist/detectors/registry/request-without-deadline.js +3 -0
- package/dist/detectors/registry/request-without-deadline.js.map +1 -0
- package/dist/detectors/registry/sentence-spacing.d.ts +3 -0
- package/dist/detectors/registry/sentence-spacing.d.ts.map +1 -0
- package/dist/detectors/registry/sentence-spacing.js +3 -0
- package/dist/detectors/registry/sentence-spacing.js.map +1 -0
- package/dist/detectors/registry/share-over-hundred.d.ts +3 -0
- package/dist/detectors/registry/share-over-hundred.d.ts.map +1 -0
- package/dist/detectors/registry/share-over-hundred.js +3 -0
- package/dist/detectors/registry/share-over-hundred.js.map +1 -0
- package/dist/detectors/registry/shell-prompt.d.ts +3 -0
- package/dist/detectors/registry/shell-prompt.d.ts.map +1 -0
- package/dist/detectors/registry/shell-prompt.js +3 -0
- package/dist/detectors/registry/shell-prompt.js.map +1 -0
- package/dist/detectors/registry/step-reference.d.ts +3 -0
- package/dist/detectors/registry/step-reference.d.ts.map +1 -0
- package/dist/detectors/registry/step-reference.js +3 -0
- package/dist/detectors/registry/step-reference.js.map +1 -0
- package/dist/detectors/registry/step-statement.d.ts +3 -0
- package/dist/detectors/registry/step-statement.d.ts.map +1 -0
- package/dist/detectors/registry/step-statement.js +3 -0
- package/dist/detectors/registry/step-statement.js.map +1 -0
- package/dist/detectors/registry/table-row-overflow.d.ts +3 -0
- package/dist/detectors/registry/table-row-overflow.d.ts.map +1 -0
- package/dist/detectors/registry/table-row-overflow.js +3 -0
- package/dist/detectors/registry/table-row-overflow.js.map +1 -0
- package/dist/detectors/registry/toc-heading.d.ts +3 -0
- package/dist/detectors/registry/toc-heading.d.ts.map +1 -0
- package/dist/detectors/registry/toc-heading.js +3 -0
- package/dist/detectors/registry/toc-heading.js.map +1 -0
- package/dist/detectors/registry/unclosed-code-fence.d.ts +3 -0
- package/dist/detectors/registry/unclosed-code-fence.d.ts.map +1 -0
- package/dist/detectors/registry/unclosed-code-fence.js +3 -0
- package/dist/detectors/registry/unclosed-code-fence.js.map +1 -0
- package/dist/detectors/registry/unpaired-parallel.d.ts +3 -0
- package/dist/detectors/registry/unpaired-parallel.d.ts.map +1 -0
- package/dist/detectors/registry/unpaired-parallel.js +3 -0
- package/dist/detectors/registry/unpaired-parallel.js.map +1 -0
- package/dist/detectors/registry/unrendered-emphasis.d.ts +3 -0
- package/dist/detectors/registry/unrendered-emphasis.d.ts.map +1 -0
- package/dist/detectors/registry/unrendered-emphasis.js +3 -0
- package/dist/detectors/registry/unrendered-emphasis.js.map +1 -0
- package/dist/detectors/relative-pronoun-mix.d.ts +19 -0
- package/dist/detectors/relative-pronoun-mix.d.ts.map +1 -0
- package/dist/detectors/relative-pronoun-mix.js +60 -0
- package/dist/detectors/relative-pronoun-mix.js.map +1 -0
- package/dist/detectors/request-owner.d.ts +23 -0
- package/dist/detectors/request-owner.d.ts.map +1 -0
- package/dist/detectors/request-owner.js +110 -0
- package/dist/detectors/request-owner.js.map +1 -0
- package/dist/detectors/share-over-hundred.d.ts +20 -0
- package/dist/detectors/share-over-hundred.d.ts.map +1 -0
- package/dist/detectors/share-over-hundred.js +55 -0
- package/dist/detectors/share-over-hundred.js.map +1 -0
- package/dist/detectors/step-reference.d.ts +20 -0
- package/dist/detectors/step-reference.d.ts.map +1 -0
- package/dist/detectors/step-reference.js +57 -0
- package/dist/detectors/step-reference.js.map +1 -0
- package/dist/detectors/technical-docs.d.ts +32 -0
- package/dist/detectors/technical-docs.d.ts.map +1 -0
- package/dist/detectors/technical-docs.js +199 -0
- package/dist/detectors/technical-docs.js.map +1 -0
- package/dist/detectors/toc-heading.d.ts +10 -0
- package/dist/detectors/toc-heading.d.ts.map +1 -0
- package/dist/detectors/toc-heading.js +99 -0
- package/dist/detectors/toc-heading.js.map +1 -0
- package/dist/extension/pack-read.d.ts +21 -0
- package/dist/extension/pack-read.d.ts.map +1 -0
- package/dist/extension/pack-read.js +117 -0
- package/dist/extension/pack-read.js.map +1 -0
- package/dist/extension/plugin-load.d.ts.map +1 -1
- package/dist/extension/plugin-load.js +44 -10
- package/dist/extension/plugin-load.js.map +1 -1
- package/dist/extension/plugin-parse.d.ts.map +1 -1
- package/dist/extension/plugin-parse.js +10 -3
- package/dist/extension/plugin-parse.js.map +1 -1
- package/dist/facts/address-values.d.ts +5 -0
- package/dist/facts/address-values.d.ts.map +1 -0
- package/dist/facts/address-values.js +64 -0
- package/dist/facts/address-values.js.map +1 -0
- package/dist/facts/cross-facts.d.ts +20 -0
- package/dist/facts/cross-facts.d.ts.map +1 -0
- package/dist/facts/cross-facts.js +41 -0
- package/dist/facts/cross-facts.js.map +1 -0
- package/dist/fix-plan/chosen-depth.d.ts +10 -0
- package/dist/fix-plan/chosen-depth.d.ts.map +1 -0
- package/dist/fix-plan/chosen-depth.js +24 -0
- package/dist/fix-plan/chosen-depth.js.map +1 -0
- package/dist/fix-plan/mode.d.ts +13 -4
- package/dist/fix-plan/mode.d.ts.map +1 -1
- package/dist/fix-plan/mode.js +38 -7
- package/dist/fix-plan/mode.js.map +1 -1
- package/dist/fix-plan/plan.d.ts +20 -0
- package/dist/fix-plan/plan.d.ts.map +1 -1
- package/dist/fix-plan/plan.js +23 -5
- package/dist/fix-plan/plan.js.map +1 -1
- package/dist/fix-plan/render.d.ts.map +1 -1
- package/dist/fix-plan/render.js +24 -0
- package/dist/fix-plan/render.js.map +1 -1
- package/dist/fix-plan/text.d.ts +8 -0
- package/dist/fix-plan/text.d.ts.map +1 -1
- package/dist/fix-plan/text.js +36 -10
- package/dist/fix-plan/text.js.map +1 -1
- package/dist/genre-load.d.ts +1 -1
- package/dist/genre-load.d.ts.map +1 -1
- package/dist/genre-load.js +7 -4
- package/dist/genre-load.js.map +1 -1
- package/dist/genre-parse.d.ts +6 -0
- package/dist/genre-parse.d.ts.map +1 -1
- package/dist/genre-parse.js +18 -0
- package/dist/genre-parse.js.map +1 -1
- package/dist/init.js +10 -10
- package/dist/init.js.map +1 -1
- package/dist/known-genres.d.ts +8 -0
- package/dist/known-genres.d.ts.map +1 -0
- package/dist/known-genres.js +17 -0
- package/dist/known-genres.js.map +1 -0
- package/dist/link-shape.d.ts +20 -0
- package/dist/link-shape.d.ts.map +1 -0
- package/dist/link-shape.js +58 -0
- package/dist/link-shape.js.map +1 -0
- package/dist/list-marks.d.ts +21 -0
- package/dist/list-marks.d.ts.map +1 -0
- package/dist/list-marks.js +82 -0
- package/dist/list-marks.js.map +1 -0
- package/dist/reasons.d.ts.map +1 -1
- package/dist/reasons.js +15 -4
- package/dist/reasons.js.map +1 -1
- package/dist/render/explain.d.ts.map +1 -1
- package/dist/render/explain.js +11 -2
- package/dist/render/explain.js.map +1 -1
- package/dist/render/friendly.js +1 -1
- package/dist/render/friendly.js.map +1 -1
- package/dist/render/rules-json.d.ts.map +1 -1
- package/dist/render/rules-json.js +12 -3
- package/dist/render/rules-json.js.map +1 -1
- package/dist/render/rules-table.js +6 -6
- package/dist/render/rules-table.js.map +1 -1
- package/dist/render/semantic.js +2 -2
- package/dist/render/semantic.js.map +1 -1
- package/dist/render/suppressions.js +2 -2
- package/dist/render/suppressions.js.map +1 -1
- package/dist/rewrite-depth.d.ts +22 -0
- package/dist/rewrite-depth.d.ts.map +1 -0
- package/dist/rewrite-depth.js +42 -0
- package/dist/rewrite-depth.js.map +1 -0
- package/dist/rule-fields.d.ts +28 -0
- package/dist/rule-fields.d.ts.map +1 -0
- package/dist/rule-fields.js +85 -0
- package/dist/rule-fields.js.map +1 -0
- package/dist/rule-guide.d.ts +3 -0
- package/dist/rule-guide.d.ts.map +1 -1
- package/dist/rule-guide.js +6 -0
- package/dist/rule-guide.js.map +1 -1
- package/dist/rule-load.d.ts.map +1 -1
- package/dist/rule-load.js +13 -5
- package/dist/rule-load.js.map +1 -1
- package/dist/rule-offs.d.ts +14 -0
- package/dist/rule-offs.d.ts.map +1 -0
- package/dist/rule-offs.js +45 -0
- package/dist/rule-offs.js.map +1 -0
- package/dist/structure/build.d.ts.map +1 -1
- package/dist/structure/build.js +14 -1
- package/dist/structure/build.js.map +1 -1
- package/dist/structure/cross-definitions.d.ts +23 -0
- package/dist/structure/cross-definitions.d.ts.map +1 -0
- package/dist/structure/cross-definitions.js +34 -0
- package/dist/structure/cross-definitions.js.map +1 -0
- package/genres.yaml +14 -313
- package/package.json +3 -3
- package/rules/absolute-exception.yaml +3 -1
- package/rules/abstract-length.yaml +7 -1
- package/rules/acronym-expansion-conflict.yaml +2 -1
- package/rules/adverb-overuse.yaml +7 -1
- package/rules/adverb-without-negation.yaml +60 -0
- package/rules/adversative-ga-repeat.yaml +2 -1
- package/rules/agentless-passive.yaml +10 -1
- package/rules/agreement-slip.yaml +4 -1
- package/rules/ai-generated-composite.yaml +6 -1
- package/rules/ai-structure.yaml +8 -2
- package/rules/ai-tell.yaml +7 -1
- package/rules/all-caps-shouting.yaml +61 -0
- package/rules/announced-count-mismatch.yaml +3 -1
- package/rules/announcing-opener.yaml +7 -1
- package/rules/article-sound.yaml +6 -2
- package/rules/assistant-residue.yaml +4 -1
- package/rules/attachment-not-attached.yaml +112 -0
- package/rules/baito-keigo.yaml +64 -0
- package/rules/bare-url-mix.yaml +86 -0
- package/rules/bold-density.yaml +1 -0
- package/rules/bold-label-list.yaml +9 -1
- package/rules/bracket-nesting.yaml +2 -1
- package/rules/bracket-width-consistency.yaml +64 -0
- package/rules/broken-link.yaml +1 -1
- package/rules/chat-citation-residue.yaml +2 -1
- package/rules/citation-reference-mismatch.yaml +7 -1
- package/rules/citation-style-mix.yaml +7 -1
- package/rules/clause-chain.yaml +6 -1
- package/rules/cliche.yaml +67 -0
- package/rules/closing-cliche.yaml +7 -0
- package/rules/code-fence-language-mix.yaml +176 -0
- package/rules/colloquial-opener.yaml +62 -0
- package/rules/colon-lead-in.yaml +7 -1
- package/rules/concrete-evidence-density.yaml +6 -0
- package/rules/contraction-consistency.yaml +4 -1
- package/rules/contrast-framing.yaml +7 -1
- package/rules/cross-doc-duplicate-definition.yaml +70 -0
- package/rules/cross-doc-fact-conflict.yaml +64 -0
- package/rules/currency-notation-consistency.yaml +77 -0
- package/rules/cushion-phrase-density.yaml +8 -1
- package/rules/dangling-figure-reference.yaml +3 -1
- package/rules/dangling-participle.yaml +58 -0
- package/rules/dangling-reference.yaml +3 -1
- package/rules/date-format-consistency.yaml +3 -2
- package/rules/date-order.yaml +3 -1
- package/rules/date-range-reversed.yaml +3 -1
- package/rules/date-weekday-mismatch.yaml +3 -1
- package/rules/date-without-year.yaml +4 -3
- package/rules/defined-name-repeated.yaml +97 -0
- package/rules/defined-term-form.yaml +113 -0
- package/rules/demonstrative-opener-run.yaml +2 -1
- package/rules/double-keigo.yaml +6 -1
- package/rules/double-negative.yaml +5 -1
- package/rules/doubled-nado.yaml +2 -1
- package/rules/doubled-punctuation.yaml +1 -1
- package/rules/doubled-word.yaml +4 -1
- package/rules/duplicate-definition.yaml +3 -1
- package/rules/duplicate-heading.yaml +1 -1
- package/rules/duration-mismatch.yaml +2 -1
- package/rules/elapsed-years-mismatch.yaml +4 -1
- package/rules/email-greeting-closing.yaml +122 -0
- package/rules/email-subject-length.yaml +112 -0
- package/rules/emoji-density.yaml +3 -1
- package/rules/emoji-heading.yaml +7 -1
- package/rules/empty-intensifier.yaml +4 -0
- package/rules/empty-list-item.yaml +2 -1
- package/rules/empty-section.yaml +1 -1
- package/rules/empty-table-cell.yaml +2 -1
- package/rules/excessive-hedging.yaml +7 -1
- package/rules/exclamation-width-consistency.yaml +64 -0
- package/rules/expletive-construction.yaml +7 -1
- package/rules/fact-conflict.yaml +4 -1
- package/rules/figure-reference-order.yaml +7 -1
- package/rules/footnote-mismatch.yaml +91 -0
- package/rules/fullwidth-alnum-consistency.yaml +2 -2
- package/rules/hankaku-kana.yaml +1 -1
- package/rules/heading-command-missing.yaml +109 -0
- package/rules/heading-echo.yaml +6 -1
- package/rules/heading-end-punctuation-mix.yaml +158 -0
- package/rules/heading-level-skip.yaml +3 -3
- package/rules/heading-numbering-mix.yaml +4 -3
- package/rules/hiragana-fukushi.yaml +4 -1
- package/rules/homophone-slip.yaml +5 -1
- package/rules/humble-for-others.yaml +63 -0
- package/rules/hyphen-as-dash.yaml +59 -0
- package/rules/idiom-misuse.yaml +4 -1
- package/rules/image-file-name-alt.yaml +83 -0
- package/rules/impossible-date.yaml +79 -0
- package/rules/impossible-time.yaml +76 -0
- package/rules/internal-jargon.yaml +1 -1
- package/rules/invisible-character.yaml +1 -1
- package/rules/katakana-density.yaml +2 -1
- package/rules/katakana-long-vowel.yaml +1 -1
- package/rules/known-misspelling.yaml +2 -1
- package/rules/kutoten-consistency.yaml +1 -1
- package/rules/latin-abbreviation-form.yaml +58 -0
- package/rules/latin-spacing.yaml +6 -2
- package/rules/less-for-fewer.yaml +59 -0
- package/rules/link-text-url-mismatch.yaml +72 -0
- package/rules/list-item-form-mix.yaml +7 -1
- package/rules/list-marker-mix.yaml +111 -0
- package/rules/max-kanji-continuous.yaml +10 -2
- package/rules/max-paragraph-length.yaml +4 -1
- package/rules/max-sentence-length.yaml +29 -21
- package/rules/max-ten.yaml +4 -1
- package/rules/misconversion.yaml +2 -1
- package/rules/modal-conflict.yaml +2 -1
- package/rules/name-variant.yaml +4 -3
- package/rules/ngram-repetition.yaml +5 -0
- package/rules/no-doubled-joshi.yaml +5 -1
- package/rules/no-em-dash.yaml +4 -1
- package/rules/no-lead.yaml +6 -1
- package/rules/no-mixed-desumasu.yaml +5 -2
- package/rules/no-nakaguro-parallel.yaml +3 -0
- package/rules/nominalization.yaml +5 -1
- package/rules/nonstandard-word.yaml +80 -0
- package/rules/number-style-consistency.yaml +6 -1
- package/rules/number-without-unit.yaml +2 -1
- package/rules/numbering-gap.yaml +1 -1
- package/rules/numeral-sentence-start.yaml +56 -0
- package/rules/one-sentence-paragraph-run.yaml +5 -1
- package/rules/ordinal-suffix-mismatch.yaml +65 -0
- package/rules/orthographic-variant.yaml +4 -1
- package/rules/outside-announced-list.yaml +2 -1
- package/rules/oxford-comma-consistency.yaml +3 -1
- package/rules/padded-intro.yaml +7 -0
- package/rules/paragraph-length-variance.yaml +7 -1
- package/rules/paragraph-restatement.yaml +6 -1
- package/rules/percent-sum-mismatch.yaml +3 -1
- package/rules/person-consistency.yaml +4 -1
- package/rules/preamble-length.yaml +6 -0
- package/rules/preferred-term.yaml +1 -1
- package/rules/proper-noun-density.yaml +8 -1
- package/rules/quote-style-consistency.yaml +66 -0
- package/rules/ra-nuki.yaml +4 -1
- package/rules/range-notation-consistency.yaml +73 -0
- package/rules/redundant-expression.yaml +4 -1
- package/rules/reference-title-mismatch.yaml +4 -3
- package/rules/reference-topic-missing.yaml +2 -1
- package/rules/relative-date-mismatch.yaml +2 -1
- package/rules/repeated-conjunction.yaml +4 -1
- package/rules/repeated-sentence-ending.yaml +62 -0
- package/rules/repeated-sentence-head.yaml +4 -0
- package/rules/request-without-deadline.yaml +92 -0
- package/rules/required-sections.yaml +1 -1
- package/rules/requirement-modal.yaml +1 -1
- package/rules/requirement-smell.yaml +12 -4
- package/rules/rule-of-three.yaml +8 -1
- package/rules/sasete-itadaku.yaml +7 -1
- package/rules/section-length-uniformity.yaml +7 -1
- package/rules/sentence-initial-conjunction-run.yaml +5 -1
- package/rules/sentence-initial-so.yaml +6 -1
- package/rules/sentence-rhythm.yaml +8 -1
- package/rules/sentence-spacing-consistency.yaml +63 -0
- package/rules/share-over-hundred.yaml +65 -0
- package/rules/shell-prompt-mix.yaml +128 -0
- package/rules/space-before-punctuation.yaml +1 -1
- package/rules/spelling-consistency.yaml +3 -1
- package/rules/step-reference-missing.yaml +85 -0
- package/rules/step-statement-mix.yaml +76 -0
- package/rules/stock-transition.yaml +8 -1
- package/rules/stray-space.yaml +2 -2
- package/rules/summary-fact-mismatch.yaml +4 -1
- package/rules/table-header-variant.yaml +2 -1
- package/rules/table-row-overflow.yaml +90 -0
- package/rules/taigen-dome-in-prose.yaml +6 -0
- package/rules/tari-unpaired.yaml +58 -0
- package/rules/teki-overuse.yaml +2 -1
- package/rules/title-case-consistency.yaml +1 -1
- package/rules/title-length.yaml +7 -1
- package/rules/toc-heading-mismatch.yaml +136 -0
- package/rules/topic-predicate-distance.yaml +6 -1
- package/rules/total-mismatch.yaml +3 -1
- package/rules/translationese-density.yaml +4 -1
- package/rules/unbalanced-bracket.yaml +3 -3
- package/rules/unclosed-code-fence.yaml +107 -0
- package/rules/uncomparable-graded.yaml +65 -0
- package/rules/undefined-acronym.yaml +8 -1
- package/rules/unfilled-placeholder.yaml +1 -1
- package/rules/unit-mismatch.yaml +2 -1
- package/rules/unknown-word.yaml +4 -1
- package/rules/unqualified-superlative.yaml +6 -1
- package/rules/unrendered-emphasis.yaml +73 -0
- package/rules/unused-definition.yaml +4 -3
- package/rules/url-run-on.yaml +1 -1
- package/rules/use-before-definition.yaml +4 -3
- package/rules/vague-figure-reference.yaml +3 -1
- package/rules/vague-link-text.yaml +2 -1
- package/rules/vague-word-density.yaml +2 -1
- package/rules/very-adjective.yaml +5 -1
- package/rules/weasel-word.yaml +6 -1
- package/rules/which-that-consistency.yaml +64 -0
- package/rules/wordy-phrase.yaml +6 -1
- package/rules/yori-as-from.yaml +61 -0
- package/skills/chaff/SKILL.md +7 -7
- package/src/api.ts +13 -1
- package/src/cli-text.ts +22 -7
- package/src/cli.ts +8 -9
- package/src/command-help.ts +26 -0
- package/src/commands/eval.ts +2 -2
- package/src/commands/fix-plan.ts +13 -1
- package/src/commands/help.ts +8 -0
- package/src/commands/init-command.ts +13 -0
- package/src/commands/plugin-init.ts +150 -0
- package/src/commands/plugin-test.ts +111 -0
- package/src/config/load.ts +3 -0
- package/src/config/option-problems.ts +2 -2
- package/src/config/rule-problems.ts +2 -2
- package/src/custom/checked.ts +8 -0
- package/src/custom/dsl-fields.ts +102 -0
- package/src/custom/load.ts +2 -0
- package/src/custom/parse.ts +72 -50
- package/src/custom/problems.ts +16 -2
- package/src/detectors/amount-for-count.ts +90 -0
- package/src/detectors/blank-structure.ts +12 -4
- package/src/detectors/clause-shape.ts +199 -0
- package/src/detectors/code-fences.ts +113 -0
- package/src/detectors/cross-definitions.ts +49 -0
- package/src/detectors/cross-facts.ts +60 -0
- package/src/detectors/cross-registry/cross-doc-duplicate-definition.ts +4 -0
- package/src/detectors/cross-registry/cross-doc-fact-conflict.ts +4 -0
- package/src/detectors/currency-notation.ts +90 -0
- package/src/detectors/custom.ts +10 -2
- package/src/detectors/dangling-opener.ts +74 -0
- package/src/detectors/defined-term-form.ts +200 -0
- package/src/detectors/email-letter.ts +262 -0
- package/src/detectors/footnote-mismatch.ts +72 -0
- package/src/detectors/form-minority.ts +21 -0
- package/src/detectors/heading-end-mark.ts +82 -0
- package/src/detectors/impossible-date.ts +141 -0
- package/src/detectors/impossible-time.ts +151 -0
- package/src/detectors/link-shape.ts +70 -0
- package/src/detectors/list-marker.ts +60 -0
- package/src/detectors/mark-shape.ts +202 -0
- package/src/detectors/markdown-slip.ts +140 -0
- package/src/detectors/numeral-opener.ts +72 -0
- package/src/detectors/ordinal-suffix.ts +40 -0
- package/src/detectors/range-notation.ts +76 -0
- package/src/detectors/registry/adverb-polarity.ts +4 -0
- package/src/detectors/registry/amount-for-count.ts +4 -0
- package/src/detectors/registry/attachment-missing.ts +4 -0
- package/src/detectors/registry/bare-url-mix.ts +4 -0
- package/src/detectors/registry/caps-shouting.ts +4 -0
- package/src/detectors/registry/code-fence-language.ts +4 -0
- package/src/detectors/registry/currency-notation.ts +4 -0
- package/src/detectors/registry/dangling-opener.ts +4 -0
- package/src/detectors/registry/defined-name-repeated.ts +4 -0
- package/src/detectors/registry/defined-term-form.ts +4 -0
- package/src/detectors/registry/email-frame.ts +4 -0
- package/src/detectors/registry/email-subject.ts +4 -0
- package/src/detectors/registry/ending-run.ts +4 -0
- package/src/detectors/registry/footnote-mismatch.ts +4 -0
- package/src/detectors/registry/heading-command.ts +4 -0
- package/src/detectors/registry/heading-end-punctuation.ts +4 -0
- package/src/detectors/registry/hyphen-dash.ts +4 -0
- package/src/detectors/registry/image-file-name-alt.ts +4 -0
- package/src/detectors/registry/impossible-date.ts +4 -0
- package/src/detectors/registry/impossible-time.ts +4 -0
- package/src/detectors/registry/latin-abbreviation.ts +4 -0
- package/src/detectors/registry/link-text-url-mismatch.ts +4 -0
- package/src/detectors/registry/list-marker.ts +4 -0
- package/src/detectors/registry/mark-consistency.ts +4 -0
- package/src/detectors/registry/numeral-opener.ts +4 -0
- package/src/detectors/registry/ordinal-suffix.ts +4 -0
- package/src/detectors/registry/origin-particle.ts +4 -0
- package/src/detectors/registry/range-notation.ts +4 -0
- package/src/detectors/registry/relative-pronoun-mix.ts +4 -0
- package/src/detectors/registry/request-without-deadline.ts +4 -0
- package/src/detectors/registry/sentence-spacing.ts +4 -0
- package/src/detectors/registry/share-over-hundred.ts +4 -0
- package/src/detectors/registry/shell-prompt.ts +4 -0
- package/src/detectors/registry/step-reference.ts +4 -0
- package/src/detectors/registry/step-statement.ts +4 -0
- package/src/detectors/registry/table-row-overflow.ts +4 -0
- package/src/detectors/registry/toc-heading.ts +4 -0
- package/src/detectors/registry/unclosed-code-fence.ts +4 -0
- package/src/detectors/registry/unpaired-parallel.ts +4 -0
- package/src/detectors/registry/unrendered-emphasis.ts +4 -0
- package/src/detectors/relative-pronoun-mix.ts +79 -0
- package/src/detectors/request-owner.ts +141 -0
- package/src/detectors/share-over-hundred.ts +75 -0
- package/src/detectors/step-reference.ts +83 -0
- package/src/detectors/technical-docs.ts +230 -0
- package/src/detectors/toc-heading.ts +125 -0
- package/src/extension/pack-read.ts +128 -0
- package/src/extension/plugin-load.ts +49 -9
- package/src/extension/plugin-parse.ts +10 -3
- package/src/facts/address-values.ts +74 -0
- package/src/facts/cross-facts.ts +54 -0
- package/src/fix-plan/chosen-depth.ts +28 -0
- package/src/fix-plan/mode.ts +57 -11
- package/src/fix-plan/plan.ts +37 -5
- package/src/fix-plan/render.ts +24 -0
- package/src/fix-plan/text.ts +47 -10
- package/src/genre-load.ts +7 -4
- package/src/genre-parse.ts +19 -0
- package/src/init.ts +10 -10
- package/src/known-genres.ts +19 -0
- package/src/link-shape.ts +62 -0
- package/src/list-marks.ts +106 -0
- package/src/reasons.ts +16 -4
- package/src/render/explain.ts +14 -2
- package/src/render/friendly.ts +1 -1
- package/src/render/rules-json.ts +14 -3
- package/src/render/rules-table.ts +6 -6
- package/src/render/semantic.ts +2 -2
- package/src/render/suppressions.ts +2 -2
- package/src/rewrite-depth.ts +60 -0
- package/src/rule-fields.ts +123 -0
- package/src/rule-guide.ts +9 -0
- package/src/rule-load.ts +10 -4
- package/src/rule-offs.ts +50 -0
- package/src/structure/build.ts +21 -1
- package/src/structure/cross-definitions.ts +60 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: redundant-expression
|
|
2
2
|
layer: L2
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: phrase-match
|
|
5
5
|
word_list: redundant-expression
|
|
6
6
|
uses: [pos]
|
|
@@ -26,6 +26,8 @@ how_to_fix:
|
|
|
26
26
|
levels: { strict: 1, normal: 1, relaxed: 2 }
|
|
27
27
|
|
|
28
28
|
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
29
|
+
off_for:
|
|
30
|
+
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
31
|
|
|
30
32
|
group: wording
|
|
31
33
|
summary:
|
|
@@ -50,6 +52,7 @@ level_meaning:
|
|
|
50
52
|
ja: 重言を含む文が {limit} 文あれば指摘
|
|
51
53
|
en: reported once {limit} sentences hold one
|
|
52
54
|
rewrite:
|
|
55
|
+
depth: light
|
|
53
56
|
ja:
|
|
54
57
|
direction: 重ねた語の一方を消して、一度だけ言ってください。語彙表の語ごとの書き換え(一番最初 → 最初)に従い、文のほかの所は変えません。
|
|
55
58
|
pairs:
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
id: reference-title-mismatch
|
|
2
2
|
layer: L3
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: reference-title-mismatch
|
|
5
5
|
requires: [structure]
|
|
6
|
-
severity:
|
|
6
|
+
severity: info
|
|
7
7
|
|
|
8
8
|
name:
|
|
9
9
|
ja: 参照に添えた名前が、参照先の見出しと違う
|
|
@@ -21,7 +21,7 @@ how_to_fix:
|
|
|
21
21
|
ja: 番号と名前のどちらが正しいかを確かめて、もう一方を直してください。番号がずれたのなら、ほかの参照も同じようにずれていないかを見てください。
|
|
22
22
|
en: Check whether the number or the name is right and correct the other. If the numbers shifted, check the other references too.
|
|
23
23
|
|
|
24
|
-
levels: { normal:
|
|
24
|
+
levels: { normal: info, relaxed: info }
|
|
25
25
|
|
|
26
26
|
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
27
27
|
|
|
@@ -77,6 +77,7 @@ not_flagged:
|
|
|
77
77
|
ja: 参照先が見出しを持たないとき、参照先が一つに決まらないとき、他の文書の条(民法第709条)、括弧の中が数字を含むか「前述」「参照」のような語のときは見ません。
|
|
78
78
|
en: References whose target has no heading or cannot be told apart, references to another document, and brackets holding a number or a word like "above" or "see" are left alone.
|
|
79
79
|
rewrite:
|
|
80
|
+
depth: light
|
|
80
81
|
ja:
|
|
81
82
|
direction: 番号と名前のどちらが正しいかを書き手に確かめ、もう一方を直してください。名前を添える意味が無ければ、名前を消して番号だけにしてもかまいません。
|
|
82
83
|
pairs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: reference-topic-missing
|
|
2
2
|
layer: L3
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: reference-topic-missing
|
|
5
5
|
requires: [structure]
|
|
6
6
|
severity: info
|
|
@@ -77,6 +77,7 @@ not_flagged:
|
|
|
77
77
|
ja: 「詳細」「内容」のようにどの章にも当てはまる語、参照先が見出しを持たないか一つに決まらない参照、他の文書の条は見ません。言い換え(料金と価格)は見つけられないので、語が違えば指します。
|
|
78
78
|
en: Words that fit any section ("details", "more information"), references whose target has no heading or cannot be told apart, and references to another document are left alone. A synonym (price and fee) is not recognised, so a different word is pointed out.
|
|
79
79
|
rewrite:
|
|
80
|
+
depth: light
|
|
80
81
|
ja:
|
|
81
82
|
direction: 話題がどの章にあるかを書き手に確かめ、参照の番号を直してください。参照先が別の言葉で書いているなら、どちらかの言葉に揃えます。
|
|
82
83
|
pairs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: relative-date-mismatch
|
|
2
2
|
layer: L3
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: relative-date-mismatch
|
|
5
5
|
requires: [dates]
|
|
6
6
|
severity: warning
|
|
@@ -45,6 +45,7 @@ not_flagged:
|
|
|
45
45
|
ja: 期間のすぐ後ろ(「の」や読点だけを挟む)に日付があるときだけ見ます。基準の日付が同じ文(文の頭の「2週間後、」なら前の文)に無いもの、「3営業日後」のように単位が日・週・月・年でないものは見ません。
|
|
46
46
|
en: Only a date right after the relative length (with "on" or punctuation between) is checked. A relative length with no date before it in the same sentence (or the previous one, when the sentence opens with it), and units other than days, weeks, months and years ("3 business days later"), are left alone.
|
|
47
47
|
rewrite:
|
|
48
|
+
depth: light
|
|
48
49
|
ja:
|
|
49
50
|
direction: 基準の日付・期間・日付のどれが正しいかを書き手に確かめ、残りを合わせてください。期間か日付のどちらかを消して、一つだけにしてもかまいません。
|
|
50
51
|
pairs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: repeated-conjunction
|
|
2
2
|
layer: L2
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: repeated-conjunction
|
|
5
5
|
word_list: paragraph-opener
|
|
6
6
|
uses: [pos]
|
|
@@ -25,6 +25,9 @@ how_to_fix:
|
|
|
25
25
|
levels: { strict: 1, normal: 2, relaxed: 4 }
|
|
26
26
|
|
|
27
27
|
use_for: [business, blog, technical, legal, docs, academic, literature, speech]
|
|
28
|
+
off_for:
|
|
29
|
+
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."
|
|
30
|
+
speech/transcript: "A transcript records what was said: its sentences, repeats and register are the speaker's, not the writer's to fix."
|
|
28
31
|
|
|
29
32
|
group: readability
|
|
30
33
|
summary:
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
id: repeated-sentence-ending
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: ending-run
|
|
5
|
+
requires: [pos]
|
|
6
|
+
languages: [ja]
|
|
7
|
+
severity: info
|
|
8
|
+
|
|
9
|
+
name:
|
|
10
|
+
ja: 同じ文末が続く
|
|
11
|
+
en: The same sentence ending in a row
|
|
12
|
+
|
|
13
|
+
why:
|
|
14
|
+
ja: 「〜です。〜です。〜です。」「〜しました。〜しました。〜しました。」のように、同じ形で終わる文が続くと、読み手には同じ調子の繰り返しに聞こえ、どの文が要なのかが見えにくくなります。文末の助動詞と、その前の動詞を書いた形で比べます。名詞の後の「です」は名詞が違っても同じ文末と見ます(必要です、重要です)。
|
|
15
|
+
en: In Japanese, sentences that all end the same way ("…です。…です。…です。") read as one tone repeated, and the sentence that matters does not stand out. chaff compares the closing auxiliaries and the verb before them as written. After a noun only the auxiliaries count, so 必要です and 重要です end the same way.
|
|
16
|
+
|
|
17
|
+
message:
|
|
18
|
+
ja: 「〜{word}」で終わる文が {count} 文続いています({limit} 文まで)
|
|
19
|
+
en: '{count} sentences in a row end with "〜{word}" (limit {limit})'
|
|
20
|
+
|
|
21
|
+
how_to_fix:
|
|
22
|
+
ja: 一つの文の終わり方を変えるか、二つの文を一つにまとめてください(〜です。〜です。→ 〜で、〜です。)。
|
|
23
|
+
en: Change how one sentence ends, or join two sentences into one.
|
|
24
|
+
|
|
25
|
+
levels: { strict: 2, normal: 2, relaxed: 3 }
|
|
26
|
+
|
|
27
|
+
use_for: [blog, business, technical, legal, docs, academic, literature, speech]
|
|
28
|
+
off_for:
|
|
29
|
+
legal: "Articles end 〜する。〜する。 by form; the same ending in a row is the drafting style."
|
|
30
|
+
|
|
31
|
+
group: readability
|
|
32
|
+
summary:
|
|
33
|
+
ja: 「〜です。〜です。〜です。」のように、同じ形で終わる文が続く所
|
|
34
|
+
en: Japanese sentences in a row that all end the same way ("…です。…です。…です。")
|
|
35
|
+
example:
|
|
36
|
+
ja:
|
|
37
|
+
before: |
|
|
38
|
+
この機能は必要です。設定も簡単です。費用も無料です。
|
|
39
|
+
after: |
|
|
40
|
+
この機能は必要で、設定も簡単です。費用はかかりません。
|
|
41
|
+
|
|
42
|
+
not_flagged:
|
|
43
|
+
ja: 段落をまたいだ文は続きと見ません。助動詞で終わらない文(体言止め、言い切りの動詞)は比べず、そこで続きが切れます。動詞が違えば(読みました、書きました)同じ文末とは見ません。
|
|
44
|
+
en: Sentences in different paragraphs are not a run. A sentence that does not end with an auxiliary (a noun, a bare verb) is not compared and breaks the run. Different verbs (読みました, 書きました) are different endings.
|
|
45
|
+
level_meaning:
|
|
46
|
+
ja: 同じ文末の文が {limit} 文続くまで
|
|
47
|
+
en: up to {limit} sentences in a row with the same ending
|
|
48
|
+
rewrite:
|
|
49
|
+
depth: light
|
|
50
|
+
ja:
|
|
51
|
+
direction: 続いた文のうち一つか二つの文末を変えてください。二文を「〜で、」「〜し、」でつなぐか、言い方を変えます。言っている事柄は変えません。
|
|
52
|
+
pairs:
|
|
53
|
+
- before: この機能は必要です。設定も簡単です。費用も無料です。
|
|
54
|
+
after: この機能は必要で、設定も簡単です。費用はかかりません。
|
|
55
|
+
- before: 資料を確認しました。手順を修正しました。結果を報告しました。
|
|
56
|
+
after: 資料を確認して手順を直し、その結果を報告しました。
|
|
57
|
+
keep:
|
|
58
|
+
- それぞれの文が言っている事柄
|
|
59
|
+
- 文体(です・ます、だ・である)
|
|
60
|
+
avoid:
|
|
61
|
+
- 文末を変えるために「〜と言えます」「〜となっております」のような飾りを足す
|
|
62
|
+
- 文体を混ぜる(です・ますの中に、だ・である)
|
|
@@ -26,6 +26,10 @@ levels:
|
|
|
26
26
|
relaxed: 4
|
|
27
27
|
|
|
28
28
|
use_for: [blog, business, technical, legal, docs, academic, literature, speech]
|
|
29
|
+
off_for:
|
|
30
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
31
|
+
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."
|
|
32
|
+
speech/transcript: "A transcript records what was said: its sentences, repeats and register are the speaker's, not the writer's to fix."
|
|
29
33
|
|
|
30
34
|
group: readability
|
|
31
35
|
summary:
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
id: request-without-deadline
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: request-without-deadline
|
|
5
|
+
requires: [dates]
|
|
6
|
+
# Who and when are read from the language's request-* lexicons, the document's dates, and proper nouns when parts of
|
|
7
|
+
# speech are available.
|
|
8
|
+
uses: [pos]
|
|
9
|
+
languages: [ja, en]
|
|
10
|
+
severity: info
|
|
11
|
+
|
|
12
|
+
name:
|
|
13
|
+
ja: 期限も担当も無い依頼
|
|
14
|
+
en: Request with no deadline or owner
|
|
15
|
+
|
|
16
|
+
why:
|
|
17
|
+
ja: 「資料をご確認ください」のような依頼に、いつまでに・誰がするかが書かれていないと、読んだ人は自分の仕事だと思わず、急ぐ理由も分からないまま後回しにします。依頼したほうは返事を待ち続けることになります。
|
|
18
|
+
en: A request ("Please review the draft.") with no deadline and no named person leaves every reader assuming someone else will do it, some day. The sender waits for an answer that has no date.
|
|
19
|
+
|
|
20
|
+
message:
|
|
21
|
+
ja: この依頼には、いつまでに・誰がするかが書かれていません
|
|
22
|
+
en: This request says neither who should do it nor by when
|
|
23
|
+
|
|
24
|
+
how_to_fix:
|
|
25
|
+
ja: 期限か担当(できれば両方)を書いてください。「10月20日(火)までに、山田さんがご確認ください」のように。
|
|
26
|
+
en: Add a deadline or an owner, ideally both ("Yamada, please review the draft by Tuesday, October 20.").
|
|
27
|
+
|
|
28
|
+
levels: { strict: warning, normal: info, relaxed: info }
|
|
29
|
+
|
|
30
|
+
use_for: [business, legal, docs, academic, literature, speech]
|
|
31
|
+
off_for:
|
|
32
|
+
legal: "A request without a deadline is a business-mail habit; elsewhere a request is an instruction or a pointer."
|
|
33
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
34
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
35
|
+
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."
|
|
36
|
+
speech: "A speech opens with greetings and closes with thanks: that is its form, not padding."
|
|
37
|
+
|
|
38
|
+
group: wording
|
|
39
|
+
summary:
|
|
40
|
+
ja: 「ご確認ください」「Please send …」のような依頼で、その文にも次の文にも期限と担当が無いもの
|
|
41
|
+
en: A request ("Please send …") with no deadline and no person or role in it or in the next sentence
|
|
42
|
+
example:
|
|
43
|
+
ja:
|
|
44
|
+
before: |
|
|
45
|
+
添付の見積書をご確認ください。
|
|
46
|
+
|
|
47
|
+
ほかに質問はありません。
|
|
48
|
+
after: |
|
|
49
|
+
添付の見積書を、10月20日(火)までにご確認ください。
|
|
50
|
+
|
|
51
|
+
ほかに質問はありません。
|
|
52
|
+
en:
|
|
53
|
+
before: |
|
|
54
|
+
Please review the attached quote.
|
|
55
|
+
|
|
56
|
+
I have no other questions.
|
|
57
|
+
after: |
|
|
58
|
+
Please review the attached quote by Tuesday, October 20.
|
|
59
|
+
|
|
60
|
+
I have no other questions.
|
|
61
|
+
|
|
62
|
+
not_flagged:
|
|
63
|
+
ja: 確認・返信・提出のように、済んだかどうかが後で分かる動作を頼む文だけを見ます。「ご了承ください」のような心構えの依頼と、「ご不明な点があれば、ご連絡ください」のような条件付きの申し出は見ません。期限か担当が、その文か次の文にあれば指しません。ビジネスの文書でだけ動きます。
|
|
64
|
+
en: Only requests for an action whose completion can be checked (review, reply, send) are read. Courtesy requests and conditional offers ("If you have questions, let me know") are not. A deadline or owner in the same or the next sentence is enough. Business documents only.
|
|
65
|
+
rewrite:
|
|
66
|
+
depth: light
|
|
67
|
+
ja:
|
|
68
|
+
direction: 依頼の文に、本文に書かれている期限と担当を書き足してください。本文に無ければ作らず、[期限][担当]と空けて書き手に聞きます。
|
|
69
|
+
pairs:
|
|
70
|
+
- before: 添付の見積書をご確認ください。
|
|
71
|
+
after: 添付の見積書を、[期限]までにご確認ください。
|
|
72
|
+
- before: 議事録を共有してください。
|
|
73
|
+
after: 議事録を、10月16日(金)までに伊藤さんが共有してください。
|
|
74
|
+
keep:
|
|
75
|
+
- 頼む中身と、敬語の度合い
|
|
76
|
+
- 本文のほかの文
|
|
77
|
+
avoid:
|
|
78
|
+
- 本文に無い日付や名前を作る
|
|
79
|
+
- 依頼を命令の形に書き換える
|
|
80
|
+
en:
|
|
81
|
+
direction: Add the deadline and owner the text gives to the request. If the text gives none, do not invent them; leave [deadline] and [owner] for the writer.
|
|
82
|
+
pairs:
|
|
83
|
+
- before: Please review the attached quote.
|
|
84
|
+
after: Please review the attached quote by [deadline].
|
|
85
|
+
- before: Please share the minutes.
|
|
86
|
+
after: Ito, please share the minutes by Friday, October 16.
|
|
87
|
+
keep:
|
|
88
|
+
- what is asked, and how politely
|
|
89
|
+
- the other sentences
|
|
90
|
+
avoid:
|
|
91
|
+
- inventing a date or a name the text does not give
|
|
92
|
+
- turning the request into an order
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
id: requirement-smell
|
|
2
2
|
layer: L2
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: requirement-smell
|
|
5
5
|
# 要求の文の目印と、三つの見つけ方の語。語はすべて言語ごとの語彙表にある。
|
|
6
6
|
word_list: requirement-marker
|
|
7
7
|
extra_word_lists: [requirement-loophole, requirement-open-end, requirement-either]
|
|
8
8
|
uses: [pos]
|
|
9
|
-
severity:
|
|
9
|
+
severity: info
|
|
10
10
|
|
|
11
11
|
name:
|
|
12
12
|
ja: 要求の文に、決めきれない言い方がある
|
|
@@ -40,11 +40,19 @@ placeholders:
|
|
|
40
40
|
ja: 見つけた語
|
|
41
41
|
en: the phrase found
|
|
42
42
|
|
|
43
|
-
levels: { strict:
|
|
43
|
+
levels: { strict: warning, normal: info, relaxed: info }
|
|
44
44
|
|
|
45
45
|
# 要求を書く文書だけ。仕様書、契約書・規約、説明書(マニュアル・FAQ)。ほかの法務・説明書のジャンルと、学術・文学・話し言葉は
|
|
46
|
-
#
|
|
46
|
+
# off_for で止める(法令は「等」を定義して使う、用語集の「〜すること。」は語の説明)。
|
|
47
47
|
use_for: [technical/spec, legal, docs, academic, literature, speech]
|
|
48
|
+
off_for:
|
|
49
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
50
|
+
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."
|
|
51
|
+
speech: "A transcript keeps the speaker's words: hedges and ら dropped as spoken."
|
|
52
|
+
legal/statute: "A statute defines its 等 terms (以下「個人情報等」という) and uses them in its obligations."
|
|
53
|
+
legal/judgment: "requirement-smell is for the documents that state requirements: specifications, contracts and documentation."
|
|
54
|
+
legal/patent: "requirement-smell is for the documents that state requirements: specifications, contracts and documentation."
|
|
55
|
+
docs/glossary: "An entry that ends 〜すること or 〜のこと defines a word; it is no requirement."
|
|
48
56
|
sources: [femmer-2017, berry-2003, iso-29148]
|
|
49
57
|
|
|
50
58
|
group: wording
|
package/rules/rule-of-three.yaml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: rule-of-three
|
|
2
2
|
layer: L1
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: rule-of-three
|
|
5
5
|
severity: info
|
|
6
6
|
|
|
@@ -23,6 +23,12 @@ how_to_fix:
|
|
|
23
23
|
levels: { strict: 50, normal: 70, relaxed: 90 }
|
|
24
24
|
|
|
25
25
|
use_for: [technical/readme, blog, legal, docs, academic, literature, speech]
|
|
26
|
+
off_for:
|
|
27
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
28
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
29
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
30
|
+
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."
|
|
31
|
+
speech: "A speech opens with greetings and closes with thanks: that is its form, not padding."
|
|
26
32
|
sources: [reinhart-2025, zhang-2024]
|
|
27
33
|
|
|
28
34
|
group: ai-tells
|
|
@@ -122,6 +128,7 @@ level_meaning:
|
|
|
122
128
|
ja: 3 項目の箇条書きの割合 {limit}% まで
|
|
123
129
|
en: up to {limit}% of lists with exactly three items
|
|
124
130
|
rewrite:
|
|
131
|
+
depth: light
|
|
125
132
|
ja:
|
|
126
133
|
direction: 三つ並んだ箇条書きのうち、ほかの項目と同じことを言っている項目を消すか、一つにまとめてください。本当に三つあるリストはそのままにします。
|
|
127
134
|
pairs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: sasete-itadaku
|
|
2
2
|
layer: L3
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: phrase-count
|
|
5
5
|
word_list: sasete-itadaku
|
|
6
6
|
uses: [pos]
|
|
@@ -26,6 +26,12 @@ how_to_fix:
|
|
|
26
26
|
levels: { strict: 1, normal: 3, relaxed: 6 }
|
|
27
27
|
|
|
28
28
|
use_for: [business, blog, legal, docs, academic, literature, speech]
|
|
29
|
+
off_for:
|
|
30
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
31
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
32
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
33
|
+
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."
|
|
34
|
+
speech/transcript: "A transcript records what was said: its sentences, repeats and register are the speaker's, not the writer's to fix."
|
|
29
35
|
|
|
30
36
|
group: wording
|
|
31
37
|
summary:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: section-length-uniformity
|
|
2
2
|
layer: L1
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: section-uniformity
|
|
5
5
|
severity: info
|
|
6
6
|
|
|
@@ -31,6 +31,12 @@ options:
|
|
|
31
31
|
en: The fewest sections measured. With few sections, the variation is small by chance, and a person's writing looks uniform too
|
|
32
32
|
|
|
33
33
|
use_for: [technical/readme, blog, legal, docs, academic, literature, speech]
|
|
34
|
+
off_for:
|
|
35
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
36
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
37
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
38
|
+
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."
|
|
39
|
+
speech: "A speech opens with greetings and closes with thanks: that is its form, not padding."
|
|
34
40
|
|
|
35
41
|
group: ai-tells
|
|
36
42
|
summary:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: sentence-initial-conjunction-run
|
|
2
2
|
layer: L3
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: conjunction-run
|
|
5
5
|
word_list: sentence-opener
|
|
6
6
|
languages: [en]
|
|
@@ -25,6 +25,10 @@ how_to_fix:
|
|
|
25
25
|
levels: { strict: 1, normal: 2, relaxed: 4 }
|
|
26
26
|
|
|
27
27
|
use_for: [blog, business, legal, docs, academic, literature, speech]
|
|
28
|
+
off_for:
|
|
29
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
30
|
+
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."
|
|
31
|
+
speech/transcript: "A transcript records what was said: its sentences, repeats and register are the speaker's, not the writer's to fix."
|
|
28
32
|
|
|
29
33
|
group: readability
|
|
30
34
|
summary:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: sentence-initial-so
|
|
2
2
|
layer: L2
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
how_to_find: opener-pile
|
|
5
5
|
word_list: so-opener
|
|
6
6
|
requires: [pos]
|
|
@@ -26,6 +26,10 @@ how_to_fix:
|
|
|
26
26
|
levels: { strict: 1, normal: 1, relaxed: 3 }
|
|
27
27
|
|
|
28
28
|
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
29
|
+
off_for:
|
|
30
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
31
|
+
literature: 'A narrator and a character speak as they speak: dialect ("would of"), "So," and hearsay are the voice.'
|
|
32
|
+
speech: "A transcript keeps the speaker's words: hedges and ら dropped as spoken."
|
|
29
33
|
|
|
30
34
|
group: wording
|
|
31
35
|
summary:
|
|
@@ -45,6 +49,7 @@ level_meaning:
|
|
|
45
49
|
ja: 「So,」で始まる文が {limit} 個あれば指摘
|
|
46
50
|
en: reported once {limit} sentences open with "So,"
|
|
47
51
|
rewrite:
|
|
52
|
+
depth: light
|
|
48
53
|
en:
|
|
49
54
|
direction: Delete the "So," at the head of the sentence. If the link to the last sentence is needed, use a word that says what it is.
|
|
50
55
|
pairs:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
id: sentence-rhythm
|
|
2
2
|
# 「AI 生成は文の長さが揃う」は未検証の仮説。corpus 評価まで既定では動かさない。spec §26-4。
|
|
3
|
-
status:
|
|
3
|
+
status: stable
|
|
4
4
|
layer: L1
|
|
5
5
|
how_to_find: sentence-rhythm
|
|
6
6
|
severity: warning
|
|
@@ -28,6 +28,12 @@ levels:
|
|
|
28
28
|
relaxed: 20
|
|
29
29
|
|
|
30
30
|
use_for: [technical/readme, blog, legal, docs, academic, literature, speech]
|
|
31
|
+
off_for:
|
|
32
|
+
legal: "Legal drafting repeats its terms and its sentence heads on purpose, puts the actor in the passive (shall be deemed), and joins long noun compounds (個人情報取扱事業者). This rule would only flag the form."
|
|
33
|
+
docs: "A help page repeats its heading in its first line (To upload a file, ...) and states no claims to back up."
|
|
34
|
+
academic: "Science writes in the passive, hedges its claims on purpose (may, suggest) and cites numbers as its evidence."
|
|
35
|
+
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."
|
|
36
|
+
speech: "A speech opens with greetings and closes with thanks: that is its form, not padding."
|
|
31
37
|
sources: [iwamoto-2026]
|
|
32
38
|
|
|
33
39
|
group: readability
|
|
@@ -55,6 +61,7 @@ level_meaning:
|
|
|
55
61
|
ja: 文の長さのばらつきが {limit}% 未満なら指摘
|
|
56
62
|
en: reported when sentence length varies by less than {limit}%
|
|
57
63
|
rewrite:
|
|
64
|
+
depth: light
|
|
58
65
|
ja:
|
|
59
66
|
direction: 長めの文のいくつかを、意味の切れ目で二つに割ってください。結論の文は短くします。言葉は足しません。
|
|
60
67
|
pairs:
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
id: sentence-spacing-consistency
|
|
2
|
+
layer: L1
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: sentence-spacing
|
|
5
|
+
languages: [en]
|
|
6
|
+
severity: info
|
|
7
|
+
|
|
8
|
+
name:
|
|
9
|
+
ja: 文と文のあいだの空白の数の混在
|
|
10
|
+
en: One and two spaces between sentences mixed
|
|
11
|
+
|
|
12
|
+
why:
|
|
13
|
+
ja: 英語で、文と文のあいだを一つの空白で空ける所と二つで空ける所が混ざっていると、別々の所から貼り合わせた文書に見えます。どちらが正しいかは決めません。同じ行の中の文の切れ目だけを数え、文書の中で少ないほうを指します。
|
|
14
|
+
en: Sentences separated by one space in some places and two in others make a document look pasted together. chaff does not pick a side; it counts only breaks between sentences on one line and points at the less common way.
|
|
15
|
+
|
|
16
|
+
message:
|
|
17
|
+
ja: 文のあいだに空白が {spaces} 個あります(この文書はふつう {usual} 個。{of} 箇所のうち {count} 箇所が違う)
|
|
18
|
+
en: "{spaces} {spaces|space|spaces} after this sentence, where the document usually leaves {usual} ({count} of {of})"
|
|
19
|
+
|
|
20
|
+
# 少ないほうが 5 箇所以上で、全体の 2 割を超えるとき。書き損じではなく書き方が二通りあるので、1 件にまとめて両方の数を言う。
|
|
21
|
+
messages:
|
|
22
|
+
mixed:
|
|
23
|
+
ja: "文のあいだを、空白二つで {spaced} 箇所、一つで {touching} 箇所空けています。この文書には空け方が二通りあります"
|
|
24
|
+
en: "Sentences are spaced two ways in this document ({spaced} with two spaces, {touching} with one)"
|
|
25
|
+
|
|
26
|
+
how_to_fix:
|
|
27
|
+
ja: 文書の多いほうの数に合わせてください。
|
|
28
|
+
en: Match the spacing the rest of the document uses.
|
|
29
|
+
|
|
30
|
+
levels: { strict: 1, normal: 1, relaxed: 3 }
|
|
31
|
+
|
|
32
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
33
|
+
|
|
34
|
+
group: consistency
|
|
35
|
+
summary:
|
|
36
|
+
ja: 英語で、文と文のあいだの空白が一つの所と二つの所が混ざっている所
|
|
37
|
+
en: One space between sentences in some places and two in others
|
|
38
|
+
example:
|
|
39
|
+
en:
|
|
40
|
+
before: |
|
|
41
|
+
We met. We talked. We agreed. We left.
|
|
42
|
+
after: |
|
|
43
|
+
We met. We talked. We agreed. We left.
|
|
44
|
+
|
|
45
|
+
not_flagged:
|
|
46
|
+
ja: ピリオド・疑問符・感嘆符で終わる文と、同じ行で続く次の文のあいだだけを見ます。行末の空白(Markdown の改行)は見ません。
|
|
47
|
+
en: Only the space after a sentence ending in a period, question or exclamation mark, before the next sentence on the same line. Spaces at the end of a line (a Markdown line break) are not counted.
|
|
48
|
+
level_meaning:
|
|
49
|
+
ja: 少ないほうの空け方が {limit} 箇所あれば指摘
|
|
50
|
+
en: reported once the less common spacing appears {limit} times
|
|
51
|
+
rewrite:
|
|
52
|
+
depth: light
|
|
53
|
+
en:
|
|
54
|
+
direction: Change the marked gap between sentences to the number of spaces the rest of the document uses.
|
|
55
|
+
pairs:
|
|
56
|
+
- before: We agreed. We left.
|
|
57
|
+
after: We agreed. We left.
|
|
58
|
+
- before: The plan holds. The date moves.
|
|
59
|
+
after: The plan holds. The date moves.
|
|
60
|
+
keep:
|
|
61
|
+
- every word and mark
|
|
62
|
+
avoid:
|
|
63
|
+
- changing spaces inside sentences
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
id: share-over-hundred
|
|
2
|
+
layer: L3
|
|
3
|
+
status: stable
|
|
4
|
+
how_to_find: share-over-hundred
|
|
5
|
+
severity: error
|
|
6
|
+
|
|
7
|
+
name:
|
|
8
|
+
ja: 100% を超える一部の割合
|
|
9
|
+
en: A share above 100%
|
|
10
|
+
|
|
11
|
+
why:
|
|
12
|
+
ja: 「回答者の120%」「150% of respondents」のように、集まりの一部の割合が 100% を超えることはありません。小数点の打ち間違い(12.0%)、別の数(前年比)との取り違え、桁の書き損じのどれかで、読み手は数そのものを信じなくなります。一部は全体を超えないので、機械で言えます。
|
|
13
|
+
en: A share of a group, such as "120% of respondents", cannot pass 100%. It is a misplaced decimal point (12.0%), a mix-up with another figure (growth on last year), or a mistyped digit, and the reader stops trusting the number. A part never exceeds the whole, so a machine can tell.
|
|
14
|
+
|
|
15
|
+
message:
|
|
16
|
+
ja: 「{written}」は{whole}の一部の割合なので、100% を超えません
|
|
17
|
+
en: '"{written}" is a share of {whole}, so it cannot pass 100%'
|
|
18
|
+
|
|
19
|
+
how_to_fix:
|
|
20
|
+
ja: 元の数を確かめて直してください。前年比や伸びのつもりなら、そう書きます(前年の120%、20%増)。
|
|
21
|
+
en: Check the source figure and correct it. If growth or a comparison was meant, say so ("120% of last year's level", "up 20%").
|
|
22
|
+
|
|
23
|
+
levels: { normal: error, relaxed: warning }
|
|
24
|
+
|
|
25
|
+
use_for: [business, technical, blog, legal, docs, academic, literature, speech]
|
|
26
|
+
|
|
27
|
+
group: facts
|
|
28
|
+
summary:
|
|
29
|
+
ja: 「回答者の120%」のように、集まりの一部の割合なのに 100% を超える百分率
|
|
30
|
+
en: A percentage that is a share of a group but passes 100%, such as "120% of respondents"
|
|
31
|
+
example:
|
|
32
|
+
ja:
|
|
33
|
+
before: 調査では、回答者の120%が満足と答えました。
|
|
34
|
+
after: 調査では、回答者の12.0%が満足と答えました。
|
|
35
|
+
en:
|
|
36
|
+
before: In the survey, 120% of respondents said they were satisfied.
|
|
37
|
+
after: In the survey, 12.0% of respondents said they were satisfied.
|
|
38
|
+
|
|
39
|
+
not_flagged:
|
|
40
|
+
ja: 語彙表 share-whole にある集まり(回答者、社員、利用者など)の一部と書いた百分率だけを見ます。伸びや比べる元(前年の120%、予算の110%)、集まりを書いていない百分率(120%の達成率)は言いません。コードの中は読みません。
|
|
41
|
+
en: Only percentages written as a share of a group in the share-whole word list (respondents, employees, users and so on) are read. Growth and comparisons ("120% of last year", "110% of the budget") and percentages with no group ("120% attainment") are not reported. Code is not read.
|
|
42
|
+
|
|
43
|
+
rewrite:
|
|
44
|
+
ja:
|
|
45
|
+
direction: 元の数を確かめて、一部の割合なら 100% 以下に直してください。伸びや前年との比べなら、何と比べたかを書きます。
|
|
46
|
+
pairs:
|
|
47
|
+
- before: 回答者の120%が満足と答えました。
|
|
48
|
+
after: 回答者の12.0%が満足と答えました。
|
|
49
|
+
- before: 社員の150%が研修を受けました。
|
|
50
|
+
after: 研修を受けた社員は前年の1.5倍になりました。
|
|
51
|
+
keep:
|
|
52
|
+
- 元の調べで得た数
|
|
53
|
+
avoid:
|
|
54
|
+
- 元の数を確かめずに、100% に丸める
|
|
55
|
+
en:
|
|
56
|
+
direction: Check the source figure. A share of a group stays at or under 100%; if growth or a comparison was meant, say what it is compared with.
|
|
57
|
+
pairs:
|
|
58
|
+
- before: 120% of respondents said they were satisfied.
|
|
59
|
+
after: 12.0% of respondents said they were satisfied.
|
|
60
|
+
- before: 150% of employees took the training.
|
|
61
|
+
after: One and a half times as many employees took the training as last year.
|
|
62
|
+
keep:
|
|
63
|
+
- the figure the source gives
|
|
64
|
+
avoid:
|
|
65
|
+
- rounding the figure down to 100% without checking the source
|