aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bin/main.ml16
-rw-r--r--test/cli.t17
2 files changed, 26 insertions, 7 deletions
diff --git a/bin/main.ml b/bin/main.ml
index 582c776..01410f2 100644
--- a/bin/main.ml
+++ b/bin/main.ml
@@ -1281,8 +1281,8 @@ output formats:
2026-04-05 sunday paschaltide 1 ef-easter-sunday class-1 white
readings date slug | Epistle | Gospel [| name]
2026-12-25 ef-nativity | Heb 1:1-12 | John 1:1-14
- rubrics date, formulary slug, source -- TAB-separated
- 2026-01-01[TAB]ef-circumcision[TAB]own
+ rubrics date, formulary slug, source, creed -- TAB-separated
+ 2026-01-01[TAB]ef-circumcision[TAB]own[TAB]true
A citation contains spaces, so readings uses " | " between its fields while
day stays space-separated; that is why they are separate commands rather
@@ -1298,11 +1298,13 @@ output formats:
rubrics prints which Mass is actually said and how that was decided
(source: proper/own/preceding-sunday/common/votive) -- not always the
day's own: a weekday with no proper resumes the preceding Sunday's, a
- saint with no proper says his assigned Common. TAB-separated rather than
- space or " | ": a resolved formulary NAME is a column a later version may
- add, and it can carry both spaces and punctuation a citation never does,
- which rules out either alternative already in use above. --overlay is
- accepted (the observed celebration it changes decides the formulary);
+ saint with no proper says his assigned Common -- followed by whether the
+ Creed is said (RG 475-476: "true"/"false", OCaml's own literal, not
+ "yes"/"no" or "1"/"0"). TAB-separated rather than space or " | ": a
+ resolved formulary NAME is a column a later version may add, and it can
+ carry both spaces and punctuation a citation never does, which rules out
+ either alternative already in use above. --overlay is accepted (the
+ observed celebration it changes decides the formulary and the Creed);
--lang/--raw/--sigla-* are refused -- this row resolves no display name
and no citation for any of them to affect.
diff --git a/test/cli.t b/test/cli.t
index 971e442..5bf8d83 100644
--- a/test/cli.t
+++ b/test/cli.t
@@ -334,6 +334,23 @@ is the check that catches help text drifting away from the dispatch:
$ for c in easter temporal day readings rubrics; do colitur $c 2026 > /dev/null || echo "$c FAILED"; done
+`rubrics`' own field count drifted once already (Task 5 landed a fourth
+column, creed; --help's "output formats" section and its worked example
+still showed three, and stayed wrong for a whole review round because
+nothing here pinned the help BODY, only command dispatch above). This
+compares --help's own worked example against what `rubrics` actually
+prints for the identical day, so the two cannot silently drift apart
+again in either direction:
+
+ $ colitur --help | grep '^ rubrics date'
+ rubrics date, formulary slug, source, creed -- TAB-separated
+
+ $ colitur --help | sed -n '/^ rubrics date/{n;p}'
+ 2026-01-01[TAB]ef-circumcision[TAB]own[TAB]true
+
+ $ colitur rubrics 2026 | grep '^2026-01-01' | sed $'s/\t/[TAB]/g'
+ 2026-01-01[TAB]ef-circumcision[TAB]own[TAB]true
+
--version prints the version alone, to standard output, exit 0. Deliberately
not embedded in the help text above: this pin would then have to be edited
every release, for no gain. The Makefile's release target asserts the built