]> git.donarmstrong.com Git - lilypond.git/commitdiff
* input/test/polymetric-differing-notes.ly: use ly:music-compress.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 Mar 2004 11:54:27 +0000 (11:54 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 31 Mar 2004 11:54:27 +0000 (11:54 +0000)
* input/regression/repeat-unfold-tremolo.ly: new file.

* scm/music-functions.scm (unfold-repeats): undo music compression
too.

* lily/music.cc (LY_DEFINE): rename to music-mutable-properties
(LY_DEFINE): ly:music-compress new function.

* scm/music-functions.scm (make-non-relative-music): new function.

ChangeLog
input/regression/repeat-unfold-tremolo.ly [new file with mode: 0644]
input/test/polymetric-differing-notes.ly
lily/music.cc
scm/music-functions.scm
scm/to-xml.scm

index 9889cded71a75dc2254bc3e59609e59703b73800..6b5e5423961e94bef392d7c09c531b3ed0118b11 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2004-03-31  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
+       * input/test/polymetric-differing-notes.ly: use ly:music-compress.
+
+       * input/regression/repeat-unfold-tremolo.ly: new file.
+
        * scm/music-functions.scm (unfold-repeats): undo music compression
        too.
 
diff --git a/input/regression/repeat-unfold-tremolo.ly b/input/regression/repeat-unfold-tremolo.ly
new file mode 100644 (file)
index 0000000..c360354
--- /dev/null
@@ -0,0 +1,18 @@
+\version "2.1.36"
+\header {
+
+    texidoc = "Unfolding tremolo repeats. Both fragments fill one 2/4
+ measure with 32nd notes exactly."
+
+}
+
+
+\score{
+    \notes{
+       \time 2/4 
+       \apply #unfold-repeats  
+       { \repeat tremolo 8 { c'32 e' } |
+         \repeat tremolo 16 c'32 } | \bar "|."
+    }
+    \paper { raggedright = ##t }  
+}
index f1fc3392d87162a7b50866e3fc40397241b298d5..8951d915b1f4a55075fe7cf02efb6afb08a2a256 100644 (file)
@@ -22,28 +22,9 @@ multiplied by 3/5, so that 3/5 * 10/8 = 3/4.
 
 }
 
+#(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)))
 
 
 
@@ -56,14 +37,14 @@ multiplied by 3/5, so that 3/5 * 10/8 = 3/4.
        \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  }
index a8cc060e9441b72d2511c36cbcd08592885ef54a..cfe947119575bc388f557a6335c7101ac7fa3799 100644 (file)
@@ -346,7 +346,7 @@ LY_DEFINE (ly_music_transpose, "ly:music-transpose",
   TODO: should take moment factor?
  */
 LY_DEFINE (ly_music_compress, "ly:music-compress",
-         3, 0, 0, (SCM m, SCM factor),
+         2, 0, 0, (SCM m, SCM factor),
          "Compress music object @var{m} by moment @var{factor}."
           )
 {
index 5699cb48d22d05a0a4e123ab92b1c940805a1f16..2aa410772de0b8776a8b1da86129b380af197804 100644 (file)
@@ -75,7 +75,7 @@
   (display ": { ")  
   (let ((es (ly:music-property music 'elements))
        (e (ly:music-property music 'element)))
-    (display (ly:mutable-music-properties music))
+    (display (ly:music-mutable-properties music))
     (if (pair? es)
        (begin (display "\nElements: {\n")
               (map display-music es)
index 7d0a400cc1c72f0e1a1518055221cc611a71e79d..a6b9508a6e442d029fbb2f6d9456a6c6f2f5f6e9 100644 (file)
@@ -111,7 +111,7 @@ is then separated.
   (let* ((name (ly:music-property music 'name))
         (e (ly:music-property music 'element))
         (es (ly:music-property music 'elements))
-        (mprops (ly:mutable-music-properties music))
+        (mprops (ly:music-mutable-properties music))
         (d (ly:music-property music 'duration))
         (p (ly:music-property music 'pitch))
         (ignore-props '(origin elements duration pitch element)))