summaryrefslogtreecommitdiff
path: root/bin
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 17:33:26 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 17:33:26 +0200
commit46ffa91fd4fcc2249cd097b3b3a639d37a7d592e (patch)
tree8aa5ec165685a21c190bee99a3ed58f648d6fdf8 /bin
parent152bba4c94060ea2ac7430dfdf826450ee4f2bd8 (diff)
downloadcolitur-46ffa91fd4fcc2249cd097b3b3a639d37a7d592e.tar.gz
colitur-46ffa91fd4fcc2249cd097b3b3a639d37a7d592e.zip
fix(lang): stop internal book ids reaching output, and finish the docs
Three defects, all found by running the documented examples rather than by reading code. All seven modern-numbering targets carried their own internal id as their Latin name (kings_1.full = kings_1), so --sigla-tradition modern printed "kings_1 19:3-8" -- leaking a key book.mli states is never shown to a reader. They now carry Vulgate-derived Latin names marked CONSTRUCTED: the 1962 Missal uses Vulgate numbering throughout, so it can contain no incipit for a book that exists only under a later convention. In Latin the modern tradition therefore only moves Kings and Esdras; Osee, Ionas, Ecclesiasticus and the Apocalypse keep their names either way, since modern numbering is a vernacular convention. The coverage test could not catch this. It compares a name against its KEY ("kings_1.full"), and "kings_1" differs from that, so the row passed. A second check now asserts no name IS its own id. The two are complementary: one catches a missing row, the other a row present but filled with the wrong thing. Mutation-proved. --help still claimed sigla settings were resolved "but not yet rendered", stale since the render wiring landed. colitur-config.5 documented none of the three settings even though config --show prints them.
Diffstat (limited to 'bin')
-rw-r--r--bin/main.ml7
1 files changed, 4 insertions, 3 deletions
diff --git a/bin/main.ml b/bin/main.ml
index 5ad3132..c76a082 100644
--- a/bin/main.ml
+++ b/bin/main.ml
@@ -1267,9 +1267,10 @@ naming:
`abbr`), the same discipline as an unknown `--lang`; an
unrecognised `--sigla-tradition` is not -- it degrades to the
Vulgate with a stderr warning, because asking for a renumbering
- is optional the way asking for a language is not. Settings
- only, for now: this build resolves and reports them but does
- not yet render a citation through them.
+ is optional the way asking for a language is not. `--raw`
+ bypasses all of it and emits each citation exactly as stored,
+ byte for byte, so it stays usable for diffing and does not
+ depend on the citation parser being correct.
colitur lang --list which language files this build can find, and
each one's own declared fallback, if any.