aboutsummaryrefslogtreecommitdiff
path: root/internal/caldata/caldata.go
Commit message (Collapse)AuthorAgeFilesLines
* caldata: allow an external universal sanctorale to override the embedded oneLukasz Kasprzak2026-07-281-1/+26
| | | | | | | | | | | | | | | | The universal calendar of saints can now be refreshed or replaced without a rebuild: if ~/.config/lectio/sanctorale/of.ini (OF) or ef.ini (EF) is present and parses, caldata.Base uses it instead of the embedded calendar; a missing or malformed file falls back to the embedded default, so the binary stays self-contained and correct out of the box. Local diocesan/national additions keep layering on top via calendars/ + `use` (unchanged). The temporal cycle and precedence rules stay in code -- only the sanctorale is data. - caldata.SetSanctoraleDir hook (mirrors bible/naming/i18n); Base() prefers the external file per form. config.SanctoraleDir(); wired in the CLI, TUI and web entry points. Tests cover override, no-file, and malformed-file fallback. - README: new "Calendar of saints" section (two tiers: overlay via `use`, replace via sanctorale/<form>.ini); config comment notes the override.
* feat(caldata): OF Sunday/solemnity readings by slug+cycle (seed table)Lukasz Kasprzak2026-07-271-2/+8
|
* feat: EF temporal Sunday lectionary (offline Sunday Mass readings)Lukasz Kasprzak2026-07-271-0/+33
| | | | | | | | | Unique temporal-day slugs (season-sunday-week); scripts/genlect.go generates tridentine-lectionary.ini from missalemeum keyed by slug (55 entries: the Sundays of the whole EF year). caldata.TemporalReadings(form,slug) lookup; --liturgy resolves proper-of-feast else the temporal cycle and renders the text. bible.ParseRef strips abbreviation dots (1 Cor. -> 1 Cor). 52/53 Sundays fully resolve offline.
* feat(caldata,cli): embed 1962 EF calendar + form-aware Stack; --liturgy ↵Lukasz Kasprzak2026-07-271-8/+29
| | | | | | | | computes EF caldata.Tridentine()/Base(form); Stack(form,dir,use); runLiturgy drops the EF guard and uses the form's base; rankLabel shows I-IV class; display omits OF cycles + strips ef- slug prefix for EF.
* feat(caldata): export ParseLayer + LoadLayer + Stack (user calendar layers)Lukasz Kasprzak2026-07-271-2/+41
|
* feat(caldata): embed + parse the owned universal Roman calendar (initial ↵Lukasz Kasprzak2026-07-271-0/+69
coverage)