diff --git a/src/data/propers/common/lauds-capitulum-commemoration-of-st-paul.yml b/src/data/propers/common/lauds-capitulum-commemoration-of-st-paul.yml new file mode 100644 index 0000000..1d15bc6 --- /dev/null +++ b/src/data/propers/common/lauds-capitulum-commemoration-of-st-paul.yml @@ -0,0 +1,23 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds +# live query, 2035-06-30 (clean year, per commemoration-of-st-paul.yml's +# own comment). Real proper content is narrower than most individually- +# imported saints this session: only the chapter is his own (2 Tim +# 4:7-8, "Bonum certámen certávi" -- St. Paul's own famous "I have +# fought the good fight"); the responsory, hymn, and versicle are all +# byte-identical to Common-of-an-Apostle's own already-authored content +# -- duplicated here rather than left to fall through, since +# resolveOfficeBundle resolves a whole bundle per id, not per part (a +# missing responsory/hymn/versicle under his own id would render blank, +# not fall back to the Common). Same chapter reused for Vespers -- no +# separate vespers-capitulum- file authored, per vespers.ts's +# vespersCapitulumForOverride fallback. +id: lauds-capitulum-commemoration-of-st-paul +text: + la: "Bonum certámen certávi, cursum consummávi, fidem servávi. In réliquo repósita est mihi coróna justítiæ, quam reddet mihi Dóminus in illa die justus judex." + en: "I have fought a good fight, I have finished my course, I have kept the faith. Henceforth there is laid up for me a crown of righteousness, which the Lord, the righteous Judge, shall give me at that day." +citation: + la: "2 Tim 4:7-8" + en: "2 Tim 4:7-8" +status: + la: verified + en: verified diff --git a/src/data/propers/common/lauds-hymn-commemoration-of-st-paul.yml b/src/data/propers/common/lauds-hymn-commemoration-of-st-paul.yml new file mode 100644 index 0000000..3b081c2 --- /dev/null +++ b/src/data/propers/common/lauds-hymn-commemoration-of-st-paul.yml @@ -0,0 +1,117 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds +# `votive=C1` live query, 2026-08 -- see lauds-capitulum-common-of-an- +# apostle.yml's header for why the votive-office view was used. +# "Exsúltet cælum láudibus" -- the classic Common-of-Apostles hymn, same +# text both hours here, a single genuine recension found in the +# reference engine. +id: lauds-hymn-commemoration-of-st-paul +text: + la: >- + Exsúltet cælum láudibus, + + Resúltet terra gáudiis: + + Apostolórum glóriam + + Sacra canunt solémnia. + + + Vos sæcli justi júdices, + + Et vera mundi lúmina, + + Votis precámur córdium, + + Audíte preces súpplicum. + + + Qui cælum verbo cláuditis, + + Serásque ejus sólvitis: + + Nos a peccátis ómnibus + + Sólvite jussu, quǽsumus. + + + Quorum præcépto súbditur, + + Salus, et languor ómnium: + + Sanáte ægros móribus, + + Nos reddéntes virtútibus. + + + Ut, cum Judex advénerit + + Christus in fine sǽculi, + + Nos sempitérni gáudii + + Fáciat esse cómpotes. + + + Deo Patri sit glória, + + Ejúsque soli Fílio, + + Cum Spíritu Paráclito, + + Et nunc, et in perpétuum. Amen. + en: >- + Now let the earth with joy resound, + + And heaven the chant re-echo round; + + Nor heaven nor earth too high can raise + + The great Apostles' glorious praise. + + + O ye who, throned in glory dread, + + Shall judge the living and the dead, + + Lights of the world forevermore! + + To you the suppliant prayer we pour. + + + Ye close the sacred gates on high; + + At your command apart they fly: + + Oh! loose for us the guilty chain + + We strive to break, and strive in vain. + + + Sickness and health your voice obey; + + At your command they go or stay: + + From sin's disease our souls restore; + + In good confirm us more and more. + + + So when the world is at its end, + + And Christ to judgement shall descend, + + May we be called those joys to see + + Prepared from all eternity. + + + Praise to the Father, with the Son, + + And Holy Spirit, Three in One; + + As ever was in ages past, + + And so shall be while ages last. Amen. +status: + la: verified + en: verified diff --git a/src/data/propers/common/lauds-responsory-commemoration-of-st-paul.yml b/src/data/propers/common/lauds-responsory-commemoration-of-st-paul.yml new file mode 100644 index 0000000..7d71c10 --- /dev/null +++ b/src/data/propers/common/lauds-responsory-commemoration-of-st-paul.yml @@ -0,0 +1,22 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds +# `votive=C1` live query, 2026-08 -- see lauds-capitulum-common-of-an- +# apostle.yml's header for why the votive-office view was used. +id: lauds-responsory-commemoration-of-st-paul +text: + la: | + R.br. In omnem terram * Exívit sonus eórum. + ℟. In omnem terram * Exívit sonus eórum. + ℣. Et in fines orbis terræ verba eórum. + ℟. Exívit sonus eórum. + ℣. Glória Patri, et Fílio, * et Spirítui Sancto. + ℟. In omnem terram * Exívit sonus eórum. + en: | + R.br. Their sound hath gone * forth into all the earth. + ℟. Their sound hath gone * forth into all the earth. + ℣. And their words unto the ends of the world. + ℟. Forth into all the earth. + ℣. Glory be to the Father, and to the Son, * and to the Holy Ghost. + ℟. Their sound hath gone * forth into all the earth. +status: + la: verified + en: verified diff --git a/src/data/propers/common/lauds-versicle-commemoration-of-st-paul.yml b/src/data/propers/common/lauds-versicle-commemoration-of-st-paul.yml new file mode 100644 index 0000000..c50b9b3 --- /dev/null +++ b/src/data/propers/common/lauds-versicle-commemoration-of-st-paul.yml @@ -0,0 +1,14 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Lauds +# `votive=C1` live query, 2026-08 -- see lauds-capitulum-common-of-an- +# apostle.yml's header for why the votive-office view was used. +id: lauds-versicle-commemoration-of-st-paul +text: + la: | + ℣. Annuntiavérunt ópera Dei. + ℟. Et facta ejus intellexérunt. + en: | + ℣. They declared the works of God. + ℟. And understood his doings. +status: + la: verified + en: verified diff --git a/src/data/propers/common/vespers-hymn-commemoration-of-st-paul.yml b/src/data/propers/common/vespers-hymn-commemoration-of-st-paul.yml new file mode 100644 index 0000000..6507f3e --- /dev/null +++ b/src/data/propers/common/vespers-hymn-commemoration-of-st-paul.yml @@ -0,0 +1,115 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers +# `votive=C1` live query, 2026-08 -- byte-identical to the Lauds hymn +# ("Exsúltet cælum láudibus") -- see lauds-capitulum-common-of-an- +# apostle.yml's header for the fuller gap/sourcing writeup. +id: vespers-hymn-commemoration-of-st-paul +text: + la: >- + Exsúltet cælum láudibus, + + Resúltet terra gáudiis: + + Apostolórum glóriam + + Sacra canunt solémnia. + + + Vos sæcli justi júdices, + + Et vera mundi lúmina, + + Votis precámur córdium, + + Audíte preces súpplicum. + + + Qui cælum verbo cláuditis, + + Serásque ejus sólvitis: + + Nos a peccátis ómnibus + + Sólvite jussu, quǽsumus. + + + Quorum præcépto súbditur, + + Salus, et languor ómnium: + + Sanáte ægros móribus, + + Nos reddéntes virtútibus. + + + Ut, cum Judex advénerit + + Christus in fine sǽculi, + + Nos sempitérni gáudii + + Fáciat esse cómpotes. + + + Deo Patri sit glória, + + Ejúsque soli Fílio, + + Cum Spíritu Paráclito, + + Et nunc, et in perpétuum. Amen. + en: >- + Now let the earth with joy resound, + + And heaven the chant re-echo round; + + Nor heaven nor earth too high can raise + + The great Apostles' glorious praise. + + + O ye who, throned in glory dread, + + Shall judge the living and the dead, + + Lights of the world forevermore! + + To you the suppliant prayer we pour. + + + Ye close the sacred gates on high; + + At your command apart they fly: + + Oh! loose for us the guilty chain + + We strive to break, and strive in vain. + + + Sickness and health your voice obey; + + At your command they go or stay: + + From sin's disease our souls restore; + + In good confirm us more and more. + + + So when the world is at its end, + + And Christ to judgement shall descend, + + May we be called those joys to see + + Prepared from all eternity. + + + Praise to the Father, with the Son, + + And Holy Spirit, Three in One; + + As ever was in ages past, + + And so shall be while ages last. Amen. +status: + la: verified + en: verified diff --git a/src/data/propers/common/vespers-responsory-commemoration-of-st-paul.yml b/src/data/propers/common/vespers-responsory-commemoration-of-st-paul.yml new file mode 100644 index 0000000..b547702 --- /dev/null +++ b/src/data/propers/common/vespers-responsory-commemoration-of-st-paul.yml @@ -0,0 +1,27 @@ +# Duplicated verbatim from Common-of-an-Apostle's own Vespers responsory +# (2026-08-26): unlike Lauds (independently live-verified all-Common- +# except-chapter on 2035-06-30, see lauds-capitulum-commemoration-of-st- +# paul.yml), this saint's real Vespers is permanently masked in the +# reference engine by the (unmodeled-in-this-app) Octave of the +# Nativity of St. John the Baptist closing the same day, every year +# checked (2026-2030) -- inferred by the same "all-Common-except- +# chapter" pattern established at Lauds, not independently verified. +id: vespers-responsory-commemoration-of-st-paul +text: + la: | + R.br. Constítues eos príncipes * Super omnem terram. + ℟. Constítues eos príncipes * Super omnem terram. + ℣. Mémores erunt nóminis tui, Dómine. + ℟. Super omnem terram. + ℣. Glória Patri, et Fílio, * et Spirítui Sancto. + ℟. Constítues eos príncipes * Super omnem terram. + en: | + R.br. Thou shalt make them princes * over all the earth. + ℟. Thou shalt make them princes * over all the earth. + ℣. They shall remember thy name, O Lord. + ℟. All over the earth. + ℣. Glory be to the Father, and to the Son, * and to the Holy Ghost. + ℟. Thou shalt make them princes * over all the earth. +status: + la: verified + en: verified diff --git a/src/data/propers/common/vespers-versicle-commemoration-of-st-paul.yml b/src/data/propers/common/vespers-versicle-commemoration-of-st-paul.yml new file mode 100644 index 0000000..1640778 --- /dev/null +++ b/src/data/propers/common/vespers-versicle-commemoration-of-st-paul.yml @@ -0,0 +1,14 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), Vespers +# `votive=C1` live query, 2026-08 -- same versicle as Lauds (see lauds- +# versicle-commemoration-of-st-paul.yml). +id: vespers-versicle-commemoration-of-st-paul +text: + la: | + ℣. Annuntiavérunt ópera Dei. + ℟. Et facta ejus intellexérunt. + en: | + ℣. They declared the works of God. + ℟. And understood his doings. +status: + la: verified + en: verified diff --git a/tests/hours/lauds.test.ts b/tests/hours/lauds.test.ts index 20aa597..c89084b 100644 --- a/tests/hours/lauds.test.ts +++ b/tests/hours/lauds.test.ts @@ -223,12 +223,15 @@ describe('resolveOrdo("lauds", ...)', () => { expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Jesu Redémptor ómnium'); }); - it("uses common-of-an-apostle's real office bundle on the Commemoration of St. Paul's own day", () => { - // Live-verified against Divinum Officium (Monastic Tridentinum 1617) - // votive=C1 -- see lauds-capitulum-common-of-an-apostle.yml's header. + it("uses the Commemoration of St. Paul's own proper chapter, with Common-of-an-Apostle's hymn", () => { + // 2026-06-30 is the Commemoration of St. Paul's own real day (own + // chapter 2 Tim 4:7-8 -- "Bonum certámen certávi" -- wins over the + // Common's Eph 2:19-20, per the usual own-proper-always-wins-over- + // Common precedence); the hymn is genuinely the shared Common one -- + // see lauds-capitulum-commemoration-of-st-paul.yml's header. const ordo = resolveOrdo('lauds', '2026-06-30'); const chapter = ordo.parts.find((p) => p.kind === 'chapter'); - expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('Eph 2:19-20'); + expect(chapter?.kind === 'chapter' ? chapter.text.citation?.en : undefined).toBe('2 Tim 4:7-8'); const hymn = ordo.parts.find((p) => p.kind === 'hymn'); expect(hymn?.kind === 'hymn' ? hymn.text.text.la : undefined).toContain('Exsúltet cælum láudibus'); });