State the pinned and whole rule once, and file what the errors leave unsaid
This commit is contained in:
+3
-3
@@ -18,9 +18,9 @@ replacement, and each removed path, column or flag.
|
||||
`parent`, a name repeating inside one parent row, a name spelling another row's key, a table named like a column of any
|
||||
table above it, a table whose format or cell references its own family, and,
|
||||
within one render and draw group, a path drawing a table another path selects a
|
||||
row of, or two paths pinning different rows of one table. Two reads are held to one
|
||||
draw only where both their rows can render together: a path read pins a row's
|
||||
ancestors with it, while a table read whole draws a row and pins none.
|
||||
row of, or two paths pinning different rows of one table. A read inside a cell is
|
||||
weighed against another only where both rows can render together, which two rows of
|
||||
one table, or rows under two different rows of an ancestor a path pinned, never can.
|
||||
- `New` refuses a root choice of templates sharing one format and one set of string
|
||||
fields, naming the rows TSV to write instead.
|
||||
- `misc.territory`, `misc.currency`, `misc.language`, `misc.httpstatus` and
|
||||
|
||||
@@ -1103,9 +1103,10 @@ the Development section below, and who ships a register the four above then draw
|
||||
a template beside the family under a selected row, is refused today; admitting it
|
||||
later is additive, since a refused spelling gains a meaning and no accepted one
|
||||
changes, so the door stays open for the address records the plan describes.
|
||||
- **A table read into is pinned; a table rendered whole draws afresh.** A path into a
|
||||
table pins its row for the render and group, as a reference path pins its level,
|
||||
and a bare `{/city}` draws each time, as a bare reference does; so a bare table
|
||||
- **A table read into is pinned; a table read whole draws afresh.** A path into a
|
||||
table pins its row, and the ancestor rows it links to, for the render and group, as a
|
||||
reference path pins its level, and a bare `{/city}` draws a row each time and pins no
|
||||
row of its family, as a bare reference does; so a bare table
|
||||
beside a path into its family is refused like a bare reference beside a path into
|
||||
it. A bare table reference still counts as a read for a `drawGroup`, since the group
|
||||
is what draws it apart from the family's pins.
|
||||
@@ -1140,9 +1141,9 @@ the Development section below, and who ships a register the four above then draw
|
||||
- **The rows of a table are alternatives.** Only one row renders, so a cell in one
|
||||
row and a cell in another never meet, and each may select its own row of another
|
||||
table; the cells of one row, and whatever they reach, do meet, and so does the
|
||||
format beside them. The rule the fence applies is that two reads meet unless they
|
||||
sit in two rows of one table, or in rows that never render together: a path read
|
||||
pins a row's ancestors with it, while a table read whole draws a row and pins none. A
|
||||
format beside them. The rule the fence applies is that two reads meet unless they sit
|
||||
in rows that never render together: two rows of one table, or rows under two different
|
||||
rows of an ancestor a path pinned. A
|
||||
choice's items get no such treatment yet: two items selecting different rows
|
||||
are still refused.
|
||||
- **A table never reaches its own family, by any route.** A `repeat` iteration and a
|
||||
|
||||
@@ -153,10 +153,22 @@ by a `data-import/` script, as README goal 12 asks.
|
||||
|
||||
### Library and CLI
|
||||
|
||||
- Hold two whole reads of one table to one row, or refuse the pair: `{/region}|{/region}`
|
||||
draws a row for each read, so cells of two rows render together while the fence counts
|
||||
them alternatives and compares neither — a bare `{/addr}` in one row beside
|
||||
`{/addr.city}` in another is the overlap it refuses everywhere else.
|
||||
- Refuse two whole reads of one table family in one render, which goal 5 promises is a
|
||||
load error: `{/sel}|{/sel}` panics out of `Fake` with "a fence should have refused this
|
||||
at New" where the two draws land on rows whose cells select different rows of another
|
||||
table, and `{/geo.SE.locality}|{/geo.SE.municipality}` renders a locality outside the
|
||||
municipality beside it. Each read draws its own row, so cells of two rows render
|
||||
together, where the fence counts them alternatives and compares neither.
|
||||
- Name the cell a refused read sits in: where both reads come from TSV cells the overlap
|
||||
error says `{area} with {/addr} renders a level that {where} with {/addr.city} reads a
|
||||
path into`, naming neither table, row nor column, so the author greps a register-sized
|
||||
file — and "name the fields you want instead" rewrites a cell that is not the one to fix.
|
||||
- Stop the family fence naming a rewrite that cannot work: where the drawn table's rows
|
||||
select more than one row of the family, every `write {/terr[NO].name}` it offers fails
|
||||
the same way, and only the `drawGroup` it also names is left.
|
||||
- Spell a table one way in an error: `family.go` names `drawn.category` in one message and
|
||||
`t.path` in the next, so one table is `territory` and `misc.territory`, and the short
|
||||
spelling names no file where two folders hold that name.
|
||||
- Name a spelling that works when a row selector misses: `misc.protocol[tcp]`,
|
||||
`misc.httpmethod[get]` and `misc.territory[se]` all answer "no row … has key or name"
|
||||
and stop there, where a case-insensitive match could name the row that exists, and a
|
||||
@@ -172,6 +184,10 @@ by a `data-import/` script, as README goal 12 asks.
|
||||
|
||||
### Open questions to settle
|
||||
|
||||
- Decide whether the README's Audience names the author who writes categories under
|
||||
`--data-path`: the four personas listed consume the shipped set and the contributor
|
||||
ships a register upstream, while "Your own data" is a README section, `-d` is a
|
||||
first-class flag, and every load error the draw fences raise lands on that author.
|
||||
- Decide whether `data/misc`'s 33 flat files gain a level before v1.0.0: a folder is a
|
||||
path segment, so `misc/net/tld` is a rename a consumer pays for, and goal 13 promises
|
||||
the directory keeps growing.
|
||||
|
||||
Reference in New Issue
Block a user