diff options
| author | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 09:01:56 +0200 |
|---|---|---|
| committer | Lukasz Kasprzak <lukas@labunix.xyz> | 2026-08-20 09:01:56 +0200 |
| commit | 286e362bd02e7ef4130cccb36fbeb16b4fbb5a56 (patch) | |
| tree | ee6fb2069475a6638f7e14ce89dc0b99e012ab2e /templates/ef/grid.html | |
| parent | 6994cb2008263678c183228c97dea673babb6f1e (diff) | |
| download | colitur-286e362bd02e7ef4130cccb36fbeb16b4fbb5a56.tar.gz colitur-286e362bd02e7ef4130cccb36fbeb16b4fbb5a56.zip | |
fix(templates): clear the wall calendar's class label of the border, add sigla
Problem 1: grid.tex's \daycell pushed the rank/class line to the exact
bottom edge of its fixed-height parbox with \vfill, the same edge \hline
draws the cell's bottom rule along, so 'I classis'/'IV classis'/'II
classis' printed as if sliced by the rule. Fixed by nesting a second,
shorter parbox (\cellh minus a new \cellpad, 1.5mm) inside the
unchanged \cellh-tall outer one, so the \vfill only ever reaches to
\cellpad above the rule, never touching it. \strut on both trailing
lines belt-and-suspenders the fix for lines with no descenders.
Problem 2: each cell now also carries the day's Epistle and Gospel
references (view fields first/gospel), joined by a centred dot/bullet
rather than repeated Ep./Ev. labels -- the same compact convention
ordo.tex already uses between rank_name and colour_name. A grid cell is
only ~3.5cm wide and Holy Week's own citations run 20-30 characters each,
so class label and sigla get their own \tiny line apiece rather than
being crammed onto one line and shrunk past readability; \cellh leaves
about eleven \tiny lines of room, so two short lines cost little. Both
first and gospel are wrapped in their own conditional section so a day
missing either prints no stray separator (defensive: every day in the
shipped EF lectionary has both, but nothing guarantees that of a future
rite or overlay).
grid.ms gains the same sigla, on their own .br line, using tbl's existing
w() wrap rather than any manual line-splitting -- it was never subject to
problem 1 (tbl auto-sizes row height, no fixed-height clipping risk) and
never carried a class label to begin with, so none was added here.
grid.html gains the sigla as a small, muted block-level span; unlike the
two paper flavours it isn't boxed onto a fixed physical page, so the
browser just grows the cell rather than needing any line-budget
compromise.
Verified with two pdflatex passes and groff -ms -t -Tpdf against all
twelve 2027 months: zero Overfull warnings, 7 columns every row, class
label and sigla both fully clear of every rule. test/golden/grid-2027.*
regenerated through test_render_golden.ml's own render path (View.of_days
+ Template.render_string, the EN-with-LA-fallback lang table), not the
CLI, per this project's own standing trap about the two tables differing.
Diffstat (limited to 'templates/ef/grid.html')
| -rw-r--r-- | templates/ef/grid.html | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/templates/ef/grid.html b/templates/ef/grid.html index b6ed229..e313f9d 100644 --- a/templates/ef/grid.html +++ b/templates/ef/grid.html @@ -5,7 +5,20 @@ ordo.html's own header comment for the full reasoning). The weekday header row comes from the view's own top-level weekday_headings list (name/last objects), not a hard-coded - Dom/Lun/Mar row, so a translated calendar needs no template edit. --> + Dom/Lun/Mar row, so a translated calendar needs no template edit. + Sigla: each cell also carries the day's Epistle and Gospel + references (view fields first/gospel), joined by a middot rather + than repeated Ep./Ev. labels, the same compact choice grid.tex and + grid.ms make. Unlike those two, this flavour is not squeezed into a + fixed-height box on a fixed physical page -- a td here just grows + taller to fit whatever it holds -- so no manual line-splitting or + size shrinking beyond a small, muted secondary line is needed; that + is the sense in which this template can afford to use its own room + rather than copy the paper templates' compromise. Both first and + gospel are wrapped in their own first/gospel section so a day + missing either -- none does in the shipped EF lectionary, but + nothing guarantees a future rite or overlay keeps that invariant -- + prints no stray separator. --> <!doctype html> <html lang="la"><head><meta charset="utf-8"> <title>Calendarium {{year}}</title> @@ -17,6 +30,7 @@ td{border:1px solid #ddd;vertical-align:top;height:5em;width:14.28%;padding:.2em;font-size:.75em} td.pad{background:#fafafa;border-color:#eee} .dom{font-weight:bold;display:block} + .sigla{display:block;margin-top:.2em;color:#666;font-size:.85em} .white{background:#fff} .red{background:#fdd} .green{background:#dfd} .violet{background:#eae} .rose{background:#fde} .black{background:#ddd} @media print{@page{size:landscape}body{margin:0}} @@ -27,7 +41,7 @@ <caption>{{name}}</caption> <tr>{{#weekday_headings}}<th>{{name}}</th>{{/weekday_headings}}</tr> {{#weeks}}<tr> - {{#days}}{{#in_month}}<td class="{{colour}}"><span class="dom">{{dom}}</span>{{name}}</td>{{/in_month}}{{^in_month}}<td class="pad"></td>{{/in_month}}{{/days}} + {{#days}}{{#in_month}}<td class="{{colour}}"><span class="dom">{{dom}}</span>{{name}}<span class="sigla">{{#first}}{{first}}{{/first}}{{#gospel}}{{#first}} · {{/first}}{{gospel}}{{/gospel}}</span></td>{{/in_month}}{{^in_month}}<td class="pad"></td>{{/in_month}}{{/days}} </tr> {{/weeks}} </table> |
