]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 3811: Partcombiner cannot deal with repeat chords
authorDavid Kastrup <dak@gnu.org>
Tue, 14 Jan 2014 19:22:47 +0000 (20:22 +0100)
committerDavid Kastrup <dak@gnu.org>
Wed, 5 Mar 2014 09:36:13 +0000 (10:36 +0100)
(cherry picked from commit e67366fea6687825c81c81f23210059215abb7bb)

The original commit primarily dealt with issue 3810 which is not
relevant for 2.18.

scm/part-combiner.scm

index 4e3e4b66031c178316ecb7a340fe0f32600842b6..2c1bd721c0ba5ded0695abdcefd572d22053416c 100644 (file)
@@ -198,6 +198,12 @@ Voice-state objects
 
   (helper 0 '()))
 
+(define recording-group-functions
+  ;;Selected parts from @var{toplevel-music-functions} not requiring @code{parser}.
+  (list
+   (lambda (music) (expand-repeat-chords! '(rhythmic-event) music))))
+
+
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 (define-public (recording-group-emulate music odef)
   "Interpret @var{music} according to @var{odef}, but store all events
@@ -240,7 +246,10 @@ LilyPond version 2.8 and earlier."
     (ly:add-listener new-context-listener
                      (ly:context-events-below global) 'AnnounceNewContext)
     (ly:add-listener mom-listener (ly:context-event-source global) 'Prepare)
-    (ly:interpret-music-expression (make-non-relative-music music) global)
+    (ly:interpret-music-expression
+     (make-non-relative-music
+      (fold (lambda (x m) (x m)) music recording-group-functions))
+     global)
     context-list))
 
 (define-public (make-part-combine-music parser music-list direction)