summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rw-r--r--scripts/gen-sanctoral-ef.go11
-rw-r--r--scripts/genlect.go6
2 files changed, 13 insertions, 4 deletions
diff --git a/scripts/gen-sanctoral-ef.go b/scripts/gen-sanctoral-ef.go
index f40fe34..e3ad18e 100644
--- a/scripts/gen-sanctoral-ef.go
+++ b/scripts/gen-sanctoral-ef.go
@@ -133,11 +133,16 @@ func classOf(en string) string {
return ""
}
-// isSaintTitle rejects the temporal commemorations that share the sancti:
-// namespace (octave days, vigils) so only genuine saints/feasts are harvested.
+// isSaintTitle rejects the purely temporal offices that share the sancti:
+// namespace (octave days, ferias, Ember days) so only genuine celebrations are
+// harvested. Vigils of fixed feasts (Christmas, the Nativity of St John the
+// Baptist, Sts Peter & Paul, St Lawrence, the Assumption, All Saints, the
+// Immaculate Conception) ARE kept: they are proper liturgical days on a fixed
+// date. The movable vigils (Ascension, Pentecost) live in the tempora namespace
+// and are computed by the temporal engine, not harvested here.
func isSaintTitle(t string) bool {
l := strings.ToLower(t)
- for _, bad := range []string{"octave", "vigil", "feria", "ember", "rogation", "sunday", "within the"} {
+ for _, bad := range []string{"octave", "feria", "ember", "rogation", "sunday", "within the"} {
if strings.Contains(l, bad) {
return false
}
diff --git a/scripts/genlect.go b/scripts/genlect.go
index 85ff1c2..6d7a43b 100644
--- a/scripts/genlect.go
+++ b/scripts/genlect.go
@@ -100,7 +100,11 @@ func main() {
}
slug := day.Observed.Slug
isSunday := d.Weekday() == time.Sunday
- if !isSunday && !properFerial[day.Season] {
+ // Ember and vigil days have a proper Mass even in the green seasons, so
+ // harvest them regardless of season (green ferias otherwise repeat the
+ // preceding Sunday and are skipped).
+ special := strings.Contains(slug, "ember") || strings.Contains(slug, "vigil")
+ if !isSunday && !properFerial[day.Season] && !special {
continue // green-season feria -> repeats the Sunday
}
if seen[slug] {