mirror of
https://github.com/storytold/craft-libs.git
synced 2026-11-08 19:42:12 +00:00
CP2.2: English spelling reads SCOWL 2026 through the affix engine
craft-i18n's SCOWL rel-2026.02.25 dictionaries (en-us, en-gb -ise, en-ca) are embedded by build.rs and read per English: en-US, the British-spelling Englishes (en-AU, en-NZ, en-IE...) through en-GB, en-CA. Suggestions come from the run's own dictionary; a word is right when any of the three (or en-extra.txt) knows it, unless en-variants.txt marks it as the other dialect's. en-variants.txt stays: SCOWL's size-60 lists keep one spelling per dialect and Word accepts more (organize and organise in en-GB, judgement in en-US). English lookup order: dictionaries folder (the run's own English only), [installed English pack, craft-libs#485], embedded SCOWL, system Hunspell (own English only; not searched while SCOWL is embedded), the built-in Moby list. The embedded Moby list is no longer a spelling source (the built-in list is the same list); it stays for hyphenation. The dialect policy applies to every source. The affix engine gains COMPOUNDRULE (one-character flags, * and ?), ONLYINCOMPOUND and COMPOUNDMIN, which SCOWL uses for ordinals (21st, 112th). Hostile patterns are capped (64 rules, 32 tokens, 48-byte words) and checked by a memoised walk. load_english now reads them instead of ignoring them (and keeps ONLYINCOMPOUND stems as compound parts); only flag-based compounding and OCONV are still ignored for English. scowl::notice() exposes the SCOWL/Ispell/Titze notice for About. Embedded Language data grows by 1,542,396 bytes. CI pins craft-i18n#109's merge commit efb1127. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FypgCX8LsYYE8fsj4byBm2
This commit is contained in:
1 parent
9e5862a1c1
commit
e6e948f7d5
10 files changed
+649
-272
No files matched your search
@@ -25,10 +25,11 @@ jobs:
|
||||
with:
|
||||
persist-credentials: false
|
||||
# The Language data (craft-i18n `language-data/`), embedded by crates/proof/build.rs.
|
||||
# Pinned to storytold/craft-i18n#109's merge commit (the SCOWL dictionaries, CP2.1).
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
repository: storytold/craft-i18n
|
||||
ref: 062a6375c322c88b96691a17f7b5fed71c51f7a8
|
||||
ref: efb1127ac65b238ccfe7df1893f33e91b924b96e
|
||||
path: craft-i18n
|
||||
persist-credentials: false
|
||||
- uses: dtolnay/rust-toolchain@b725eda525362e7cf34af9a7243cac1e3f01a7ec # stable
|
||||
|
||||
Reference in new issue
Block a user