Plain English
markdown source of this page
The page as a markdown file: index.md
+++
title = "Plain English"
subtitle = "British spellings, old and legal words, and one word that is not a word"
status = "approved"
categories = ["Refusals"]
intent = """
The plain-English check exists so that every page of one wiki reads in one English, in words a reader
would use themselves. A spelling from another English, or a word out of a contract, makes a reader stop
on the word instead of the fact — and a word no dictionary holds tells them no person read the page.
"""
[[infobox]]
group = "Rules"
rows = [
{ label = "Refusals", value = "British spellings, old and legal words, one non-word", cite = "check" },
{ label = "Message", value = "the word to write instead", cite = "check" },
{ label = "Scope", value = "fields and sentences, no headings", cite = "scope" },
{ label = "Exceptions", value = "words inside code", cite = "code" },
]
+++
A wiki is read by people who did not write it, so every page uses one English: American, and words a
person says out loud.[^check] Each refusal names the page, the line and **the word to write instead**, so a writer
fixes it without looking the spelling up.[^check] The other wording refusals are
described on [Wording](../wording.md).
## Refusals
### British spellings
A British spelling is refused with its American word: `behaviour` for `behavior`, `colour` for `color`,
`licence` for `license`, `labelled` for `labeled`, `centre` for `center`, `judgement` for `judgment`,
`grey` for `gray`, `towards` for `toward`, `analyse` for `analyze`, and every verb spelled `-ise` where
American English spells it `-ize`, in each of its `-s`, `-d`, `-ing` and `-ation` forms.[^british]
**Every word is listed by name, never matched by its ending.**[^british] A rule on `-ise` would take
`raise`, `precise`, `promise`, `otherwise`, `surprise`, `advise`, `revise` and `exercise` with it, and
each of those is correct English already in use on these pages.[^british]
### Old and legal words
A word from the old register, or from the register of contracts, is refused with the plain word that
replaces it: `whilst` for `while`, `amongst` for `among`, `shall` for `will` or `must`, `ought` for
`should`, `thus` and `hence` for `so`, `notwithstanding` for `even so`, `albeit` for `though`.[^old] A
word that points where a name belongs — `thereof`, `therein`, `wherein`, `aforementioned` — is refused
with the instruction to name the thing.[^old] `hereby` and `herein` carry ceremony and no fact, and are
deleted.[^old]
### A word that is not a word
`fellen` is refused by name: agents write it, and no dictionary holds it.[^word]
## Scope
The check reads the places the empty-word check reads: the title, the subtitle, the intent, every infobox
group, label, value and note, and every sentence.[^scope] Headings are left out.[^scope]
## Exceptions
A word inside code is left alone, so a name the software owns, such as `chartColours()`, is written the
way the software spells it.[^code]
[^check]: `src/builder/build.py` — `plain_english_problems()`, called from `check()`, names the field, or
the page and line, and gives the word to write instead.
[^british]: `src/builder/build.py` — `BRITISH` maps each refused spelling to its American word, one entry
per word; the comment above it gives the reason the list is not a pattern.
[^old]: `src/builder/build.py` — `OLD_ENGLISH` maps each refused word to what a writer puts in its place.
[^word]: `src/builder/build.py` — `NOT_A_WORD` holds `fellen`, and `plain_english_problems()` reports a
word from it as not a word.
[^scope]: `src/builder/build.py` — `plain_english_problems()` reads the places `wording_places()` gives it,
which are the title, subtitle and intent, every infobox group, label, value and note, and every
sentence from `page_statements()`, which blanks headings.
[^code]: `src/builder/build.py` — `wording_places()` removes `INLINE_CODE` before a field or a sentence is
matched, and `PLAIN_ENGLISH` ignores case.
Last updated 17 September 2026