Skip to content

Commit

Permalink
Merge pull request DivinumOfficium#4073 from FAJ-Munich/monastic-clean
Browse files Browse the repository at this point in the history
M1617/1930 Tempora Nativitatis et Epiphaniae and close DivinumOfficium#4072
  • Loading branch information
FAJ-Munich authored Oct 2, 2024
2 parents 97abbf6 + d8336a9 commit 5f19b60
Show file tree
Hide file tree
Showing 511 changed files with 2,308 additions and 3,509 deletions.
1 change: 1 addition & 0 deletions web/cgi-bin/DivinumOfficium/SetupString.pl
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@
missa => sub { our $missanumber },
communi => sub { {summpont => ($version =~ /1960/ || $version =~ /1955/ || $version =~ /Divino/)} },
'die' => \&get_dayname_for_condition,
feria => sub { our $dayofweek + 1 },
);
my %predicates = (
tridentina => sub { shift =~ /Trident/ },
Expand Down
4 changes: 2 additions & 2 deletions web/cgi-bin/horas/horascommon.pl
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,7 @@ sub occurrence {
$officename[1] .= " $communetype $communesname{$commune} [$commune]";
}

if ($winner =~ /01-12t/ && ($hora =~ /laudes/i || $vespera == 3)) {
if ($winner =~ /01-12t/ && $hora =~ /laudes/i) {
unshift(@commemoentries, 'Sancti/01-06.txt');
$commemoratio = 'Sancti/01-06.txt';
$comrank = 5.6;
Expand Down Expand Up @@ -1949,7 +1949,7 @@ sub gettempora {

if ( $caller eq 'Doxology'
|| $caller eq 'Prima responsory'
|| ($version =~ /196/ && $caller ne 'Psalmi minor' && $caller ne 'Nunc dimittis'))
|| ($version =~ /monastic|196/i && $caller ne 'Psalmi minor' && $caller ne 'Nunc dimittis'))
{
if ($dayname[0] =~ /^Nat/) {
$tname = ($day >= 6 && $day < 13) ? 'Epi' : 'Nat';
Expand Down
107 changes: 67 additions & 40 deletions web/cgi-bin/horas/specmatins.pl
Original file line number Diff line number Diff line change
Expand Up @@ -605,45 +605,61 @@ sub lectio : ScriptFunc {
}
}

# Save the Nocturn of the Lectio requested:
my $nocturn = int(($num - 1) / ($rule =~ /12 lectiones/i ? 4 : 3)) + 1;

#Nat1-0 special rule
# TODO: Get rid of this special case by separating the temporal and sanctoral parts of Christmas, thus allowing occurring Scripture to be defined.
if ($num <= 3 && $rule =~ /Lectio1 OctNat/i) {
my $c;
if ($nocturn == 1 && $rule =~ /Lectio1 (Oct|Temp)Nat/i) {
my %c;

if ($1 =~ /Temp/i) {

if ($day < 29) {
$c = officestring($lang, "Sancti/12-25.txt")
; # GitHub3539: in 1960 rubrics, Scripture on Sunday (26-28) comes from Nativity
# Monastic: Dominica Secunda Nativitatis
my %scrip = %{setupstring($lang, subdirname('Sancti', $version) . "$month-$day.txt")};

$c{"Lectio$_"} = lectiones_ex3_fiunt4(\%scrip, $_) foreach (1 .. 4);
$c{"Responsory$num"} = $w{"Responsory$num"};
} elsif ($day < 29) {

# GitHub3539: in 1960 rubrics, Scripture on Sunday (26-28) comes from Nativity
%c = %{officestring($lang, subdirname('Sancti', $version) . "12-25.txt")};
} else {
my $tfile = subdirname('Tempora', $version) . "Nat$day" . ($version =~ /trident/i ? "o.txt" : ".txt");
$c = officestring($lang, $tfile);

# the Nat..o.txt files do not exist for Monastic
my $tfile = subdirname('Tempora', $version) . "Nat$day" . ($version =~ /^Trident/i ? "o.txt" : ".txt");
%c = %{officestring($lang, $tfile)};
}
$c->{'Lectio2'} .= $c->{'Lectio3'} if (contract_scripture(2));
$c{'Lectio2'} .= $c{'Lectio3'} if (contract_scripture(2));

$w{"Lectio$num"} = $c->{"Lectio$num"};
$w{"Responsory$num"} = $c->{"Responsory$num"};
$w{"Lectio$num"} = $c{"Lectio$num"};
$w{"Responsory$num"} = $c{"Responsory$num"};
setbuild2("Lectiones I Nocturno ex Tempora Nativitatis") if $num == 1;
}

# special rule for not having "Ss. Nominis" and missing readings on 01-13 for Monastic
# add first nocturn lessons from the actual tempora // as TempraM/Epi1-….txt is still incomplete it leads to issues on 01-13
# TODO: get TemporaM folder updated and completed
if ((($winner eq 'TemporaM/Nat2-0.txt') || ($winner eq 'SanctiM/01-13.txt')) && $num <= 4) {
$c =
officestring($lang, $winner =~ /Tempora/ ? sprintf("SanctiM/01-%02d.txt", $day) : "TemporaM/Epi1-$dayofweek.txt");
$w{"Lectio$num"} = $c->{"LectioM$num"} || $c->{"Lectio$num"};
}

# Save the Nocturn of the Lectio requested:
my $nocturn = int(($num - 1) / ($rule =~ /12 lectiones/i ? 4 : 3)) + 1;
# if ($nocturn == 1 && (($winner eq 'TemporaM/Nat2-0.txt') || ($winner eq 'SanctiM/01-13.txt'))) {
# $c =
# officestring($lang, $winner =~ /Tempora/ ? sprintf("SanctiM/01-%02d.txt", $day) : "TemporaM/Epi1-$dayofweek.txt");
# $w{"Lectio$num"} = $c->{"LectioM$num"} || $c->{"Lectio$num"};
# }

#Lectio1 tempora: special rule for Octave of Epiphany
if ($nocturn == 1 && $rule =~ /Lectio1 tempora/i && exists($scriptura{"Lectio$num"})) {
my %c = (columnsel($lang)) ? %scriptura : %scriptura2;
$w{"Lectio$num"} = $c{"Lectio$num"};
if ($nocturn == 1 && $rule =~ /Lectio1 tempora/i && exists($scriptura{"Lectio1"})) {
my %scrip = (columnsel($lang)) ? %scriptura : %scriptura2;

if ($version =~ /Trident/i && exists($w{"ResponsoryT$num"})) {
$w{"Responsory$num"} = $c{"Responsory$num"};
if ($version =~ /monastic/i && $rule =~ /12 lectiones/i) {
$w{"Lectio$num"} = lectiones_ex3_fiunt4(\%scrip, $num);
} else {
$w{"Responsory$num"} = $c{"Responsory$num"};
$w{"Lectio$num"} = $scrip{"Lectio$num"};

if ($version =~ /Trident/i && exists($w{"ResponsoryT$num"})) {
$w{"Responsory$num"} = $scrip{"Responsory$num"};
} else {
$w{"Responsory$num"} = $scrip{"Responsory$num"};
}
}
setbuild2("subst: Lectio$num tempora");
}
Expand Down Expand Up @@ -699,7 +715,10 @@ sub lectio : ScriptFunc {
$w = '';
} # Q.T. Septembris...

if ($rule =~ /12 lectiones/i && (($num == 4 && !exists($w{Lectio1})) || ($num == 9 && !exists($w{Lectio10})))) {
if ( $rule =~ /12 lectiones/i
&& $rule !~ /Lectio1 (Oct|Temp)(Nat|ora)/i
&& (($num == 4 && !exists($w{Lectio1})) || ($num == 9 && !exists($w{Lectio10}))))
{
$w = '';
} # accidental Lectio4 or Lectio9 from Roman version

Expand Down Expand Up @@ -779,21 +798,8 @@ sub lectio : ScriptFunc {
%w = (columnsel($lang)) ? %scriptura : %scriptura2;
$w = $w{"Lectio$num"};

unless ($version !~ /monastic/i || $version =~ /1963/ || $rule !~ /12 lect/i) {

# split 3 lessons into 4
my @scrips = ();

for my $l0 (1 .. 3) {
if ($w{"Lectio$l0"} !~ //) {
my $cc = $w{"Lectio$l0"};
push(@scrips, $cc);
} else {
my @splits = split("\n", $w{"Lectio$l0"});
push(@scrips, @splits);
}
}
$w = $scrips[$num - 1];
if ($version =~ /monastic/i && $rule =~ /12 lectiones/i && ($version !~ /1963/ || $rule =~ /Lectio1 tempora/i)) {
$w = lectiones_ex3_fiunt4(\%w, $num);
}

if ($version =~ /Trident/ && $winner =~ /Sancti/ && $rank < 2) {
Expand Down Expand Up @@ -1117,6 +1123,27 @@ sub lectio : ScriptFunc {
$w;
}

sub lectiones_ex3_fiunt4 {
my $scrip = shift;
my %scrip = %$scrip;
my $num = shift;

# split 3 lessons into 4
my @scrips = ();

for my $l0 (1 .. 3) {
if ($scrip{"Lectio$l0"} !~ //) {
my $cc = $scrip{"Lectio$l0"};
push(@scrips, $cc);
} else {
my @splits = split("\n", $scrip{"Lectio$l0"});
push(@scrips, @splits);
}
}
setbuild2("Lectiones ex 3 fiunt 4") if $num == 1;
return $scrips[$num - 1];
}

sub parenthesised_text {
my $text = shift;
return setfont(our $smallfont, $text)
Expand Down
2 changes: 1 addition & 1 deletion web/www/Tabulae/Kalendaria/M1617.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
01-09=01-09=Quarta die infra Octavam Epiphaniae=2=
01-10=01-10=Quinta die infra Octavam Epiphaniae=2=
01-11=01-11~01-11cc=Sexta die infra Octavam Epiphaniae=2=S. Hygini Papæ et Martyris=1=
01-12=01-12t=Dominica infra Octavam Epiphaniae=2=
01-12=01-12t=De Dominica infra Octavam Epiphaniae=2=
01-13=01-13=Die Octava Epiphaniae=3=
01-14=01-14~01-14cc=S. Hilarii Episcopi Confessoris et Ecclesiae Doctoris=2=S. Felicis Presbyteri et Mart.=1=
01-15=01-15=S. Mauri Abbatis=3=
Expand Down
2 changes: 1 addition & 1 deletion web/www/Tabulae/Kalendaria/M1930.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
01-09=01-09=Quarta die infra Octavam Epiphaniae=2=
01-10=01-10~01-10cc=Quinta die infra Octavam Epiphaniae=2=S. Pauli primi Eremitae et Confessoris=1=
01-11=01-11=Sexta die infra Octavam Epiphaniae=2
01-12=01-12=Septima die infra Octavam Epiphaniae=2=
01-12=01-12t=De Dominica infra Octavam Epiphaniae=2=
01-13=01-13=Die Octava Epiphaniae=4=
01-14=01-14~01-14cc=S. Hilarii Episcopi Confessoris et Ecclesiae Doctoris=3=S. Felicis Presbyteri et Mart.=1=
01-15=01-15=S. Mauri Abbatis=5=
Expand Down
3 changes: 1 addition & 2 deletions web/www/Tabulae/Kalendaria/M1963.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
*January*
01-00=01-00=Sanctissimi Nominis Iesu=5=
01-01=01-01=Die Octavae Nativitatis Domini=6=
01-02=01-02=Die Secunda Januarii=1=
01-03=01-03=Die Tertia Januarii=1=
Expand Down Expand Up @@ -199,5 +198,5 @@
12-26=12-26=Die secunda infra octavam Nativitati=5=Commemoratio S. Stephani Protomartyris
12-27=12-27=Die tertia infra octavam Nativitati=5=Commemoratio S. Joannis Apostoli
12-28=12-28=Die quarta infra octavam Nativitati=5=Commemoratio Ss. Innocentium
12-29=12-29=Die quinta infra octavam Nativitati=5=Commemoratio S. Thomae Episcopi et Martyris
12-29=XXXX=Die quinta infra octavam Nativitati=5= NO Commemoratio S. Thomae Episcopi et Martyris
12-31=12-31r=Die septima infra octavam Nativitati=5=Commemoratio S. Silvestri Papae et Conf
4 changes: 1 addition & 3 deletions web/www/Tabulae/Tempora/M1617.txt
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,4 @@ TemporaM/Pent03-2=TemporaM/Pent03-2Feriao;;
TemporaM/Pent03-3=TemporaM/Pent03-3Feria;;
TemporaM/Pent03-4=TemporaM/Pent03-4Feria;;
TemporaM/Pent03-5=TemporaM/Pent03-5Feriao;;
TemporaM/Nat29=TemporaM/Nat29o;;
TemporaM/Nat30=TemporaM/Nat30o;;
TemporaM/Nat31=TemporaM/Nat31o;;

6 changes: 4 additions & 2 deletions web/www/Tabulae/Transfer/a.txt
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
#=sunday letter: A, general rule
01-02=Tempora/Nat2-0;;DA Newcal 1960 M1930
01-09=01-08;;1570 1888 1906 M1617
01-09=01-08;;1570 1888 1906 M1617 M1930
01-10=01-09;;1570 1888 1906 M1617
01-10=01-09~01-10cc;;M1930
01-11=01-10~01-11cc;;1570 1888 1906 M1617
01-12=01-11;;1570 1888 1906 M1617
01-11=01-10;;M1930
01-12=01-11;;1570 1888 1906 M1617 M1930
01-15=01-00~01-15~01-15cc;;1888 1906
01-15=01-15cc;;1570
01-19=01-15~01-19;;1570
Expand Down
4 changes: 3 additions & 1 deletion web/www/Tabulae/Transfer/b.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,10 @@
01-02=Tempora/Nat2-0;;DA Newcal 1960 M1930
01-02=Tempora/Nat2-0r;;M1963
01-10=01-09;;1570 1888 1906 M1617
01-10=01-09~01-10cc;;M1930
01-11=01-10~01-11cc;;1570 1888 1906 M1617
01-12=01-11;;1570 1888 1906 M1617
01-11=01-10;;M1930
01-12=01-11;;1570 1888 1906 M1617 M1930
01-16=01-00~01-16;;1888 1906
07-03=07-DP;;1888 1906
07-16=07-16sab;;1960 Newcal
Expand Down
4 changes: 3 additions & 1 deletion web/www/Tabulae/Transfer/c.txt
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
#= sunday letter: c, general rule
01-03=Tempora/Nat2-0;;1960 DA Newcal M1930
01-03=Tempora/Nat2-0r;;M1963
01-10=01-10cc;;M1930
01-11=01-10~01-11cc;;1570 1888 1906 M1617
01-12=01-11;;1570 1888 1906 M1617
01-11=01-10;;M1930
01-12=01-11;;1570 1888 1906 M1617 M1930
01-17=01-00~01-17;;1888 1906
03-11=03-07;;1888 1906
03-22=03-21;;M1963 1570 1888 1906
Expand Down
3 changes: 2 additions & 1 deletion web/www/Tabulae/Transfer/d.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#= sunday letter: d, general rule
01-04=Tempora/Nat2-0;;DA Newcal 1960 M1930
01-04=Tempora/Nat2-0r;;M1963
01-12=01-11;;1570 1888 1906 M1617
01-11=01-11cc;;1570 1888 1906 M1617
01-12=01-11;;1570 1888 1906 M1617 M1930
01-18=01-00~01-18r;;1888 1906
01-28=01-18;;1888 1906
02-23=02-22tt;;1570
Expand Down
2 changes: 1 addition & 1 deletion web/www/Tabulae/Transfer/e.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#= sunday letter: e, general rule
01-05=Tempora/Nat2-0;;1960 DA Newcal M1930
01-05=Tempora/Nat2-0r;;M1963
01-XX=Tempora/Epi1-0a;;1570 1888 1906 M1617
01-XX=01-12t;;1570 1888 1906 M1617 M1930
01-19=01-00;;1888 1906
02-22=02-23v;;1570 1888 1906 DA
02-23=X-X;;1570
Expand Down
3 changes: 2 additions & 1 deletion web/www/Tabulae/Transfer/f.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#= sunday letter: f, general rule
01-02=Tempora/Nat2-0;;1960 DA Newcal M1930
01-XX=Tempora/Epi1-0a;;1570 1888 1906 M1617
01-XX=Tempora/Epi1-0a;;1570 1888 1906
01-XX=TemporaM/Epi1-0;;M1617 M1930
01-12=Tempora/Epi1-0;;DA
01-20=01-00~01-20;;1888 1906
02-25=02-24;;1570 1888 1906 DA
Expand Down
8 changes: 5 additions & 3 deletions web/www/Tabulae/Transfer/g.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@
01-02=Tempora/Nat2-0;;DA Newcal 1960 M1930
01-07=Tempora/Epi1-0g;;DA
01-08=01-08g;;DA
01-08=01-07;;1570 1888 1906 M1617
01-09=01-08;;1570 1888 1906 M1617
01-08=01-07;;1570 1888 1906 M1617 M1930
01-09=01-08;;1570 1888 1906 M1617 M1930
01-10=01-09;;1570 1888 1906 M1617
01-10=01-09~01-10cc;;M1930
01-11=01-10~01-11cc;;1570 1888 1906 M1617
01-12=01-11;;1570 1888 1906 M1617
01-11=01-10;;M1930
01-12=01-11;;1570 1888 1906 M1617 M1930
01-14=01-00~01-14cc;;1888 1906
01-19=01-14~01-19;;1570
03-20=03-18;;1906
Expand Down
7 changes: 0 additions & 7 deletions web/www/horas/Deutsch/Sancti/01-01.txt
Original file line number Diff line number Diff line change
Expand Up @@ -137,13 +137,6 @@ R. Den Heiland der Welten, den König der Engel hat allein die Jungfrau mit Milc
Unter allen vom Weibe Geborenen ist nämlich in jeder Beziehung heilig der Herr Jesus, der die Versuchung durch die irdische Sündhaftigkeit, infolge der Neuartigkeit seiner makellosen Geburt, nicht gefühlt und mit seiner himmlischen Majestät von sich ferngehalten hat. Denn wenn wir uns an den Buchstaben halten, wie kann alles Männliche heilig sein, da es doch nicht verborgen ist, dass viele sehr verbrecherisch gewesen sind? Ist etwa Achab ein Heiliger? Sind die lügenhaften Wahrsager Heilige, die auf Bitten des Elias das vom Himmel kommende als Strafer des Unrechts fallende Feuer vertilgt hat? Aber der war heilig, den als Vorbild des künftigen heiligen Geschehens die wohlgemeinten Vorschriften des göttlichen Gesetzes andeuteten; deshalb, weil er allein, um durch eine neue Geburt ein Gottesvolk zu schaffen, der heiligen jungfräulichen Kirche den geheimnisvoll gebärenden mit makelloser Fruchtbarkeit ausgestatteten Mutterschoß öffnen sollte.
&teDeum

[Ant Laudes]
O staunenswerter Tauschhandel! * Der Schöpfer des Menschengeschlechtes hat einen lebendigen Leib von der Jungfrau erhalten und sich herabgelassen, ihr Kind zu werden, und während er so, auf wunderbare Weise empfangen, aus ihr als Mensch hervorging, hat er uns dafür geschenkt seine Gottheit.
Als du geboren wurdest * in staunenswerter Weise aus der Jungfrau, da erfüllte sich die Schrift: wie der Tau auf das Vlies bist du herabgestiegen, um das Menschengeschlecht zu retten. Wir preisen dich, unser Gott.
Im Dornstrauch, den Moses sah * und der nicht verbrannte, erkennen wir die Unversehrtheit deiner glorreichen Jungfrauschaft, o Gottesmutter, bitte doch für uns.
Die Wurzel Jesse hat einen frischen Trieb bekommen, * aufgegangen aus Jakob ist der Stern, die Jungfrau hat den Erlöser geboren. Wir preisen dich, unser Gott.
O seht doch! Maria hat * uns den Erlöser geboren, von dem Johannes beim ersten Anblick verkündigt: Das ist das Gotteslamm, das ist der, welcher die Sünden der Welt tilgt, alleluja.

[Capitulum Laudes]
!Tit 2,11-12
v. Klar geworden ist die Güte des unser Heil wirkenden Gottes allen Menschen und leitet uns an, dass wir ablegen alles Gott Missfallende und alle weltlichen Wünsche, und dass wir verständig und rechtschaffen und gottgefällig in dieser Welt leben.
Expand Down
Loading

0 comments on commit 5f19b60

Please sign in to comment.