diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 11:32:24 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 11:32:24 +0200 |
| commit | e2e56ac5af290b60ea01037e58e8bc00545c021c (patch) | |
| tree | 6346f4ee62809323e8fb0f9041b28e35787d9828 /lang/la.ini | |
| parent | c30a35e1da315f2a44e5b53c714bdcf4d8992d2c (diff) | |
| download | colitur-e2e56ac5af290b60ea01037e58e8bc00545c021c.tar.gz colitur-e2e56ac5af290b60ea01037e58e8bc00545c021c.zip | |
feat(render): Roman week numbers and date spans, as data
The ordo booklet's week header repeated the month name on every week
even though the heading above already established it -- pure noise.
Replace it with a Roman week number plus the span of dates the week
covers, e.g. "Hebdomada I (Ian 1-2)", following the project's own rule
that a presentation choice is data, not code.
lang/{la,en}.ini gain a [month_abbr] section (three-letter month
abbreviations); Lang.month_abbr follows Lang.month's exact shape,
including the out-of-range and miss-returns-the-key contracts. The
coverage test now fails loudly if an abbreviation goes missing, the
same as [month] already does.
Every week object in the view gains num_roman (Roman numeral, num
stays as the arabic original -- Roman is a presentation choice, not an
engine change), first_dom/last_dom (the day-of-month of the week's
first and last IN-MONTH days, padding excluded), month_abbr (resolved
through Lang.month_abbr), and single_day (true when the week holds
exactly one in-month day). single_day is a flag, not a preformatted
span string: the engine is logic-less and cannot itself decide between
"Ian 1" and "Ian 1-2", so a template makes that call from the flag
instead -- the same "shape the data, not the template" discipline
in_month and last already follow.
Weeks are built per month with padding only at the two ends, so a
week's in-month days never cross a month boundary -- verified, not
assumed: every week always has at least one real day since no month is
shorter than a single week.
Covered by three new View tests, including a real single-day-week
witness (January 2027's own trailing week is a lone Sunday, the 31st).
Diffstat (limited to 'lang/la.ini')
| -rw-r--r-- | lang/la.ini | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/lang/la.ini b/lang/la.ini index 9cbb8fe..536f717 100644 --- a/lang/la.ini +++ b/lang/la.ini @@ -66,6 +66,25 @@ saturday = Sabbatum 11 = November 12 = December +[month_abbr] +; Three-letter abbreviations for the printed booklet's week header (a +; span like "Ian 1-2" beside a Roman week number, so the header need not +; repeat the month name spelled out in full). Each is simply the first +; three letters of [month]'s own name above -- no separate sourcing, since +; this is general vocabulary rather than a Missal heading either. +1 = Ian +2 = Feb +3 = Mar +4 = Apr +5 = Mai +6 = Iun +7 = Iul +8 = Aug +9 = Sep +10 = Oct +11 = Nov +12 = Dec + [season] ; RG 71-77's own season names. Five of eight are direct Proprium de Tempore ; section headings in docs/research/LT.txt (line numbers below); the other |
