Signed-off-by: Hans Dijkema <hans@dijkewijk.nl>
This commit is contained in:
2026-01-19 01:20:59 +01:00
parent c88bd4f182
commit 80f7646acb

View File

@@ -32,13 +32,128 @@
}
}
rmtext = #(define-scheme-function
(o)
(ly:music?)
(define (f o)
(ly:music-set-property! o 'text "")
(let ((t (ly:music-property o 'name)))
(let ((els (ly:music-property o 'elements)))
(if (null? els)
(let ((arts (ly:music-property o 'articulations)))
(map (lambda (a)
(f a))
arts))
(map (lambda (e)
(f e)
)
els))))
)
(let ((oo (ly:music-deep-copy o)))
(f oo)
oo)
)
rep = #(define-scheme-function
(n m)
(index? ly:music?)
(let ((nn (- n 1))
(mm (rmtext m))
)
(if (> nn 0)
#{
$m \repeat unfold $nn $mm
#}
#{
$m
#}
)
)
)
fr = #(define-scheme-function
(n)
(ly:music?)
#{
$n $n $n $n
#}
)
(n)
(ly:music?)
(let ((nf (ly:music-deep-copy n)))
(let ((els (ly:music-property nf 'elements)))
(map (lambda (e)
(ly:music-set-property! e 'text ""))
els)
)
#{
$n $nf $nf $nf
#}
)
)
frr = #(define-scheme-function
(n)
(ly:music?)
(let ((nf (ly:music-deep-copy n)))
(let ((els (ly:music-property nf 'elements)))
(map (lambda (e)
(ly:music-set-property! e 'text ""))
els)
)
#{
$n $nf $nf $nf $nf $nf $nf $nf
#}
)
)
fig = #(define-music-function
(a b c)
(ly:music? ly:music? ly:music?)
(define (with-duration-i m d)
(map (lambda (n) (with-duration-i n d))
(ly:music-property m 'elements)))
(define (with-duration-internal m duration)
(cond
((or (music-is-of-type? m 'note-event) (music-is-of-type? m 'rest-event) (music-is-of-type? m 'skip-event))
(ly:music-set-property! m 'duration (apply ly:make-duration duration)))
((music-is-of-type? m 'event-chord)
(map (lambda (n) (with-duration-internal n duration))
(ly:music-property m 'elements)))
(else (ly:warning "Neither note event nor chord"))
)
m
)
(define (with-duration m . d)
(with-duration-internal (ly:music-deep-copy m) d))
(define (adjust-first l)
(if (null? l)
'done
(let ((e (car l)))
(if (music-is-of-type? e 'note-event)
(adjust-pitch-i e)
(adjust-first (cdr l))))
)
)
(define (adjust-pitch-i m)
(cond
((music-is-of-type? m 'note-event)
(let ((p (ly:music-property m 'pitch)))
(let ((pp (ly:make-pitch -1 (ly:pitch-notename p) 0)))
(ly:music-set-property! m 'pitch pp)))
)
((music-is-of-type? m 'event-chord)
(adjust-first (ly:music-property m 'elements))
)
)
m)
(define (adjust-pitch a)
(adjust-pitch-i (ly:music-deep-copy a)))
#{ #(with-duration a 3 2) #(with-duration (adjust-pitch a) 5) -. $b -. $c -. #}
)
global = {
\key f \major
@@ -56,9 +171,9 @@ scoreAViolinI_introduzione = \relative c'' {
\introduzione
% Muziek volgt hier.
\relative c' {
d4\ff d'8.. d32-. cs8-. bf'-. r4 a,, g''8.. g32-. f8-. d'-. r4
f,,2\p( e4. fs16. g32) g4 r8 bf16.( a32) a8-. r r bf'16.( a32) a8-. r r b,16.\fz( a32) a16-.\p r g-. r f-. r e-. r
d4\f d'8.. d32-. cs8-. bf'-. r4 c,,4 ef'8.. ef32 d16 d'-.\ff d-. d-. \fr d-.
d4\ff \fig d' cs8 bf' r4 a,, \fig g'' f8 d' r4
f,,2\p( e4. fs16. g32) g4 r8 bf16.( a32) a8-. r r bf'16.( a32) a8-. r r b,16.\fz( a32) a16-!\p r g-! r f-! r e-! r
d4\f \fig d' cs8 bf' r4 c,,4 ef'8.. ef32 d16 d'-.\ff d-. d-. \fr d-.
d8\fz( d32)( c bf a) \fr g16-. c8\fz( c32)( bf a g) \fr fs16-.
g8 \acciaccatura a g32( fs g a) \fr bf16-. <e,, cs'>-. r <f d'>-. r <a g'>-. r <a f'>-. r
<a e'>8 r f'16.(\fz d32) f16.(\fz d32) cs8 a' gs4( a8) r8 f,16.(\fz d32) f16.(\fz d32) cs8 a' gs4( a8) a,-. a-. a-. a2\fermata
@@ -90,12 +205,42 @@ scoreAViolinI_introduzione = \relative c'' {
scoreAViolinII_introduzione = \relative c'' {
\global
% Muziek volgt hier.
\relative c' {
d4\ff \fig <f a> <g bf>8 cs, r4 a4 \fig <a' e'> <a f'>8 f r4
d2.\p( cs8) c-. <bf d> r r cs16.( d32) d8-. r r cs'16.( d32) d8-. r r cs,16.(\f d32) d16-. r e-.\p r d-. r cs-. r
d4\f \fig <f a> <g bf>8 cs, r4 c!4 <fs a>8.. <fs a>32 <g bf>4 r
\fr <d bf'>16\ff \fr <d bf'> \fr <fs a>\fz \fr <ef c'> \frr <d bf'> a' r a r e' r d r cs8 a8 gs4 a8 cs!16. e32 f16.(\fz d32) f16.(\fz d32)
cs8 r gs,4 a8 cs16. e32 f16.(\fz e32) f16.(\fz e32) cs8 a-. a-. a-. a2\fermata
\mark A
\rep 2 {a16-.(\p a-. a-. a-.)} \rep 8 bf \rep 7 bf g \rep 8 a \rep 8 <af f'> af' \rep 7 af
af8-. g-. r4 f8\p( f) r4 <f d'>8-.\f <f c'>-. r4 d2\p( df4)( c d) r4 a4( bf a) r
<g' b>16\f \rep 7 <g b>16 <f a>8 <a f'> r4 d,4 r4 e2 <a, f'>8\f <g e'>4\fz <a f'>8 e' bf'4\fz a8 g e'4\fz f8 d8 r <g, b e> r
<<{ \stemDown \rep 4 f16\p } \\ {\stemUp <a f'>8 }>> \rep 4 f16 f2:16 \rep 8 f16 gf8-. <af, ef'>-.\f r4 gf'16\p \rep 3 gf f f ef ef
\rep 8 f f2:16 f2:16 \rep 8 f16 f2:16 \rep 8 g16 g2:16 \rep 8 g16 \rep 4 a \rep 4 f \rep 8 d\f cs8 a' gs4
a8 cs16. e32 f16.\fz( d32) f16.\fz( d32) cs8 r4 gs,8 a cs16.( e32) f16.\fz( d32) f16.\fz( d32) cs8 a a a a1\fermata
\mark B
d4\f \fig <f a> <g b>8 cs, r4 a4 \fig <a' e'> <a f'>8 f r4
d2.\p( cs4 c!2) d8( c bf c) d2( cs16) a'-.\f \rep 6 a-. \rep 4 <e cs>-. <e cs>-. bf'-. a-. g-. <a, f'>-. \rep 4 <a f'>-. f'-. g-. a-.
\rep 4 <ef bf'>\fz <a, fs'>\fz \rep 3 <a fs'> <g g'>4 r bf\p r bf'8-. a-. r4
<a e'>8-.\f <d, a' f'> r8. f16\p e8( bf' a cs,) d4\fermata r8\fermata r8 c'16\p \rep 7 c16 \rep 8 bf bf2:16
a8 r8 r8 cs16.( d32) d8-. r8 r8 g,,16.( a32) a8 r8 r8 a16.( bf32) bf8-. r8 cs r d8\f <cs e>4\fz d8 cs8 cs4\fz d8
e8 cs'4\fz d8 <g, bf! e>8 r <e cs'!> r
r bf'16.\p( a32) \autoBeamOff a8-. \autoBeamOn g16.( f32) \autoBeamOff f8-. \autoBeamOn g16.( f32) \autoBeamOff f8 \autoBeamOn e16.( d32)
d8-.(\pp d-. d-. d-.) d2\fermata
}
}
scoreAViola_introduzione = \relative c' {
\global
% Muziek volgt hier.
<a f>4\ff \fig d e8 g r4 a4 cs8.. cs32 d8 d, r4 r8 d\p( bf f g gs a d) g,4 r8 e'16.( f32) f8-. r r g16.( f32) g8 r r e16.(\fz f32) f16\p r g r a r a, r
<f a>4\f d'8.. d32 e8-. g-. r4 c,!4 c'8.. c32 bf16 \rep 7 <g bf>-.\ff \rep 8 <g bf> ef'\fz ef ef ef a, a a a bf bf bf bf g g g g g r f r cs r d r
}
@@ -125,10 +270,27 @@ scoreACelloPart_introduzione = \new Staff \with {
\score {
\scoreAViolinIPart_introduzione
\layout {
\context {
\Score
\override SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/3)
}
%#(layout-set-staff-size 16)
}
}
\score {
\scoreAViolinIIPart_introduzione
\layout {
\context {
\Score
\override SpacingSpanner.common-shortest-duration = #(ly:make-moment 1/3)
}
%#(layout-set-staff-size 16)
}
}
\score {
<<
\scoreAViolinIPart_introduzione