aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 09:28:20 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 09:28:20 +0200
commit99dbddb2106f8a3ca31c7e0c43b7dc1a81652786 (patch)
treeefcc59ad63e56b8a904036a6523823c0a9dbb3b0 /README.md
parent0f94c388880972f8e665ed01a6b38190bcc61499 (diff)
downloadcolitur-99dbddb2106f8a3ca31c7e0c43b7dc1a81652786.tar.gz
colitur-99dbddb2106f8a3ca31c7e0c43b7dc1a81652786.zip
docs(naming): the config man page, and the field reference
colitur-config.5 documents the file's location, the flag > config > default precedence, every setting, and that an unknown key is warned about rather than fatal. Its worked example is a real run against the shipped example overlay, pasted rather than hand-typed -- including one genuine gotcha found while verifying it: overlay/template values are not shell-expanded, so a bare "~/..." written into the config file fails to load; the full path must be written out instead. colitur-templates.5's field reference is updated for the view change -- every field checked against lib/render/view.ml and schema/day-v1.json, not transcribed from memory or an earlier version of this page -- and its worked example is pasted from a real `colitur table` run. Its scope-shadowing warning about {{name.la}} is REMOVED and replaced with a short note that the hazard is now unrepresentable, because name is a plain resolved string with no dotted path left to fall back through. The num collision between a month and a week (both carry num, and a bare {{num}} read from inside a day silently climbs to the week's own value, not the month's) still exists and is demonstrated with a real render, not merely asserted. A man page describing a hazard that was fixed is as wrong as one that omits a real hazard. Two further stale mentions of the removed {{name.la}} hazard, and two places describing the schema as "Latin and English names" rather than one resolved display name, were found in colitur.1 while cross-checking and fixed alongside the primary rewrite; its own CSV example in EMIT was also still the pre-Task-5 column list (name_la/name_en, no *_name columns) and is now the real, verified header. lang/ already installs beside templates/ and schema/ (a prior hotfix); colitur-config.5 is added to install/uninstall/man/doc in the Makefile so `make install`/`make doc` cover it too.
Diffstat (limited to 'README.md')
-rw-r--r--README.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/README.md b/README.md
index 5914734..affb91f 100644
--- a/README.md
+++ b/README.md
@@ -41,6 +41,32 @@ See `colitur-templates(5)` for the template format (syntax, escaping, the
full field reference) and `colitur(1)` for `emit`, `table`/`render` and
`publish` in full.
+## Language
+
+Every command's output is names, not slugs, by default (`--raw` restores
+the bare-slug form). Start a new translation from the shipped Latin table,
+edit a couple of entries, check it, and render with it -- every line below
+is real, not transcribed:
+
+```sh
+$ dune exec colitur -- lang --dump la > my-lang.ini
+$ sed -i \
+ -e 's/^ef-circumcision = .*/ef-circumcision = My Own Circumcision Text/' \
+ -e 's/^ef-epiphany = .*/ef-epiphany = My Own Epiphany Text/' \
+ my-lang.ini
+$ dune exec colitur -- lang --check my-lang.ini
+my-lang.ini: 725 of 725 celebrations named, 0 missing, 0 unknown
+$ dune exec colitur -- day 2026 --lang ./my-lang.ini | head -1
+2026-01-01 thursday christmastide - ef-circumcision class-1 white My Own Circumcision Text
+```
+
+`--check` reports what a language file is still missing, and rejects any
+entry naming a slug that does not exist (a typo, otherwise silently dead).
+`colitur lang --list` shows what this build can find; `colitur config
+--show` shows the effective `--lang` (and every other setting) plus where
+it came from. See `colitur(1)`'s `NAMING` section and `colitur-config(5)`
+for both in full.
+
## License
AGPL-3.0-or-later. See `LICENSE`.