Neatbo.

Why an apostrophe policy is more than character replacement

Dictionary conversion, case rules and exact whitelist matching answer different questions about the same original word.

Separate the original from lookup candidates

aren’t and aren't are distinct strings in the original. Dictionary ICONV may map them to the same lookup candidate without changing the original. Whitespace, case and compound rules can also change candidates. Keep the actual transformation order instead of inventing an explanation after checking.

Three different questions
QuestionEvidence
Are original words equal?Original bytes, full tokens, ordinals and source positions
Does the dictionary accept it?Boolean and complete attempts from the same correct call
Was it explicitly whitelisted?Exact-original group and all entry ordinals; dictionaryCorrect=null

Do not accept an ordinal hidden inside a word

An unanchored original nspell compound regex can match 21st inside zzz21stzzz. This tool adds only whole-word ^(?:...)$ anchors to compound expressions while retaining mature branches and case flags. Eighteen finite ordinal strings were independently checked; that does not prove equivalence for all Hunspell grammar or all words. The new page sample also retains the incorrect status and complete original of zzz21stzzz.

A whitelist override should not erase input

The whitelist is case-sensitive and performs no trim, apostrophe conversion or Unicode normalization. Duplicate and empty entries remain. An explicit empty string overrides only an exact empty word, not a whitespace-only word. String "-0" is text rather than numeric zero; duplicate words retain separate rows.

  • Use every group’s entryOrdinals to trace the override.
  • Read the selected policy when comparing originals with toolPrelookup and dictionaryLookup.
  • Keep originals, settings, fixed dictionary and full licenses alongside the boolean.

Scope and source obligations

Regex VM internal steps, native container memory estimates, joint capacity, complete Hunspell equivalence, native Worker and cross-engine acceptance remain pending. The original private word list and environment were not published. This is not grammar certification.

Dictionary includes UKACD, SCOWL, WordNet, VarCon and Ispell notices. Read all licenses in the supplied documentation.

The dictionary includes complete SCOWL, WordNet/Princeton, UKACD, VarCon and Ispell notices. This tool has no source endorsement and does not rewrite user words or certify grammar. Private original data, regional conventions and compatibility with the old environment remain unknown.

References

Tools in this category

Expand a tool to see its steps, options and supported formats, then open its workspace.

Original word list spelling checkCheck every original English word under an explicit apostrophe policy and retain complete lookup and whitelist evidence.

Choose one of three apostrophe policies for the fixed en_US dictionary. Repeated words, whitespace, empty words and original JSON lexemes keep distinct ordinals and source positions. An exact-original whitelist can override a word without changing the dictionary.

Steps

  1. Select one complete UTF-8 file or pasted word list and separately choose TXT lines or a JSON string array for words and the optional whitelist.
  2. Select the active apostrophe policy. The whitelist matches original characters and case exactly; an empty string overrides only an exact empty word.
  3. Read all 26 columns and actual transformation/lookup traces across every page. Use complete-file readers for originals, settings, dictionary and all licenses.
  4. Copy the complete report and inventory and save all 10 files, or 11 files including the whitelist original when enabled.

Available options

Word source
Local file · Paste complete text
Word-list format
TXT: one word per line · JSON: string array
Apostrophe policy
Dictionary policy: includes native curly-apostrophe conversion · Convert U+2019 to ASCII apostrophe in the lookup copy · Keep original apostrophes; disable dictionary input conversion
Exact original-word whitelist
No whitelist · Local file · Paste complete text
Word-list format
TXT: one word per line · JSON: string array

Capabilities and limits

  • Words plus whitelist share 4 MiB UTF-8; words have at most 100,000 rows and the whitelist separately has at most 100,000 entries; each word has at most 128 Unicode codepoints.
  • The fixed AFF and DIC share 8 MiB; at most 100,000 word checks; loading, expansion, whitelist, lookup and serialization share 100,000,000 observable charged work units.
  • All 10/11 files plus independent complete copy text share 64 MiB. Held sources, dictionary, rows, serialization, clones, Blobs and UI representations share a conservative 768 MiB preallocation guard.
  • The absolute 60-second deadline starts at input capture and covers reading, module loading, dictionary initialization, checking, encoding, complete validation, cleanup and first publication; no pre-expanded dictionary bypass.
  • TXT retains CRLF, CR, LF and trailing empty rows; JSON accepts only a complete string array. Invalid UTF-8 and isolated surrogates are rejected. String "-0" stays text; a numeric -0 word is rejected.
  • Regex VM internal steps, native container memory estimates, joint capacity, complete Hunspell equivalence, native Worker and cross-engine acceptance remain pending. The original private word list and environment were not published. This is not grammar certification.
Open Original word list spelling check →