-\version "2.1.26"
+\version "2.2.0"
\header{ texidoc="
}
+#(define ((scale-music-function fraction) x)
+ (ly:music-compress x (ly:make-moment (car fraction) (cdr fraction))))
-#(define (scale-one-music m fraction)
- "Maybe we should just export Music::compress to Scheme?"
- (let*
- ((dur (ly:music-property m 'duration)))
-
- (if (ly:duration? dur)
- (let*
- ((l (ly:duration-log dur))
- (d (ly:duration-dot-count dur))
- (factor (ly:duration-factor dur)))
-
- (ly:music-set-property! m 'duration
- (ly:make-duration l d
- (* (car fraction) (car factor))
- (* (cdr fraction) (cdr factor))))))
-
- m))
-
-#(define (scale-music-function fraction)
- (lambda (x)
- (music-map (lambda (y) (scale-one-music y fraction)) x)))
\new Staff {
\time 3/4
\set Staff.timeSignatureFraction = #'(9 . 8)
- \apply #display-music \apply #(scale-music-function '(2 . 3))
+ \apply #(scale-music-function '(2 . 3))
\repeat unfold 6 { c8[ c c] }
}
\new Staff {
\time 3/4
\set Staff.timeSignatureFraction = #'(10 . 8)
- \apply #display-music \apply #(scale-music-function '(3 . 5))
+ \apply #(scale-music-function '(3 . 5))
{ \repeat unfold 2 { c8[ c c] }
\repeat unfold 2 { c8[ c] }
| c4. c4. \times 2/3 { c8 c c } c4 }