docs(context): core.md section 20 traces its rules to all three clauses and says folding output becomes _ (improvise-cq1q.14)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VdfEGXA7aJ6ftMsCc9PJze
This commit is contained in:
committed by
Edward Langley
parent
2e1f0f6550
commit
b17bcb068b
@@ -1692,7 +1692,8 @@ probability (`> ||[||]` is a self-parent), so `generated_file_parses` accepts a
|
||||
piece of ADR 007. They are pure functions of their arguments and the
|
||||
allocator's own history. Nothing calls them yet: the creation sites move onto them in the re-key step (improvise-cq1q.4).
|
||||
Each rule traces to ADR 007's clause 4 (slugify, the counter, hand-written
|
||||
ids) or clause 1 (reserved ids).
|
||||
ids, natural order), clause 1 (reserved ids) or clause 2 (display suffixes),
|
||||
as amended by amendment 1.
|
||||
|
||||
**Case folding is full Unicode folding, and it comes from `unicase`.**
|
||||
`str::to_lowercase` is not folding: `ß` lowercases to itself and then
|
||||
@@ -1700,9 +1701,9 @@ becomes `_`, so `Straße` would slug to `stra_e` (clause 4, step 1: full case
|
||||
folding). The same goes for `ſ` (long s) and the `fi` ligature. `unicase` 2.9 is `no_std` and has no
|
||||
dependencies, so it passes the wasm gate. Its `to_folded_case` applies the
|
||||
C+F mappings of Unicode's CaseFolding.txt, and its own tests pin `Maße` →
|
||||
`masse`. Most of what folding produces is stripped anyway: only an ASCII
|
||||
letter survives step 3. Deriving that ASCII-producing subset of the table by
|
||||
hand was rejected. It is a second copy of the Unicode data, and nothing would
|
||||
`masse`. Most of what folding produces becomes `_` anyway: only ASCII
|
||||
letters, digits and `-` survive step 2. Deriving that ASCII-producing subset of
|
||||
the table by hand was rejected. It is a second copy of the Unicode data, and nothing would
|
||||
say when it drifted.
|
||||
|
||||
**Slugify is the amendment's six steps** (ADR 007 amendment 1, clause 4):
|
||||
|
||||
Reference in New Issue
Block a user