diff options
Diffstat (limited to 'templates')
| -rw-r--r-- | templates/ef/ordo.adoc | 5 | ||||
| -rw-r--r-- | templates/ef/ordo.html | 7 | ||||
| -rw-r--r-- | templates/ef/ordo.md | 7 | ||||
| -rw-r--r-- | templates/ef/ordo.ms | 7 | ||||
| -rw-r--r-- | templates/ef/ordo.tex | 28 | ||||
| -rw-r--r-- | templates/ef/ordo.txt | 2 | ||||
| -rw-r--r-- | templates/ef/ordo.typ | 27 |
7 files changed, 57 insertions, 26 deletions
diff --git a/templates/ef/ordo.adoc b/templates/ef/ordo.adoc index 0b5785d..f250426 100644 --- a/templates/ef/ordo.adoc +++ b/templates/ef/ordo.adoc @@ -19,6 +19,9 @@ // hand-built TOC and ordo.typ's outline already do. Walks // months>weeks>days (the week's own padded, in-month-guarded day list) in // place of the old months>days flat loop over the month's own flat one. +// Each week heading is its own Roman numeral plus the span of in-month +// dates it covers (e.g. Hebdomada I (Ian 1-2)), not the month name again +// -- the month's own == heading above already establishes it once. = {{term.ordo}} {{year}} · {{rite_name}} :toc: @@ -26,7 +29,7 @@ == {{name}} {{#weeks}} -=== {{term.week}} {{num}} +=== {{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}–{{last_dom}}{{/single_day}}) {{#days}}{{#in_month}} *{{dom}}* {{name}} + diff --git a/templates/ef/ordo.html b/templates/ef/ordo.html index 4936974..6fdba6f 100644 --- a/templates/ef/ordo.html +++ b/templates/ef/ordo.html @@ -15,7 +15,10 @@ (unchanged) and a new h3 per week, using the week's own padded, in-month-flagged day list rather than the month's flat, unpadded one -- guarded accordingly below, the same guard every paginated - flavour's grid already needs for that field. --> + flavour's grid already needs for that field. Each h3 is its own + Roman numeral plus the span of in-month dates it covers (e.g. + Hebdomada I (Ian 1-2)), not the month name again -- the h2 above + already establishes it once. --> <!doctype html> <html lang="la"><head><meta charset="utf-8"> <title>{{term.ordo}} {{year}}</title> @@ -32,7 +35,7 @@ </style></head><body> <h1>{{term.ordo}} {{year}} · {{rite_name}}</h1> {{#months}}<h2>{{name}}</h2> -{{#weeks}}<h3>{{term.week}} {{num}}</h3> +{{#weeks}}<h3>{{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}–{{last_dom}}{{/single_day}})</h3> {{#days}}{{#in_month}}<div class="day {{colour}}"> <span class="dom">{{dom}}</span>{{name}} <div class="meta">{{rank}} · {{colour}}{{#first}} · {{term.epistle}} {{first}}{{/first}}{{#gospel}} · {{term.gospel}} {{gospel}}{{/gospel}}</div> diff --git a/templates/ef/ordo.md b/templates/ef/ordo.md index fd8094f..59a92db 100644 --- a/templates/ef/ordo.md +++ b/templates/ef/ordo.md @@ -15,14 +15,17 @@ the same header treatment as the paginated flavours, for structural consistency -- a ### per week under each month's ##, walking months>weeks>days (the week's own padded, in-month-guarded day - list, not the flat unpadded one the old months>days loop used). --> + list, not the flat unpadded one the old months>days loop used). Each + week heading is its own Roman numeral plus the span of in-month dates + it covers (e.g. Hebdomada I (Ian 1-2)), not the month name again -- + the month's own ## heading above already establishes it once. --> # {{term.ordo}} {{year}} · {{rite_name}} {{#months}} ## {{name}} {{#weeks}} -### {{term.week}} {{num}} +### {{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}–{{last_dom}}{{/single_day}}) {{#days}}{{#in_month}} **{{dom}}** {{name}} diff --git a/templates/ef/ordo.ms b/templates/ef/ordo.ms index a5d7100..1035a0d 100644 --- a/templates/ef/ordo.ms +++ b/templates/ef/ordo.ms @@ -15,7 +15,10 @@ .\" treatment as the paginated flavours, for structural consistency -- a .\" bold week run-in under each month's own .SH, walking months>weeks>days .\" (the week's own padded, in-month-guarded day list) in place of the -.\" old months>days flat loop over the month's own flat one. +.\" old months>days flat loop over the month's own flat one. The run-in +.\" is its own Roman numeral plus the span of in-month dates it covers +.\" (e.g. Hebdomada I (Ian 1-2)), not the month name again -- the month's +.\" own .SH heading above already establishes it once. .TL {{term.ordo}} {{year}} \(bu {{rite_name}} {{#months}} @@ -23,7 +26,7 @@ {{name}} {{#weeks}} .LP -\fB{{term.week}} {{num}}\fR +\fB{{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}\(en{{last_dom}}{{/single_day}})\fR {{#days}}{{#in_month}} .IP "{{dom}}" 4 {{name}} diff --git a/templates/ef/ordo.tex b/templates/ef/ordo.tex index a7fcbb3..4ffc9e9 100644 --- a/templates/ef/ordo.tex +++ b/templates/ef/ordo.tex @@ -7,11 +7,13 @@ % the top third of every page and cost 65 pages for a year that needed far % fewer; that requirement is reversed here on purpose, not merely relaxed). % Structure stays scannable through two header weights instead: every -% week still opens with its existing small header line ({{month_name}} . -% {{term.week}} N), and the month's own FIRST week additionally gets a -% large, ruled banner above that line ({{#first}}...{{/first}}, a real -% view field -- lib/render/view.ml -- not template-side arithmetic, since -% this engine has no way to test "is this the first item" any other way). +% week still opens with its own header line -- a Roman week number plus +% the span of in-month dates it covers, e.g. Hebdomada I (Ian 1-2), with +% no month name repeated, since the month heading above already +% establishes it -- and the month's own FIRST week additionally gets a +% large, ruled banner above that line (view field [first], lib/render/ +% view.ml -- not template-side arithmetic, since this engine has no way +% to test "is this the first item" any other way). % \needspace (a genuine, tiny dependency, not one of the deps this project % freezes at the OCaml level -- LaTeX packages are a template author's own % concern) keeps a header from being stranded alone at a page's bottom @@ -68,9 +70,15 @@ % The engine has no parent-path syntax: nested inside a month's own week % loop, a bare week-number reference finds the WEEK's own number, and there % is no way to reach the enclosing month's from there. That is why each -% week object carries its own month number and month name fields -% (lib/render/view.ml, Task 5) -- used throughout below instead of a -% parent-path reference, which this engine cannot express. +% week object carries its own month number, month name and abbreviated +% month name fields (lib/render/view.ml) -- used throughout below instead +% of a parent-path reference, which this engine cannot express. The same +% view resolves the week's own Roman numeral too (num_roman, arabic num +% kept alongside it for a tradition that wants it), the day-of-month of +% its first and last in-month day (first_dom/last_dom), and single_day +% (true for a one-day week) -- a punctuation choice (Ian 1 vs Ian 1-2) +% this logic-less engine cannot make for itself, so the template below +% picks the dash only inside an inverted single_day section. % % This template's own %-comments are plain text to the engine: it has no % awareness of LaTeX's comment syntax, and a stray double-brace pair inside @@ -127,7 +135,7 @@ \begin{small} {{#months}} \textbf{ {{name}} }\par -{{#weeks}}\hspace*{4mm}{{term.week}} {{num}}\dotfill\pageref{w{{month_num}}-{{num}}}\par +{{#weeks}}\hspace*{4mm}{{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}--{{last_dom}}{{/single_day}})\dotfill\pageref{w{{month_num}}-{{num}}}\par {{/weeks}} {{/months}} \end{small} @@ -142,7 +150,7 @@ {{/first}} \needspace{16mm} \label{w{{month_num}}-{{num}}} -{\bfseries\large {{month_name}} }\hfill{\small {{term.week}} {{num}}}\par\vspace{0.5mm} +{\bfseries\large {{term.week}} {{num_roman}} }{\small ({{month_abbr}} {{first_dom}}{{^single_day}}--{{last_dom}}{{/single_day}})}\par\vspace{0.5mm} {{#days}} {{#in_month}} \begin{tcolorbox}[colback=white,colframe=black!35,boxrule=0.3pt,left=1.4mm,right=1.4mm,top=0.2mm,bottom=0.2mm,before skip=0.2mm,after skip=0mm] diff --git a/templates/ef/ordo.txt b/templates/ef/ordo.txt index 0ac0366..1edf0a9 100644 --- a/templates/ef/ordo.txt +++ b/templates/ef/ordo.txt @@ -1,7 +1,7 @@ {{#months}} {{name}} {{year}} {{#weeks}} -== {{term.week}} {{num}} == +== {{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}–{{last_dom}}{{/single_day}}) == {{#days}}{{#in_month}} {{dom}} {{name}} {{rank}} · {{colour}} diff --git a/templates/ef/ordo.typ b/templates/ef/ordo.typ index 85b609e..829bf1e 100644 --- a/templates/ef/ordo.typ +++ b/templates/ef/ordo.typ @@ -27,9 +27,16 @@ // The engine has no parent-path syntax: nested inside a month's own week // loop, a bare week-number reference finds the WEEK's own number, and there // is no way to reach the enclosing month's from there. That is why each -// week object carries its own month number and month name fields -// (lib/render/view.ml), used below via month_name/month_num instead of a -// parent-path reference the engine cannot express. +// week object carries its own month number, month name and abbreviated +// month name fields (lib/render/view.ml), used below via month_name/ +// month_num/month_abbr instead of a parent-path reference the engine +// cannot express. The same view resolves the week's own Roman numeral too +// (num_roman, arabic num kept alongside it for a tradition that wants it), +// the day-of-month of its first and last in-month day (first_dom/ +// last_dom), and single_day (true for a one-day week) -- the punctuation +// choice between Ian 1 and Ian 1-2 this logic-less engine cannot make for +// itself, so the heading below picks the dash only inside an inverted +// single_day section. // // The engine also rejects an empty tag path outright (a bare-dot section or // variable is a parse error, not an invented "current context" behaviour), @@ -46,10 +53,14 @@ // per month with its weeks dotted-and-paginated underneath, because it // walks the months-then-weeks nesting directly in its own hand-built TOC // loop. Typst's outline instead builds its table of contents automatically -// from real document headings, so this stays a flat list of "Month . Week -// N" headings rather than being restructured into two heading levels -- -// changing outline depth/structure is a bigger, riskier change than this -// defect calls for. Defect 2 DID add a "is this the month's first week" +// from real document headings, so this stays a flat list of week headings +// rather than being restructured into two heading levels -- changing +// outline depth/structure is a bigger, riskier change than this defect +// calls for. Each heading is the week's own Roman numeral plus the span +// of in-month dates it covers (e.g. Hebdomada I (Ian 1-2)), with no month +// name repeated -- the month heading below is a separate, non-heading +// BANNER (not part of the outline) that already establishes it once per +// month. Defect 2 DID add a "is this the month's first week" // flag to the view model (lib/render/view.ml's own [first], the same // "cheap flag beats invented template logic" call [last] already made // elsewhere) -- used below for a separate, non-heading month BANNER @@ -125,7 +136,7 @@ #text(size: 15pt, weight: "bold")[{{month_name}} {{year}}] ] {{/first}} -= {{month_name}} #sym.dot.c {{term.week}} {{num}} += {{term.week}} {{num_roman}} ({{month_abbr}} {{first_dom}}{{^single_day}}--{{last_dom}}{{/single_day}}) {{#days}} {{#in_month}} |
