diff options
| -rw-r--r-- | data/dune | 10 | ||||
| -rw-r--r-- | data/ef/examples/benedictine.ini | 89 | ||||
| -rw-r--r-- | data/ef/examples/poland.ini | 177 | ||||
| -rw-r--r-- | man/colitur-overlay.5 | 30 | ||||
| -rw-r--r-- | test/cli.t | 23 | ||||
| -rw-r--r-- | test/dune | 2 |
6 files changed, 330 insertions, 1 deletions
@@ -25,4 +25,12 @@ ; celebration in it is invented, with example- slugs. It is what ; `colitur --overlay` points at in the man page, so it must actually be ; installed rather than only living in the source tree. - (ef/examples/diocesan-example.sexp as examples/diocesan-example.sexp))) + (ef/examples/diocesan-example.sexp as examples/diocesan-example.sexp) + ; Two REAL local calendars, in the flat INI form, each carrying its source + ; and its limits in its own header. Shipped as examples, not as data: they + ; are transcriptions from published ordines, and none of the five test + ; layers can vouch for them -- which is exactly what their headers say. + ; The Benedictine one is deliberately two entries long, and the comment + ; block explaining why is the point of shipping it. + (ef/examples/poland.ini as examples/poland.ini) + (ef/examples/benedictine.ini as examples/benedictine.ini))) diff --git a/data/ef/examples/benedictine.ini b/data/ef/examples/benedictine.ini new file mode 100644 index 0000000..2ca9c89 --- /dev/null +++ b/data/ef/examples/benedictine.ini @@ -0,0 +1,89 @@ +; --------------------------------------------------------------------------- +; BENEDICTINE PROPER -- a DELIBERATELY PARTIAL example, and the reason why is +; the most useful thing in this file. +; +; SOURCE. Ordo Divini Officii ... juxta Ritum Romano-Monasticum et +; Consuetudines Abbatiae Sancti Benedicti in Monte Nursiae, pro anno 2026 +; (the Monks of Norcia). +; +; WHY IT IS SHORT: THE MONASTIC RITE DOES NOT USE THE ROMAN RANKS. +; The ordo's own vocabulary, counted across the whole document: +; +; I cl. 86 III cl. 0 +; II cl. 43 IV cl. 0 +; Semidup. 103 Dup. ~96 +; +; It uses the 1960 class system at the TOP -- I and II class -- and the older +; monastic Duplex / Semiduplex grades BELOW, exactly where the Roman calendar +; has III and IV class. colitur's rank vocabulary is Class1..Class4. So a +; Benedictine feast graded "Dup." or "Semidup." CANNOT BE FAITHFULLY +; EXPRESSED here at all. This is not a gap in the data; it is a mismatch of +; vocabularies between two related rites. +; +; Rather than invent a Dup. -> Class3 mapping the source never states, this +; file ships ONLY the entries whose class the ordo gives in Roman terms and +; whose row could be read unambiguously. Everything else is listed at the +; bottom as excluded, by name, so the omission is visible rather than silent. +; +; TWO FURTHER LIMITS, both worth knowing before reusing this: +; 1. It is "et Consuetudines Abbatiae" -- Norcia's own customs, not the +; generic Benedictine calendar. Another house's proper will differ. +; 2. It is a 2026 ordo, one year, not a perpetual calendar. Any transferred +; or movable entry in it reflects that year's outcome, not the rule. The +; two entries below are fixed-date and unaffected. +; +; NOT AUTHORITATIVE. colitur's test layers assert things about the SHIPPED +; universal calendar and cannot vouch for this file (see colitur-overlay(5)). +; +; colitur convert benedictine.ini > benedictine.sexp +; colitur check benedictine.sexp +; --------------------------------------------------------------------------- + +[overlay] +id = benedictine-nursia + +; "21 SAB. Alb. | ! | IN TRANSITU S.P.N. BENEDICTI ... Dup. I cl." +; The death of Our Holy Father Benedict, 21 March. I class in the monastic +; calendar; in the Roman calendar 21 March is St Benedict at III class, so +; this deliberately OVERRIDES the universal entry by naming a distinct slug on +; the same date -- both will be candidates, and the I-class one wins. +[transitus-of-our-holy-father-benedict] +date = 03-21 +rank = class-1 +colour = white +name.la = In Transitu S.P.N. Benedicti Abbatis +name.en = The Passing of Our Holy Father Benedict, Abbot + +; "15 ... S. MAURI ABB. (O.N.) | Dup. II cl." +; (O.N.) = Ordinis Nostri, "of our Order" -- the ordo's own marker for a +; proper feast of the Order. 39 entries carry it; this is the only one whose +; class is given in Roman terms AND whose row reads unambiguously. +[maurus-abbot] +date = 01-15 +rank = class-2 +colour = white +name.la = S. Mauri Abbatis +name.en = St Maurus, Abbot + +; --------------------------------------------------------------------------- +; EXCLUDED, and why. Each of these is a real feast of the Order, present in +; the ordo and marked (O.N.) or equivalent. None is written above, because its +; grade is Duplex or Semiduplex -- which this format cannot express -- or +; because its row could not be read unambiguously from the ordo's two-column +; layout, and a guessed date is worse than an absent one. +; +; Omnium Sanctorum O.N. (13 Nov) Dup. -- All Saints of the Order +; S. Scholasticae V. (10 Feb) row unclear +; Ss. Placidi & Sociorum Mm. (5 Oct) row unclear +; S. Anselmi Ep. C. D. (21 Apr) Dup. +; S. Bernardi Abb. D. (20 Aug) Dup. +; S. Gertrudis Magnae V. (17 Nov) (m.t.v.) +; S. Silvestri Abb. (26 Nov) Dup. +; and ~20 further (O.N.) entries: Bede, Hildegard, Boniface, Frances of +; Rome, John Gualbert, Peter Damian, Leo IV, Robert, Bernard Ptolomei, +; Gregory VII, Augustine of Canterbury, and others. +; +; To use them, you need either a rank vocabulary colitur does not have, or a +; deliberate decision -- yours, documented -- about how Duplex and Semiduplex +; map onto class-3 and class-4. This file does not make that decision for you. +; --------------------------------------------------------------------------- diff --git a/data/ef/examples/poland.ini b/data/ef/examples/poland.ini new file mode 100644 index 0000000..cf7934b --- /dev/null +++ b/data/ef/examples/poland.ini @@ -0,0 +1,177 @@ +; --------------------------------------------------------------------------- +; PROPER CALENDAR OF THE DIOCESES OF POLAND -- an EXAMPLE overlay. +; +; SOURCE. Calendarium Perpetuum pro Dioecesium Poloniae (1964), promulgated +; under Pope John XXIII's motu proprio Rubricarum instructum (25 July 1960) +; and applying to the 1962 Missale Romanum. Transcribed from the Rubrycela +; Mszalna wedlug Nadzwyczajnej Formy Rytu Rzymskiego (grzegorzwielki.pl), a +; published Polish EF ordo that states it follows that same 1964 calendar, +; cross-checked against missalemeum's own supplement page for the calendar's +; 1964 additions (13 and 15 July below). +; +; EDITION WARNING, and it is a real trap. The Proprium Poloniae of 1921 and +; of 1934 is still bound into many missals and is easy to find. The Rubrycela +; states plainly that those carry an outdated arrangement of dioceses and +; outdated ranks. They are NOT this calendar. Anything you add here must come +; from the 1964 calendar or later, not from a pre-war proprium that happens to +; be to hand. +; +; WHAT IS AND IS NOT VERIFIED. Date, Latin name and class were read from the +; ordo for every entry below. Three classes could not be read from it -- the +; column carrying them was not recoverable from the PDF -- and are marked +; INFERRED where they appear, with the reasoning. An inference is stated as an +; inference here, never quietly written as though it were sourced. +; +; NOT AUTHORITATIVE. This is an example, shipped to show what a real local +; calendar looks like. colitur's test layers assert things about the SHIPPED +; universal calendar and cannot vouch for this file (see colitur-overlay(5)). +; Check it against your own diocese's ordo before using it for anything that +; matters: several of these feasts are proper to particular dioceses rather +; than to all of Poland, and a diocesan calendar is not a national one. +; +; colitur convert poland.ini > poland.sexp +; colitur check poland.sexp +; colitur day 2026 --overlay poland.sexp +; --------------------------------------------------------------------------- + +[overlay] +id = poland-1964 + +; --- Principal patrons of Poland ------------------------------------------ +; Class INFERRED as class-1: RG 91 entries 12-13 rank the principal patron of +; a place at I class, and the ordo marks both "PATRONI PRINCIPALIS POLONIAE". +; The ordo's own class column was not recoverable for these two rows. +[adalbert-of-prague] +date = 04-23 +rank = class-1 +colour = red +name.la = S. Adalberti Episcopi et Martyris, Patroni Principalis Poloniae +name.en = St Adalbert, Bishop and Martyr, Principal Patron of Poland +name.pl = sw. Wojciecha, Biskupa i Meczennika, Glownego Patrona Polski + +[stanislaus-bishop-martyr] +date = 05-08 +rank = class-1 +colour = red +name.la = S. Stanislai Episcopi et Martyris, Patroni Principalis Poloniae +name.en = St Stanislaus, Bishop and Martyr, Principal Patron of Poland +name.pl = sw. Stanislawa, Biskupa i Meczennika, Glownego Patrona Polski + +; --- Marian feasts of Poland ---------------------------------------------- +; Class INFERRED as class-1 for the same reason: Our Lady Queen of Poland is +; the national patronal feast. The ordo's class column was not recoverable. +[bvm-queen-of-poland] +date = 05-03 +rank = class-1 +colour = white +name.la = B. Mariae Virginis Reginae Poloniae +name.en = Our Lady, Queen of Poland +name.pl = Najswietszej Maryi Panny Krolowej Polski + +; Read from the ordo as a particular ("part.") celebration -- proper to +; certain places rather than universal in Poland. Class not recoverable; +; class-2 is INFERRED and is the conservative reading. +[bvm-czestochowa] +date = 08-26 +rank = class-2 +colour = white +name.la = B. Mariae Virginis Claromontanae seu Czenstochoviensis +name.en = Our Lady of Czestochowa +name.pl = Najswietszej Maryi Panny Czestochowskiej + +; --- Secondary patrons, class read from the ordo --------------------------- +[andrew-bobola] +date = 05-16 +rank = class-2 +colour = red +name.la = S. Andreae Bobola Presbyteri et Martyris, Patroni Poloniae +name.en = St Andrew Bobola, Priest and Martyr, Patron of Poland +name.pl = sw. Andrzeja Boboli, Kaplana i Meczennika, Patrona Polski + +[stanislaus-kostka] +date = 11-13 +rank = class-2 +colour = white +name.la = S. Stanislai Kostka Confessoris, Patroni Secundarii Poloniae +name.en = St Stanislaus Kostka, Confessor, Secondary Patron of Poland +name.pl = sw. Stanislawa Kostki, Wyznawcy, Drugorzednego Patrona Polski + +; --- Polish saints and beati, all class-3, all read from the ordo ---------- +[sadoc-and-companions] +date = 06-02 +rank = class-3 +colour = red +name.la = Bb. Sadoc et Sociorum Martyrum +name.en = Bl. Sadoc and Companions, Martyrs + +; The two formularies the 1964 calendar ADDED (missalemeum's supplement page +; names exactly these two as new in 1964). +[andrew-svorad-and-benedict] +date = 07-13 +rank = class-3 +colour = white +name.la = Ss. Andreae Svorad et Benedicti Confessorum +name.en = Sts Andrew Svorad and Benedict, Confessors + +[bruno-boniface-of-querfurt] +date = 07-15 +rank = class-3 +colour = red +name.la = S. Brunonis Bonifatii de Querfurt Episcopi et Martyris +name.en = St Bruno Boniface of Querfurt, Bishop and Martyr + +[simon-of-lipnica] +date = 07-18 +rank = class-3 +colour = white +name.la = B. Simonis de Lipnica Confessoris +name.en = Bl. Simon of Lipnica, Confessor + +[kinga] +date = 07-24 +rank = class-3 +colour = white +name.la = S. Kingae Virginis +name.en = St Kinga, Virgin + +[bronislava] +date = 09-01 +rank = class-3 +colour = white +name.la = B. Bronislavae Virginis +name.en = Bl. Bronislava, Virgin + +[wladislaus-of-gielniow] +date = 09-25 +rank = class-3 +colour = white +name.la = B. Wladislai de Gielniow Confessoris +name.en = Bl. Wladislaus of Gielniow, Confessor + +[john-of-dukla] +date = 10-01 +rank = class-3 +colour = white +name.la = S. Ioannis de Dukla Confessoris +name.en = St John of Dukla, Confessor + +[vincent-kadlubek] +date = 10-09 +rank = class-3 +colour = white +name.la = B. Vincentii Kadlubek Episcopi et Confessoris +name.en = Bl. Vincent Kadlubek, Bishop and Confessor + +[jacob-strzemie] +date = 10-21 +rank = class-3 +colour = white +name.la = B. Iacobi Strzemie Episcopi et Confessoris +name.en = Bl. Jacob Strzemie, Bishop and Confessor + +[salomea] +date = 11-17 +rank = class-3 +colour = white +name.la = B. Salomeae Virginis +name.en = Bl. Salomea, Virgin diff --git a/man/colitur-overlay.5 b/man/colitur-overlay.5 index f1360e2..7650dfc 100644 --- a/man/colitur-overlay.5 +++ b/man/colitur-overlay.5 @@ -228,6 +228,36 @@ Recolour a universal entry without otherwise touching it: A worked file exercising all four directives and all three date shapes is installed at .IR <prefix>/share/colitur/examples/diocesan\-example.sexp . +Every celebration in it is invented, with +.B example\- +slugs, so that nothing in it can be mistaken for calendar data. +.PP +Two REAL local calendars ship beside it, in the flat INI form: +.TP +.I examples/poland.ini +The proper calendar of the dioceses of Poland, from the +.I Calendarium Perpetuum pro Dioecesium Poloniae +(1964). Seventeen entries. Its header records which classes were read from +the source and which are colitur's inference, and warns about the 1921 and +1934 +.I Proprium Poloniae +still bound into many missals \(em an outdated arrangement of dioceses and +ranks that is easy to mistake for this calendar. +.TP +.I examples/benedictine.ini +Two entries, and deliberately so. The monastic rite grades feasts +.B Duplex +and +.B Semiduplex +below II class, where the Roman calendar has III and IV class, so most +Benedictine propers cannot be expressed in this format at all. Rather than +invent a mapping the source does not state, that file ships only what its +ordo gives in Roman terms and lists the rest by name as excluded. It is worth +reading for that reason more than for its two feasts. +.PP +.B Both are examples, not authorities. +They are transcriptions from published ordines, and none of this program's +test layers can vouch for either \(em check them against your own ordo. .SH HOW AN OVERLAY IS APPLIED Worth understanding, because the commonest surprise \(em "my feast does not appear" \(em is almost never a loading failure. @@ -392,3 +392,26 @@ What the INI form cannot express is refused by name, not dropped silently: $ colitur convert r.ini colitur: r.ini: section [y]: replace is not expressible in the INI form -- it needs a whole entry, which is what the S-expression form is for (see colitur-overlay(5)). Suppress plus a fresh section is usually what you want instead. [2] + +The two shipped real-calendar examples must load and convert. They are +transcriptions, so nothing here asserts they are liturgically right -- only +that what we ship parses, converts and applies, which is the part we control: + + $ colitur convert ../data/ef/examples/poland.ini > pl.sexp + $ colitur check pl.sexp | head -2 + pl.sexp: ok -- overlay poland-1964, 17 directive(s): 17 add, 0 suppress, 0 replace, 0 edit + every directive found its target + + $ colitur convert ../data/ef/examples/benedictine.ini > ben.sexp + $ colitur check ben.sexp + ben.sexp: ok -- overlay benedictine-nursia, 2 directive(s): 2 add, 0 suppress, 0 replace, 0 edit + every directive found its target + add transitus-of-our-holy-father-benedict + add maurus-abbot + +An overlay feast competes under the ordinary rules: the Benedictine Transitus +is I class and takes 21 March, with the Lenten feria commemorated rather than +displaced silently. + + $ colitur day 2026 --overlay ben.sexp | grep '^2026-03-21' + 2026-03-21 saturday lent 4 transitus-of-our-holy-father-benedict class-1 white +ef-lent-4-saturday @@ -20,6 +20,8 @@ (deps %{bin:colitur} fixtures/overlay-example-diocesan.sexp + ../data/ef/examples/poland.ini + ../data/ef/examples/benedictine.ini ../data/ef/sanctoral.sexp ../data/ef/adjustments.sexp ../data/ef/lectionary.sexp |
