aboutsummaryrefslogtreecommitdiff
path: root/man/colitur.1
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-19 10:32:33 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-19 10:32:44 +0200
commitb90678e560808dd788fa7d7eb319d93a83005db4 (patch)
tree73bbd6e35e3e99e5c6ad769ae0ceb02853fa5b2c /man/colitur.1
parent2760d43d695ba08fc33f65357590675707b6570d (diff)
downloadcolitur-b90678e560808dd788fa7d7eb319d93a83005db4.tar.gz
colitur-b90678e560808dd788fa7d7eb319d93a83005db4.zip
docs(render): template reference, install rules, typesetting check
colitur-templates.5 documents the four syntax forms, the six flavours and their escaping, and the full view-model field reference. It states plainly that there are no partials, no raw form and no expression evaluation -- a template is data, never a program. It documents two real hazards found during this build, not theoretical ones: the outward scope fallback silently shadowing an inner name/num key with an outer one of the same name (with the safe {{#name}}...{{^la}} idiom), and the engine's lack of host-comment awareness (a {{...}} inside a LaTeX %, groff .\" or HTML <!-- --> comment is still parsed as a tag). It also states the limitation rather than hiding it: AsciiDoc and Markdown are not escaped, so a feast name containing * or _ renders as emphasis. templates/ and schema/ now install into <prefix>/share/colitur/, matching data/ef/, via new install stanzas; colitur-templates.5 installs to man5 beside colitur-overlay.5. Verified against a scratch prefix: the installed binary resolves both from the prefix, not the source tree, when run from an unrelated working directory. make check-templates typesets every shipped template through pdflatex and groff when they are installed, and prints SKIPPED loudly when they are not. Golden tests prove templates render; only this proves they typeset. A silent skip would read as a pass. Fixed a real doc/help drift while here: bin/main.ml's --help still said --overlay was accepted on day and readings only, three commands out of date (emit, table/render and publish all accept it too), disagreeing with the man page's own OVERLAYS section, which carried the identical stale line. Both are corrected; --overlay's own behaviour is unchanged.
Diffstat (limited to 'man/colitur.1')
-rw-r--r--man/colitur.126
1 files changed, 21 insertions, 5 deletions
diff --git a/man/colitur.1 b/man/colitur.1
index d015a49..005cc0a 100644
--- a/man/colitur.1
+++ b/man/colitur.1
@@ -448,6 +448,17 @@ needs and a booklet does not). A key absent on a given day (an optional field
a rite does not always set) renders as the empty string rather than an error
\(em the one deliberate silence, so a template survives a day that does not
carry every optional field.
+.PP
+See
+.BR colitur\-templates (5)
+for the full syntax, the escaping table per flavour, the complete
+view\-model field reference, and \(em before writing a template of any
+complexity \(em its
+.B SCOPE AND LOOKUP
+section: an inner key silently loses to an outer key of the same name (a bare
+.B {{name.la}}
+inside a day resolves to the enclosing MONTH's name, not the day's own),
+which has produced wrong output in this project's own templates.
.SS Flavours
.BI \-\-flavour
controls how interpolated
@@ -692,11 +703,9 @@ shapes:
.RE
.PP
Accepted on
-.B day
-and
-.B readings
-only. The other commands read no sanctoral data at all, so the flag would have
-no effect there and is
+.BR day ", " readings ", " emit ", " table ", " render " and " publish .
+.BR easter " and " temporal
+read no sanctoral data at all, so the flag would have no effect there and is
.I refused
rather than silently ignored.
.PP
@@ -845,6 +854,13 @@ reading citations fall back to the day's ordinary ones.
for the overlay file format \(em every directive, every field, the three date
shapes and worked examples.
.PP
+.BR colitur\-templates (5)
+for the template format used by
+.BR table ", " render " and " publish
+\(em the four syntax forms, the six flavours and their escaping, the full
+view\-model field reference, and the scope\-shadowing hazard a template author
+will hit.
+.PP
.BR lectio (1)
.SH LICENSE
AGPL\-3.0\-or\-later.