{"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"prose-rules","__idx":0},"children":["Prose rules"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A prose rule checks the words of a document rather than its Markdown syntax."," ","You write one in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recheck"]}," block from three parts: a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["scope"]}," that selects the text, an ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["assertion"]}," that checks it, and a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["message"]}," that explains the finding."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"recheck:\n  rules:\n    recheck/no-gerund-headings:\n      severity: warn\n      scope: heading\n      message: 'Do not start a heading with a gerund.'\n      link: https://example.com/style-guide#headings\n      assertions:\n        pattern:\n          ignoreCase: true\n          tokens:\n            - '^\\w+ing\\b'\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This page lists every scope and every assertion with its options."," ","The ",{"$$mdtype":"Tag","name":"Link","attributes":{"href":"/docs/cli/v2/configuration/reference/recheck"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recheck"]}," configuration reference"]}," lists the other keys of a rule, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["appliesTo"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["excludes"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["exceptions"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"rule-keys-and-messages","__idx":1},"children":["Rule keys and messages"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A rule key is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["<namespace>/<name>"]},", in lowercase, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recheck/us-spelling"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["acme/product-names"]},"."," ","The presets use their own namespaces, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["google/"]},", so your keys never collide with theirs."," ","The report prints the key without the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["recheck/"]}," prefix."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A prose rule needs a ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["message"]},"."," ","The message can hold ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["%s"]}," placeholders, which the assertion fills in order."," ","Each assertion lists what it fills."," ","Most assertions fill two values; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["length"]}," fills three and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["metric"]}," fills four."," ","A message with more placeholders than the assertion fills is a configuration error."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"scopes","__idx":2},"children":["Scopes"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["scope"]}," key selects which parts of a file the rule reads."," ","The default is ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["all"]},"."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Scope"},"children":["Scope"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Selects"},"children":["Selects"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["all"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The whole file as one segment."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["raw"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The raw file content, without scope segmentation."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["summary"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The document's prose: paragraph, heading, list item, blockquote, and table cell text. Alias: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["default"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sentence"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each sentence of the prose."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["paragraph"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each paragraph."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["heading"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each heading. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["heading.h1"]}," to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["heading.h6"]}," select one level."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["list-item"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The text of each list item."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["blockquote"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The text of each blockquote."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["table.header"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each table header cell."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["table.cell"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each table body cell."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["code"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each code block."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["frontmatter"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The YAML front matter."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["html"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each raw HTML block."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["comment"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each HTML comment."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["alt"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The alt text of each image."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["link"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The text of each link."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["markdoc.tag"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Each Markdoc tag span. Needs ",{"$$mdtype":"Tag","name":"Link","attributes":{"href":"/docs/cli/v2/recheck/markdoc"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["markdoc: true"]}]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A list of scopes selects all of them:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"scope:\n  - heading.h1\n  - heading.h2\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A selector narrows a scope: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["~"]}," excludes a scope, and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["&"]}," joins conditions."," ","For example, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["'~blockquote & ~heading'"]}," selects everything except blockquotes and headings."," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["all"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["raw"]}," cover the whole file, so they cannot be combined with another scope."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Prose scopes never include inline code, and when ",{"$$mdtype":"Tag","name":"Link","attributes":{"href":"/docs/cli/v2/recheck/markdoc"},"children":["Markdoc parsing"]}," is on, they do not include the tag syntax either."," ","Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeCode: true"]}," on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swap"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pattern"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["repetition"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["consistency"]}," to match inside inline code."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"assertions","__idx":3},"children":["Assertions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each rule has one or more assertions under ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["assertions"]},", keyed by assertion id."," ","The ",{"$$mdtype":"Tag","name":"Link","attributes":{"href":"/docs/cli/v2/recheck/rules"},"children":["Markdown rules"]}," are also assertions, keyed by rule name, and a rule can combine both kinds."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Assertion"},"children":["Assertion"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Checks"},"children":["Checks"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fixable"},"children":["Fixable"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swap"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A word or phrase that should be replaced."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pattern"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A regex that should not match."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["occurrence"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["How many times a regex matches in a segment."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["repetition"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["An adjacent repeated word."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["consistency"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One spelling of a pair across the file."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["conditional"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A pattern that requires another pattern in the same file."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["capitalization"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Title case, sentence case, or a custom pattern."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["length"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The size of a segment in characters, words, or sentences."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["metric"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A readability score for the whole document."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spelling"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Words the dictionary does not know."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["semantic-line-breaks"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One sentence or phrase per line."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max-image-size"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The file size of linked images."]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"swap","__idx":4},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["swap"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports a word or phrase and suggests a replacement."," ","With ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--fix"]},", each match is replaced, and the match's own casing is applied to the replacement: a capitalized match gets a capitalized replacement, and an all-caps match gets an all-caps replacement."," ","When two pairs match overlapping text, the longest match wins."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  swap:\n    ignoreCase: true\n    wordBoundary: true\n    pairs:\n      utilize: use\n      in order to: to\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pairs"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["object"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Text to find mapped to its replacement."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["wordBoundary"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match whole words only. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["keysAreRegex"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Treat each key as a regex, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["favou?rite"]},". An invalid regex matches nothing. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Also match inside inline code spans. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the replacement, then the matched text."," ","With the pair ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["utilize: use"]},", the message ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["'Use \"%s\" instead of \"%s\".'"]}," prints ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Use \"use\" instead of \"utilize\"."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"pattern","__idx":5},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pattern"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports each match of a regex."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  pattern:\n    ignoreCase: true\n    tokens:\n      - '\\bvery\\b'\n      - '\\breally\\b'\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["tokens"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[string]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Regex patterns. An invalid pattern matches nothing."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["nonword"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Do not add word boundaries around each token. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Also match inside inline code spans. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the matched text."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"occurrence","__idx":6},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["occurrence"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Counts the matches of a regex in each segment and reports the segment when the count is outside ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]},"."," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min: 1"]}," without ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}," requires the pattern to be present."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"scope: paragraph\nassertions:\n  occurrence:\n    pattern: '[.!?]'\n    max: 3\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pattern"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The regex to count."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fewer matches is a finding."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["More matches is a finding."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the match count, then the bound that was crossed."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"repetition","__idx":7},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["repetition"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports an adjacent repeated word, such as \"the the\", including across a line break."," ","With ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--fix"]},", the pair collapses to the first word."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  repetition: {}\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["pattern"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The regex that defines a word. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["\\w+"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Compare without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},", because \"The the\" is the common typo."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Also look for repeats inside inline code spans. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the repeated word."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"consistency","__idx":8},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["consistency"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Each entry of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["either"]}," names two variants."," ","The variant that appears first in a file wins, and later uses of the other variant are reported."," ","With ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--fix"]},", they are replaced with the winning variant as written in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["either"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  consistency:\n    ignoreCase: true\n    either:\n      behavior: behaviour\n      color: colour\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["either"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["object"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Pairs of variants. Each pair has its own winner."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["includeCode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Also match inside inline code spans. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the later variant, then the variant that appeared first."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"conditional","__idx":9},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["conditional"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["first"]}," matches in the rule's scope, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["second"]}," must match somewhere in the whole file, code blocks included."," ","Otherwise each ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["first"]}," match is reported."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  conditional:\n    first: '\\bTBD\\b'\n    second: 'https://github\\.com/\\S+/issues/\\d+'\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["first"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The regex that requires ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["second"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["second"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The regex that must appear in the file."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Match without regard to case. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["false"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["first"]}," match, then the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["second"]}," pattern."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"capitalization","__idx":10},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["capitalization"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports a segment whose casing does not match the required style."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"scope: heading\nassertions:\n  capitalization:\n    match: $sentence\n    exceptions: [Redocly, Reunite]\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["match"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$title"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$sentence"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$lower"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$upper"]},", or a regex the whole segment must match."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["style"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The stopword list for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$title"]},": ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ap"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["chicago"]},". Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ap"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["exceptions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[string]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Words and phrases that keep their casing as written, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GitHub"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["VS Code"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["builtinVocabulary"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Add the built-in list of technical proper nouns, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["OpenAPI"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["npm"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Node.js"]},", to ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["exceptions"]},". Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$title"]}," capitalizes every word except articles, conjunctions, and prepositions."," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ap"]}," lowercases prepositions of three letters or fewer; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["chicago"]}," lowercases every preposition."," ","The first and last words are always capitalized."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$sentence"]}," capitalizes the first word and lowercases the rest, except exceptions and words in all caps."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$lower"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$upper"]}," require the whole segment in that case."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A regex must match the whole segment."," ","This mode is detection-only."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Words in all caps, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["API"]},", and inline code are never changed."," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--fix"]}," rewrites a single-line segment for the four ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["$"]}," styles."," ","A segment that spans several lines is skipped."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the segment text, then the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["match"]}," value."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"length","__idx":11},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["length"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Measures each segment in the rule's scope and reports it when the size is outside ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]},"."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"scope: sentence\nassertions:\n  length:\n    unit: words\n    max: 25\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["unit"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["characters"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["words"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sentences"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A smaller segment is a finding."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A larger segment is a finding."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the measured size, the unit, then the bound that was crossed."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"metric","__idx":12},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["metric"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Scores the prose of the whole document with a readability formula and reports the file once, at line 1, when the score is outside ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]},"."," ","The score reads the same prose as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["redocly recheck --readability"]},": headings, code, front matter, and Markdoc tags do not count."," ","A file with no prose is never reported."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  metric:\n    formula: flesch-reading-ease\n    min: 30\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["formula"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["flesch-reading-ease"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["flesch-kincaid-grade"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["gunning-fog"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["smog"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["coleman-liau"]},", or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["automated-readability"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A lower score is a finding."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["One of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A higher score is a finding."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The assertion always reads the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["summary"]}," scope."," ","Setting another scope prints a warning and has no effect."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the formula, the score, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["min"]},", then ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"spelling","__idx":13},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spelling"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports words that a Hunspell dictionary does not recognize, with up to three suggestions."," ","The English dictionary ships with Redocly CLI."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"scope: summary\nassertions:\n  spelling:\n    vocab: [Redocly, Reunite]\n    ignore: ['\\bAcme\\w*']\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["dictionary"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Base path of a custom Hunspell dictionary, without the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".aff"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":[".dic"]}," extensions, relative to the working directory."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vocab"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[string]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Words that are never reported, matched without regard to case."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignore"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[string]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Regex patterns. A word that matches any of them is never reported."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["builtinVocabulary"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Also accept the built-in list of technical proper nouns. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["true"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Words in all caps and words next to a digit, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["utf8"]},", are not checked."," ","Inline code is never checked."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Message placeholders: the unknown word, then a suggestion suffix in the form ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["— did you mean: world?"]},", or an empty string when there is no suggestion."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"semantic-line-breaks","__idx":14},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["semantic-line-breaks"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Requires one sentence, or one phrase, per line."," ","With ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--fix"]},", long lines are split after each sentence, and list item continuation lines are indented under the item text."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  semantic-line-breaks:\n    mode: sentence\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["mode"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["string"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sentence"]}," breaks after each sentence; ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["phrase"]}," also breaks at clauses."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["maxPhrase"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["In ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["phrase"]}," mode, the longest phrase that may stay on one line."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreCodeBlocks"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Skip code blocks."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ignoreTables"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Skip tables."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"max-image-size","__idx":15},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["max-image-size"]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reports an image whose file is larger than the limit."," ","The image path is resolved from the Markdown file and must stay inside the folder passed to the command."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"assertions:\n  max-image-size:\n    maxSizeKB: 200\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Option"},"children":["Option"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["maxSizeKB"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["number"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The limit in kilobytes. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["100"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["extensions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["[string]"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["File extensions to check. Default ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["jpg"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["jpeg"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["png"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["gif"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["webp"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["svg"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"built-in-proper-nouns","__idx":16},"children":["Built-in proper nouns"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["capitalization"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spelling"]}," assertions share a list of technical proper nouns, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["OpenAPI"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GraphQL"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["npm"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Node.js"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["VS Code"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Kubernetes"]},"."," ","It saves every project from listing the same names."," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["capitalization"]}," keeps them cased as written, and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spelling"]}," accepts them as words."," ","Set ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["builtinVocabulary: false"]}," on a rule to use only its own ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["exceptions"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vocab"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The list leaves out words that are also ordinary English, such as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Chrome"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Windows"]},", because an exception for them would weaken the check."," ","Add names like that in the rule's own ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["exceptions"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["vocab"]},"."," ","The list is exported as ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TECHNICAL_PROPER_NOUNS"]}," from the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["@redocly/recheck"]}," package."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"examples","__idx":17},"children":["Examples"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"us-spelling","__idx":18},"children":["US spelling"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"recheck:\n  rules:\n    recheck/us-spelling:\n      severity: error\n      scope: summary\n      message: 'Use the US spelling \"%s\" instead of \"%s\".'\n      assertions:\n        swap:\n          ignoreCase: true\n          wordBoundary: true\n          pairs:\n            colour: color\n            behaviour: behavior\n            organise: organize\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"sentence-length-with-an-exception-for-a-frozen-page","__idx":19},"children":["Sentence length with an exception for a frozen page"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"recheck:\n  rules:\n    acme/sentence-length:\n      severity: warn\n      scope: sentence\n      message: 'Sentence is %s %s long; keep it under %s.'\n      assertions:\n        length:\n          unit: words\n          max: 25\n      exceptions:\n        files:\n          - docs/legal/**\n","lang":"yaml"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"readability-floor-for-guides-only","__idx":20},"children":["Readability floor for guides only"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"yaml","header":{"controls":{"copy":{}}},"source":"recheck:\n  rules:\n    acme/readability-floor:\n      severity: warn\n      message: 'Readability (%s) is %s; expected between %s and %s.'\n      appliesTo:\n        - docs/guides/**\n      assertions:\n        metric:\n          formula: flesch-reading-ease\n          min: 40\n","lang":"yaml"},"children":[]}]},"frontmatter":{"seo":{"title":"Recheck prose rules","description":"Write your own prose and style rules for the recheck command with scopes and assertions."}},"tagList":[],"title":"Recheck prose rules","lastModified":"2026-10-05T09:58:30.000Z"}