Skip to content Aller au contenu

Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

syntax.nested-negation

What it flags

Sentences that stack multiple negations. Two or more negations in the same sentence force the reader to mentally toggle truth values — a known burden for readers with aphasia and attention-fragile readers (ADHD), and a load multiplier for everyone reading under cognitive pressure. Plain-language guidelines (FALC, CDC Clear Communication Index, plainlanguage.gov) recommend rewriting double negatives as positives.

At a glance

Categorysyntax
Default severitywarning
Default weight2
Condition tagsaphasia, adhd, general
LanguagesEN · FR (language-specific counting)
Sourcesrc/rules/nested_negation.rs

Detection

Count the negations per sentence; report sentences whose count exceeds max_negations.

  • English — sum of word-boundary matches against the language’s negation list (not, no, never, none, nothing, nobody, nowhere, neither, nor, cannot, without) plus occurrences of the contracted n't suffix (don't, won't, isn't, doesn't, …).
  • French — pair-based bipartite counting. Each ne / n' clitic contributes one negation and pairs with its nearest second-position particle (pas, rien, jamais, plus, personne, aucun, aucune, guère, nulle part) within a short window; the pairing just consumes the particle to avoid double-counting. Unpaired particles in a ne-sentence contribute one more — this catches forms like rien used as a nominal negative subject. Guards: pas / plus never count when unpaired (too ambiguous outside ne …); rien preceded by de is treated as the idiom de rien and skipped; particles in a sentence with no ne clitic are skipped too (plus de courage, personne d'autre). Standalones sans / non always count.

Parameters

KeyTypedev-docpublicfalc
max_negationsint321

Examples

lucid-lint reports; the rewrite is always yours.

English

Three negations → three affirmatives, colour-matched across the rewrite. The not simply drops — the simplification shows.

Before (flagged):

We do not say nothing is never possible.

Three negations (not, nothing, never).

What lucid-lint check --profile public reports:

warning input.md:1:1 Sentence stacks 3 negations (maximum 2). Rewrite as a positive statement or split the negations across separate sentences. [syntax.nested-negation]

After (your rewrite):

We say something is possible.

French

Passes under public:

Nous ne sommes pas prêts.

Bipartite ne ... pas counts as one negation.

Before (flagged):

Nous ne disons pas que rien n’est jamais possible.

Three negations: ne…pas (one bipartite), rien (unpaired), n'…jamais (one bipartite).

What lucid-lint check --profile public reports:

warning input.md:1:1 Sentence stacks 3 negations (maximum 2). Rewrite as a positive statement or split the negations across separate sentences. [syntax.nested-negation]

After (your rewrite):

Nous disons que quelque chose est possible.

Suppression

See Suppressing diagnostics.

See also

References

See References for the full bibliography.