Add dotted rhythms to iconic songs for musical accuracy

- Silent Night: proper 6/8 feel with dotted-quarter + eighth (3,1,2) pattern
- Deck the Halls: dotted pickup on "Deck the halls" and "Fa la la" phrases
- Amazing Grace: dotted quarter-eighth pairs in "A-MAZ-ing Grace" phrasing
- Auld Lang Syne: characteristic dotted Scots snap rhythm (3,1 pattern)

https://claude.ai/code/session_01MhCcEPfX3JqAk8zmvLXZ1g
This commit is contained in:
Claude
2026-03-31 11:55:06 +00:00
parent 826b81c007
commit 8da43e74e4
+4 -4
View File
@@ -3626,12 +3626,12 @@ const CHRISTMAS_PIECES=(function(){
var silent=carol("Silent Night","F. Gruber (1818)",72,
[G4,A4,G4,E4,G4,A4,G4,E4,D5,D5,B4,C5,C5,G4,A4,A4,C5,B4,A4,G4,A4,G4,E4,A4,A4,C5,B4,A4,G4,A4,G4,E4,D5,D5,F5,D5,B4,C5,E5,C5,G4,E4,G4,F4,D4,C4],
[3,0,3,2,3,0,3,2,0,0,3,0,0,3,0,0,0,3,0,3,0,3,2,0,0,0,3,0,3,0,3,2,0,0,1,0,3,0,2,0,3,2,3,1,1,0],
[2,2,2,4,2,2,2,4,2,2,4,2,2,4,2,2,2,2,2,2,2,2,4,2,2,2,2,2,2,2,2,4,2,2,2,2,4,2,2,2,2,2,2,2,2,4],
[3,1,2,6,3,1,2,6,2,2,6,2,2,6,2,2,3,1,2,3,1,2,6,2,2,3,1,2,3,1,2,6,2,2,3,1,6,2,2,2,2,2,3,1,2,6],
3,C4);
var deck=carol("Deck the Halls","Welsh (1862)",130,
[C5,Bb4,A4,G4,F4,G4,A4,F4,G4,A4,Bb4,G4,A4,G4,F4,E4,D4,E4,F4,G4,A4,G4,F4,E4,F4,G4,A4,Bb4,C5,A4,G4,F4],
[0,3,0,3,1,3,0,1,3,0,2,3,0,3,1,2,1,2,1,3,0,3,1,2,1,3,0,2,0,0,3,1],
[4,2,2,4,2,2,2,4,2,2,2,4,2,2,2,2,2,2,2,4,2,2,2,2,2,2,2,2,4,2,2,8],
[3,1,2,2,3,1,2,2,2,2,2,2,3,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,1,2,4],
4,F4);
var wish=carol("We Wish You a Merry Christmas","English (1500s)",140,
[G4,C5,C5,D5,C5,B4,A4,A4,D5,D5,E5,D5,C5,B4,G4,E5,E5,F5,E5,D5,C5,A4,G4,G4,A4,D5,B4,C5],
@@ -3788,12 +3788,12 @@ const SINGALONG_PIECES=(function(){
var amazing=pub("Amazing Grace","J. Newton (1779)",80,
[G4,C5,E5,C5,E5,D5,C5,A4,G4,G4,C5,E5,C5,E5,D5,E5,E5,C5,A4,A4,G4,E4,G4,C5,E5,C5,E5,D5,C5],
[3,0,2,0,2,1,0,0,3,3,0,2,0,2,1,2,2,0,0,0,3,2,3,0,2,0,2,1,0],
[2,2,2,2,2,2,2,2,2,2,2,2,2,2,6,2,2,2,2,2,2,2,2,2,2,2,2,2,6],
[2,4,3,1,2,2,2,4,4,2,4,3,1,2,2,4,4,3,1,2,2,4,2,4,3,1,2,2,6],
4,C4);
var auld=pub("Auld Lang Syne","R. Burns (1788)",95,
[C4,F4,F4,F4,A4,G4,F4,G4,A4,F4,F4,A4,C5,D5,D5,D5,C5,A4,F4,F4,G4,A4,G4,F4,D4,C4],
[0,1,1,1,0,3,1,3,0,1,1,0,0,1,1,1,0,0,1,1,3,0,3,1,1,0],
[2,4,2,2,2,4,2,2,2,4,2,2,2,6,2,2,2,4,2,2,2,4,2,4,2,6],
[2,3,1,2,3,1,2,2,3,1,2,2,2,6,2,3,1,2,3,1,2,3,1,2,2,6],
4,F4);
var saints=pub("When the Saints Go Marching In","Spiritual (Trad.)",120,
[C4,E4,F4,G4,C4,E4,F4,G4,C4,E4,F4,G4,E4,C4,E4,D4,E4,E4,D4,C4,C4,E4,G4,G4,F4,E4,F4,G4,E4,C4,D4,C4],