diff --git a/CHANGELOG.md b/CHANGELOG.md index bece9e2..c9bdd0f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,14 +36,14 @@ replacement, and each removed path, column or flag. nothing piped in, exits 2; an empty or blank stdin is a format string, and renders as sent. - A template or data file loads whatever is well-formed and means one thing, even where - part of it does nothing: a default written out, a one-item choice, an object holding only - a format, a constant sample such as `{int(5,5)}`, a `weight`, `separator` or `datatype` - where it does nothing, a name nothing reads, a repeated item, which counts as written, a - weight of `0`, which is never drawn, a `repeat` or count of `0`, which renders nothing, - `+5`, `05` and `-0`, and a reference into the category it sits in. A rows file no + part of it does nothing: a default written out; a one-item choice; an object holding only + a format; a constant sample such as `{int(5,5)}`; a `weight`, `separator` or `datatype` + where it does nothing; a name nothing reads; a repeated item, which counts as written; a + weight of `0`, which is never drawn; a `repeat` or count of `0`, which renders nothing; + `+5`, `05` and `-0`; and a reference into the category it sits in. A rows file no category names is ignored. `New` with no data loads, and renders templates that read - none. The CLI's `-n` takes `0`; `--list` ignores `--repeat`, `--format` and `--table`, - and `--table` is ignored without `--format sql`. + none. The CLI's `-n` takes `0`; `--list` ignores `--repeat`, `--separator`, `--format` + and `--table`, and `--table` is ignored without `--format sql`. - Table categories: a category JSON naming a `rows` TSV beside it, with the options `key`, `name`, `weight` and `parent`; a path selects a row by key or name, `misc.territory[SE]`, and descends to a linked table by name, one path drawing each diff --git a/README.md b/README.md index f1d5167..e6e6bdd 100644 --- a/README.md +++ b/README.md @@ -438,7 +438,7 @@ writing it as `{ "format": "AB", "weight": 3 }`. A repeated item counts as writt so `["a", "a", "b"]` draws `a` two times in three, and an item of weight `0` is never drawn. A weight outside a choice does nothing, and so does one above `0` on the item of a one-item choice. Rejected at load: a weight that is negative, not a number, or too -close to `0` to tell from it, such as `1e-400`, and a choice whose every weight is `0`, a one-item choice of weight `0` among them. +close to `0` to tell from it, such as `1e-400`; and a choice whose every weight is `0`, a one-item choice of weight `0` among them. ### Repeat diff --git a/docs/decisions.md b/docs/decisions.md index 1c12eb5..0ca5cf5 100644 --- a/docs/decisions.md +++ b/docs/decisions.md @@ -66,7 +66,7 @@ valid JSON so a stray copied bracket never swallows a tag — it names nothing, so. Reserving the characters whole — though only a leading one could collide — keeps one simple name rule instead of a leading-position special case. A JSON string stays a template even where its bare text renders alike, `"x {/a}"` beside -`x {/a}`: inside the quotes `\t` and `\n` write a tab or a newline on one line. A +`x {/a}`: inside the quotes, `\t` and `\n` let a one-line template write a tab or a newline. A folder-relative `{.name}` or `{..name}` is refused naming `{/name}`, since an inline template sits in no folder. `IsTemplate` exports the rule, so struct tags and any other caller read one.