aboutsummaryrefslogtreecommitdiff
path: root/lib/render/view.mli
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 19:05:13 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-08-20 19:05:13 +0200
commit7dbd16cdf5880c0006dffacd09214ee607050b64 (patch)
tree01e1ee37a2be97a0b06fad70de975d8007beb702 /lib/render/view.mli
parent1aeca948c2a2a82bffaaec65077140aa05f7b3f4 (diff)
parent1da70dc7ac03fe33fb92b172a0e26932764170d6 (diff)
downloadcolitur-7dbd16cdf5880c0006dffacd09214ee607050b64.tar.gz
colitur-7dbd16cdf5880c0006dffacd09214ee607050b64.zip
Merge branch 'citations-and-sigla'
Citations are parsed into structure and re-rendered, so book names, abbreviations, punctuation style and numbering tradition become files a user edits rather than strings frozen in the data. New lib/citation (Book, Parse, Render, Sigla); [bible] and [sigla] sections in language files; lang/traditions.ini for numbering; three config keys and CLI flags. --raw emits every citation byte-for-byte as stored, bypassing the whole pipeline, so output stays diffable against lectio and the raw view does not depend on the parser being correct.
Diffstat (limited to 'lib/render/view.mli')
-rw-r--r--lib/render/view.mli14
1 files changed, 11 insertions, 3 deletions
diff --git a/lib/render/view.mli b/lib/render/view.mli
index 81bfc26..d271641 100644
--- a/lib/render/view.mli
+++ b/lib/render/view.mli
@@ -16,13 +16,14 @@
val of_days :
lang:Colitur_naming.Lang.t ->
+ sigla:Colitur_citation.Sigla.t ->
vocab:('s, 'r) Colitur_kernel.Vocab.t ->
rite:string ->
year:int ->
('s, 'r) Colitur_kernel.Liturgical_day.t list ->
Template.value
-(** [of_days ~lang ~vocab ~rite ~year days] where [days] is one civil year,
- 1 January to 31 December, in order. Pure and total.
+(** [of_days ~lang ~sigla ~vocab ~rite ~year days] where [days] is one civil
+ year, 1 January to 31 December, in order. Pure and total.
[lang] resolves every display string -- a day's [name], its localised
[weekday]/[rank_name]/[colour_name]/[season_name], each month's [name],
@@ -35,4 +36,11 @@ val of_days :
[slug] is untouched by [lang] -- it stays the stable machine key,
identical between any two calls that differ only in [lang]. Pass
{!Colitur_naming.Lang.raw} for the pre-naming behaviour, under which
- [name] equals [slug] exactly (this is what CLI [--raw] uses). *)
+ [name] equals [slug] exactly (this is what CLI [--raw] uses).
+
+ [sigla] resolves the [first]/[gospel] citation fields (Task 9): each
+ stored reference is passed through {!Colitur_citation.Sigla.format}
+ rather than emitted verbatim. Pass {!Colitur_citation.Sigla.verbatim}
+ alongside {!Colitur_naming.Lang.raw} for [--raw] -- a styled [Sigla.t]
+ built over [Lang.raw] would still parse and reformat every citation,
+ which defeats the byte-exact diffing [--raw] exists for. *)